Spec-Zone.ru › Ansible 2.7

gcp_container_node_pool – Создаёт пул узлов GCP

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

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

Описание

  • NodePool содержит имя и конфигурацию пула узлов кластера.
  • Пулы узлов — это набор узлов (т. е. виртуальных машин), имеющих общую конфигурацию и спецификацию, находящихся под управлением мастера кластера. К ним могут быть применены метки Kubernetes, которые могут использоваться для ссылки на них при планировании под. Их также можно изменять в размерах вверх или вниз для адаптации к рабочей нагрузке.

Требования

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

  • python >= 2.6
  • requests >= 2.18.4
  • google-auth >= 1.3.0

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
- / обязательно
    Варианты:
  • machineaccount
  • serviceaccount
  • application
Тип используемых учетных данных.
autoscaling
-
Настройка автоматического масштабирования для этого NodePool. Автоматическое масштабирование включено только при наличии корректной конфигурации.
enabled
boolean
    Варианты:
  • no
  • yes
Включено ли автоматическое масштабирование для этого пула узлов.
max_node_count
-
Максимальное количество узлов в NodePool. Должно быть >= minNodeCount.
Должно быть достаточно квоты для масштабирования кластера.
min_node_count
-
Минимальное количество узлов в NodePool. Должно быть >= 1 и <= maxNodeCount.
cluster
- / обязательно
Кластер, к которому принадлежит этот пул узлов.
config
-
Конфигурация узлов пула.
disk_size_gb
-
Размер диска, прикрепленного к каждому узлу, в ГБ. Минимальный разрешенный размер диска — 10 ГБ. Если не указано, используется значение по умолчанию — 100 ГБ.
image_type
-
Тип образа для использования на этом узле. Обратите внимание, что для данного типа образа будет использоваться последняя версия.
labels
-
Карта меток Kubernetes (пар «ключ/значение»), которые будут применяться к каждому узлу. Эти метки будут добавлены дополнительно к любым меткам по умолчанию, которые Kubernetes может применить к узлу. В случае конфликта в ключах меток применённый набор может отличаться в зависимости от версии Kubernetes — лучше всего считать поведение неопределённым, и конфликты следует избегать. Для получения дополнительной информации, включая использование и допустимые значения, см.: http://kubernetes.io/v1.1/docs/user-guide/labels.html Объект, содержащий список пар «ключ»: значение.
Пример: { "name": "гаечный ключ", "масса": "1,3 кг", "количество": "3" }.
local_ssd_count
-
Количество локальных SSD-дисков, которые будут подключены к узлу.
Ограничение для этого значения зависит от максимального количества дисков, доступных на машине в зоне. Подробнее см.: https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits.
machine_type
-
Имя типа машины Google Compute Engine (например,
n1-стандартный-1). Если не указано, используется тип машины по умолчанию n1-стандартный-1.
metadata
-
Ключи и значения метаданных, назначенные экземплярам в кластере.
Ключи должны соответствовать регулярному выражению [a-zA-Z0-9-_]+ и иметь длину менее 128 байтов. Они отражаются в URL-адресе на сервере метаданных. Кроме того, чтобы избежать неоднозначности, ключи не должны конфликтовать с другими ключами метаданных для проекта или быть одним из четырёх зарезервированных ключей: "instance-template", "kube-env", "startup-script" и "user-data". Значения — произвольные строки и имеют смысл только в интерпретации образа, работающего в экземпляре. Единственное ограничение — размер каждого значения не должен превышать 32 КБ.
Общий размер всех ключей и значений должен быть меньше 512 КБ.
Объект, содержащий список пар «ключ»: значение.
Пример: { "name": "гаечный ключ", "масса": "1,3 кг", "количество": "3" }.
oauth_scopes
-
Набор облачных API-скопов Google, которые будут доступны для всех виртуальных машин узлов под учетной записью «по умолчанию».
Следующие области действия рекомендуются, но не являются обязательными и по умолчанию не включены: https://www.googleapis.com/auth/compute — необходим для подключения постоянных хранилищ к вашим узлам.
https://www.googleapis.com/auth/devstorage.read_only — необходим для связи с gcr.io (Google Container Registry).
Если не указано, никакие области действия не добавляются, если не включены Cloud Logging или Cloud Monitoring, в этом случае будут добавлены необходимые области действия.
preemptible
boolean
    Варианты:
  • no
  • yes
