openshift_scale - Установка нового размера для Deployment Config, Deployment, Replica Set, Replication Controller или Job.
Новая версия с 2.5.
Обзор
- Аналогично команде oc scale. Используется для установки количества реплик для Deployment Config, Deployment, ReplicatSet или Replication Controller, или атрибута параллелизма для Job. Поддерживает режим проверки.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.7
- openshift == 0.4.3
- 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 | Для 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 | Попытаться выполнить масштабирование только в том случае, если текущая версия объекта совпадает. | |
| 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 |
| Требовать или нет проверку SSL-сертификатов сервера API. Также может быть задан через переменную среды K8S_AUTH_VERIFY_SSL. |
| wait |
| Для Deployment, ReplicaSet, Replication Controller, ожидать изменения значения статуса ready_replicas на количество replicas. В случае с Job, этот параметр игнорируется. |
| wait_timeout | По умолчанию: 20 | Когда wait равно True, количество секунд ожидания статуса ready_replicas, равного replicas. Если статус не достигнут в отведенное время, произойдет ошибка. В случае с Job, этот параметр игнорируется. |
Примечания
Примечание
- Клиент OpenShift Python обертывает клиент K8s Python, предоставляя полный доступ ко всем API и моделям, доступным на обеих платформах. Подробнее о версиях API и дополнительной информации посетите https://github.com/openshift/openshift-restclient-python
Примеры
- name: Scale deployment config up, and extend timeout
openshift_scale:
api_version: v1
kind: DeploymentConfig
name: elastic
namespace: myproject
replicas: 3
wait_timeout: 60
- name: Scale deployment config down when current replicas match
openshift_scale:
api_version: v1
kind: DeploymentConfig
name: elastic
namespace: myproject
current_replicas: 3
replicas: 2
- name: Increase job parallelism
openshift_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
openshift_scale:
src: /myproject/elastic_deployment.yml
replicas: 3
wait: no
- name: Scale deployment based on a template output
openshift_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
openshift_scale:
resource_definition: "{{ lookup('file', '/myproject/elastic_deployment.yml') | from_yaml }}"
replicas: 3
wait: no
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание | |
|---|---|---|---|
| result complex | успех | Если изменения были внесены, вернёт изменённый объект, иначе вернёт существующий объект. | |
| status complex | успех | Текущие данные состояния объекта. | |
| kind str | успех | Представляет REST-ресурс, который представляет этот объект. | |
| spec complex | успех | Указанные атрибуты объекта. Будут различаться в зависимости от api_version и kind. | |
| api_version str | успех | Версионированная схема этого представления объекта. | |
| metadata complex | успех | Стандартные метаданные объекта. Включают имя, пространство имен, аннотации, метки и т.д. | |
Статус
Этот модуль помечен как предварительный просмотр, что означает, что он не гарантирует обратную совместимость интерфейса.
Автор
- Крис Хаусенек (@chouseknecht)
Подсказка
Если вы заметили какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/openshift_scale_module.html