Spec-Zone.ru › Ansible 2.6

k8s_scale - Установка нового размера для Deployment, ReplicaSet, Replication Controller или Job.

Новая версия 2.5.

  • Описание
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус
  • Техническое обслуживание
    • Автор

Описание

  • Аналогично команде kubectl scale. Используется для установки количества реплик для Deployment, ReplicatSet или Replication Controller, или атрибута параллелизма для Job. Поддерживает режим проверки.

Псевдонимы: openshift_scale

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • python >= 2.7
  • openshift >= 0.6
  • PyYAML >= 3.11

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
api_key
Токен, используемый для аутентификации с API. Также можно указать через переменную окружения K8S_AUTH_API_KEY.
api_version Значение по умолчанию:
"v1"
Используется для указания версии API. Используется для создания, удаления или обнаружения объекта без предоставления полного определения ресурса. Используется в сочетании с kind, name и namespace для идентификации конкретного объекта. Если предоставлено resource definition, apiVersion из resource_definition переопределит этот параметр.

Псевдонимы: api, version
cert_file
Путь к сертификату, используемому для аутентификации с API. Также можно указать через переменную окружения K8S_AUTH_CERT_FILE.
context
Имя контекста, найденного в файле конфигурации. Также можно указать через переменную окружения K8S_AUTH_CONTEXT.
current_replicas
int
Для Deployment, ReplicaSet, Replication Controller, масштабирование выполняется только если количество существующих реплик совпадает. В случае с Job, обновляется только параллелизм, если текущее значение параллелизма совпадает.
host
Укажите URL для доступа к API. Также можно указать через переменную окружения K8S_AUTH_HOST.
key_file
Путь к файлу ключа, используемому для аутентификации с API. Также можно указать через переменную окружения K8S_AUTH_HOST.
kind
Используется для указания модели объекта. Используется для создания, удаления или обнаружения объекта без предоставления полного определения ресурса. Используется в сочетании с api_version, name и namespace для идентификации конкретного объекта. Если предоставлено resource definition, kind из resource_definition переопределит этот параметр.
kubeconfig
Путь к существующему файлу конфигурации Kubernetes. Если не указано и не указаны другие параметры подключения, клиент openshift попытается загрузить файл конфигурации по умолчанию из ~/.kube/config.json. Также можно указать через переменную окружения K8S_AUTH_KUBECONFIG.
name
Используется для указания имени объекта. Используется для создания, удаления или обнаружения объекта без предоставления полного определения ресурса. Используется в сочетании с api_version, kind и namespace для идентификации конкретного объекта. Если предоставлено resource definition, значение metadata.name из resource_definition переопределит этот параметр.
namespace
Используется для указания пространства имен объекта. Полезно при создании, удалении или обнаружении объекта без предоставления полного определения ресурса. Используется в сочетании с api_version, kind и name для идентификации конкретного объекта. Если предоставлено resource definition, значение metadata.namespace из resource_definition переопределит этот параметр.
password
Укажите пароль для аутентификации с API. Также можно указать через переменную окружения K8S_AUTH_PASSWORD.
replicas
Желаемое количество реплик.
resource_definition
Укажите действительное определение YAML для объекта при создании или обновлении. ПРИМЕЧАНИЕ: kind, api_version, name и namespace будут перезаписаны соответствующими значениями, найденными в предоставленном resource_definition.

Псевдонимы: definition, inline
resource_version
str
Попытка масштабирования выполняется только если текущая версия объекта совпадает.
src
Укажите путь к файлу, содержащему действительное определение YAML объекта для создания или обновления. Взаимоисключающий с resource_definition. ПРИМЕЧАНИЕ: kind, api_version, name и namespace будут перезаписаны соответствующими значениями, найденными в конфигурации, считанной из файла src.
Считывает из локальной файловой системы. Чтобы читать из файловой системы контроллера Ansible, используйте плагин поиска файлов или плагин поиска шаблонов, в сочетании с фильтром from_yaml, и передайте результат в resource_definition. Смотрите Примеры ниже.
ssl_ca_cert
Путь к сертификату CA, используемому для аутентификации с API. Также можно указать через переменную окружения K8S_AUTH_SSL_CA_CERT.
username
Укажите имя пользователя для аутентификации с API. Также можно указать через переменную окружения K8S_AUTH_USERNAME.
verify_ssl
bool
    Варианты:
  • no
  • yes
Требуется ли проверка SSL-сертификатов сервера API. Также можно указать через переменную окружения K8S_AUTH_VERIFY_SSL.
wait
bool
    Варианты:
  • no
  • yes ←
Для Deployment, ReplicaSet, Replication Controller, ожидание значения status ready_replicas, которое должно измениться на количество replicas. В случае с Job, этот параметр игнорируется.
wait_timeout
int
Значение по умолчанию:
20
Когда wait равно True, количество секунд ожидания статуса ready_replicas, равного replicas. Если статус не достигнут в отведенное время, произойдет ошибка. В случае с Job, этот параметр игнорируется.

Примечания

Примечание

  • Клиент OpenShift Python оборачивает клиент K8s Python, предоставляя полный доступ ко всем API и моделям, доступным на обеих платформах. Подробности о версии API и дополнительную информацию можно найти на странице https://github.com/openshift/openshift-restclient-python

Примеры

- name: Scale deployment up, and extend timeout
  k8s_scale:
    api_version: v1
    kind: Deployment
    name: elastic
    namespace: myproject
    replicas: 3
    wait_timeout: 60

- name: Scale deployment down when current replicas match
  k8s_scale:
    api_version: v1
    kind: Deployment
    name: elastic
    namespace: myproject
    current_replicas: 3
    replicas: 2

- name: Increase job parallelism
  k8s_scale:
    api_version: batch/v1
    kind: job
    name: pi-with-timeout
    namespace: testing
    replicas: 2

# Match object using local file or inline definition

- name: Scale deployment based on a file from the local filesystem
  k8s_scale:
    src: /myproject/elastic_deployment.yml
    replicas: 3
    wait: no

- name: Scale deployment based on a template output
  k8s_scale:
    resource_definition: "{{ lookup('template', '/myproject/elastic_deployment.yml') | from_yaml }}"
    replicas: 3
    wait: no

- name: Scale deployment based on a file from the Ansible controller filesystem
  k8s_scale:
    resource_definition: "{{ lookup('file', '/myproject/elastic_deployment.yml') | from_yaml }}"
    replicas: 3
    wait: no

Возвращаемые значения

Общие возвращаемые значения описаны в здесь, следующие являются полями, уникальными для этого модуля:

Ключ Возвращаемое Описание
result
complex
success
Если изменения были внесены, вернётся обновлённый объект, иначе вернётся существующий объект.

api_version
str
success
Версионированный схематический формат представления объекта.

kind
str
success
Представляет REST-ресурс, который представляет объект.

metadata
complex
success
Стандартные метаданные объекта. Включают имя, пространство имен, аннотации, метки и т. д.

spec
complex
success
Уникальные атрибуты объекта. Будут варьироваться в зависимости от api_version и kind.

status
complex
success
Текущие сведения о статусе объекта.



Статус

Этот модуль помечен как preview, что означает, что он не гарантирует обратную совместимость интерфейса.

Техническое обслуживание

Этот модуль помечен как community, что означает, что его поддерживает сообщество Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.

Список других модулей, также поддерживаемых сообществом Ansible, см. в здесь.

Автор

  • Крис Хаузенехт (@chouseknecht)
  • Фабиан фон Фейлитцш (@fabianvf)

Подсказка

Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/k8s_scale_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API