Указывается ли создание узлов как экземпляров виртуальных машин с возможностью прерывания. См. https://cloud.google.com/compute/docs/instances/preemptible для получения дополнительной информации об экземплярах виртуальных машин с возможностью прерывания.
service_account
-
Учетная запись службы Google Cloud Platform, которая будет использоваться виртуальными машинами узлов. Если учетная запись службы не указана, используется учетная запись «по умолчанию».
tags
-
Список меток экземпляров, применяемых ко всем узлам. Метки используются для идентификации допустимых источников или целей для межсетевых экранов и задаются клиентом при создании кластера или пула узлов. Каждая метка в списке должна соответствовать RFC1035.
initial_node_count
- / обязательно
Начальное количество узлов для пула. Вам необходимо убедиться, что квота ресурсов Compute Engine достаточна для этого количества экземпляров. Вам также должны быть доступны квоты на межсетевой экран и маршруты.
management
-
Конфигурация управления для этого NodePool.
auto_repair
boolean
    Варианты:
  • no
  • yes
Флаг, указывающий, включено ли автоматическое восстановление узлов для пула узлов. Если включено, узлы в этом пуле узлов будут отслеживаться, и если они не пройдут проверки работоспособности слишком много раз, будет выполнено автоматическое действие по восстановлению.
auto_upgrade
boolean
    Варианты:
  • no
  • yes
Флаг, указывающий, включено ли автоматическое обновление узлов для пула узлов. Если включено, автоматическое обновление узлов помогает поддерживать узлы в вашем пуле узлов в актуальном состоянии с последней релизной версией Kubernetes.
upgrade_options
-
Указывает настройки автоматического обновления для пула узлов.
auto_upgrade_start_time
-
Это поле устанавливается при начале обновлений с примерным начальным временем обновлений в формате RFC3339.
description
-
Это поле устанавливается при начале обновлений с описанием обновления.
name
-
Название пула узлов.
project
-
По умолчанию:
null
Проект Google Cloud Platform.
scopes
-
Массив используемых областей.
service_account_email
-
Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount и пользователь не хочет использовать адрес электронной почты по умолчанию.
service_account_file
-
Путь к файлу JSON учетной записи службы, если выбран тип serviceaccount.
state
-
    Варианты:
  • present ←
  • absent
Требуется ли существование данного объекта в GCP
END_OF_DOCUMENT_MARKER
зона
- / обязательно
Зона, в которой развернут пул узлов.

Примечания

Примечание

  • Для аутентификации можно установить service_account_file с помощью переменной среды GCP_SERVICE_ACCOUNT_FILE.
  • Для аутентификации можно установить service_account_email с помощью переменной среды GCP_SERVICE_ACCOUNT_EMAIL.
  • Для аутентификации можно установить auth_kind с помощью переменной среды GCP_AUTH_KIND.
  • Для аутентификации можно установить scopes с помощью переменной среды GCP_SCOPES.
  • Значения переменных среды будут использоваться только в том случае, если значения в playbook не заданы.
  • Параметры service_account_email и service_account_file взаимоисключающие.

Примеры

- name: create a cluster
  gcp_container_cluster:
      name: "cluster-nodepool"
      initial_node_count: 4
      zone: us-central1-a
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      state: present
  register: cluster

- name: create a node pool
  gcp_container_node_pool:
      name: "test_object"
      initial_node_count: 4
      cluster: "{{ cluster }}"
      zone: us-central1-a
      project: "test_project"
      auth_kind: "service_account"
      service_account_file: "/tmp/auth.pem"
      state: present

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

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

Ключ Возвращаемое Описание
autoscaling
сложный
success
Конфигурация автомасштабирования для этого пула узлов. Автомасштабирование включено только при наличии корректной конфигурации.

enabled
булево
success
Включено ли автомасштабирование для этого пула узлов.

max_node_count
целое число
success
Максимальное количество узлов в пуле узлов. Должно быть >= minNodeCount.
Должно быть достаточно квоты для масштабирования кластера.

min_node_count
целое число
success
Минимальное количество узлов в пуле узлов. Должно быть >= 1 и <= maxNodeCount.

cluster
словарь
success
Кластер, к которому принадлежит этот пул узлов.

config
сложный
success
Конфигурация узлов пула.

disk_size_gb
целое число
success
Размер диска, подключенного к каждому узлу, указанный в ГБ. Минимальный разрешённый размер диска — 10 ГБ. Если не указано, размер диска по умолчанию — 100 ГБ.

image_type
строка
success
Тип образа для использования для данного узла. Обратите внимание, что для данного типа образа будет использована последняя версия.

labels
словарь
success
Карта меток Kubernetes (пар «ключ/значение»), применяемых к каждому узлу. Они добавляются дополнительно к любым меткам по умолчанию, которые Kubernetes может применить к узлу. В случае конфликта в ключах меток применяемый набор может отличаться в зависимости от версии Kubernetes — лучше всего предполагать поведение неопределённым, и конфликтов следует избегать. Подробнее, включая использование и допустимые значения, см.: http://kubernetes.io/v1.1/docs/user-guide/labels.html Объект, содержащий список пар «ключ»: значение.
Пример: { "name": "ключ", "mass": "1.3кг", "count": "3" }.

local_ssd_count
целое число
success
Количество локальных SSD-дисков, подключаемых к узлу.
Ограничение для этого значения зависит от максимального количества дисков, доступных на машине в данной зоне. Подробнее см.: https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits

machine_type
строка
success
Имя типа машины Google Compute Engine (например,
n1-стандарт-1). Если не указано, тип машины по умолчанию — n1-стандарт-1.

metadata
словарь
success
Ключи/значения метаданных, назначенные экземплярам в кластере.
Ключи должны соответствовать регулярному выражению [a-zA-Z0-9-_]+ и иметь длину менее 128 байт. Они отражаются как часть URL-адреса в сервере метаданных. Кроме того, чтобы избежать неоднозначности, ключи не должны совпадать с другими ключами метаданных для проекта или быть одним из четырёх зарезервированных ключей: «instance-template», «kube-env», «startup-script» и «user-data». Значения — свободные строки, и их смысл интерпретируется только работающим в экземпляре образом. Единственное ограничение заключается в том, что размер каждого значения должен быть меньше или равен 32 КБ.
Общая длина всех ключей и значений должна быть меньше 512 КБ.
Объект, содержащий список пар «ключ»: значение.
Пример: { "name": "ключ", "mass": "1.3кг", "count": "3" }.

oauth_scopes
список
success
Набор облачных API-скопов Google, которые должны быть доступны для всех виртуальных машин узлов под учетной записью «по умолчанию».
Следующие scopes рекомендуются, но не являются обязательными, и по умолчанию не включены: https://www.googleapis.com/auth/compute необходим для подключения постоянного хранилища к вашим узлам.
https://www.googleapis.com/auth/devstorage.read_only необходим для связи с gcr.io (Google Container Registry).
Если не указано, scopes не добавляются, если не включены Cloud Logging или Cloud Monitoring, в этом случае будут добавлены необходимые scopes.

preemptible
булево
success
Указывает, создаются ли узлы как предварительно прерывимые виртуальные машины. Подробнее о предварительно прерывимых виртуальных машинах см.: https://cloud.google.com/compute/docs/instances/preemptible

service_account
строка
success
Учетная запись службы Google Cloud Platform, которая будет использоваться виртуальными машинами узлов. Если учетная запись службы не указана, используется учетная запись «по умолчанию».

tags
список
success
Список меток экземпляров, применяемых ко всем узлам. Метки используются для идентификации допустимых источников или целей для сетевых брандмауэров и задаются клиентом при создании кластера или пула узлов. Каждая метка в списке должна соответствовать RFC1035.

initial_node_count
целое число
success
Начальное количество узлов для пула. Вы должны убедиться, что ваша квота ресурсов Compute Engine достаточна для этого количества экземпляров. Также вам потребуется квота на брандмауэр и маршруты.

management
сложный
success
Конфигурация управления для этого пула узлов.

auto_repair
булево
success
Флаг, указывающий, включено ли автоматическое исправление узлов для пула узлов. Если включено, узлы в этом пуле узлов будут отслеживаться, и если они не пройдут проверки работоспособности слишком много раз, будет выполнено автоматическое действие по исправлению.

auto_upgrade
булево
success
Флаг, указывающий, включено ли автоматическое обновление узлов для пула узлов. При включении автоматическое обновление узлов помогает поддерживать узлы в вашем пуле узлов в актуальном состоянии с последней версией Kubernetes.

upgrade_options
сложный
success
Указывает параметры автоматического обновления для пула узлов.

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

description
строка
success
Это поле устанавливается, когда обновления собираются начать с описанием обновления.

name
строка
success
Название пула узлов.

version
строка
success
Версия Kubernetes этого узла.

zone
строка
success
Зона, в которой развернут пул узлов.



Статус

  • Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [community]

Авторы

  • Google Inc. (@googlecloudplatform)

Подсказка

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

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

Spec-Zone.ru

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