Spec-Zone.ru › Ansible

google.cloud.gcp_container_node_pool модуль — Создаёт пул узлов GCP

Примечание

Этот модуль входит в коллекцию google.cloud (версия 1.4.1).

У вас, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля необходимы дополнительные требования, см. Требования для получения подробностей.

Для использования в плейбуке укажите: google.cloud.gcp_container_node_pool.

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

Описание

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

Требования

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

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

Параметры

Параметр

Комментарии

access_token

строка

Токен доступа OAuth2, если тип учетных данных — accesstoken.

auth_kind

строка / обязательно

Тип используемых учетных данных.

Варианты:

  • "application"
  • "machineaccount"
  • "serviceaccount"
  • "accesstoken"

autoscaling

словарь

Настройка автомасштабирования для данного NodePool. Автомасштабирование включено только при наличии корректной конфигурации.

enabled

булево

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

Варианты:

  • false
  • true

max_node_count

целое число

Максимальное количество узлов в NodePool. Должно быть >= minNodeCount.

Должно быть достаточно квот для масштабирования кластера вверх.

min_node_count

целое число

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

cluster

словарь / обязательно

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

Это поле представляет ссылку на ресурс Cluster в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом ‘name’ и значением имени вашего ресурса. Во-вторых, можно добавить `register: имя-ресурса` к задаче gcp_container_cluster, а затем установить это поле cluster на «{{ имя-ресурса }}»

conditions

список / элементы=словарь

Условий, которые привели к текущему состоянию пула узлов.

code

строка

Машинно-ориентированное представление условия.

Некоторые допустимые значения включают: «UNKNOWN», «GCE_STOCKOUT», «GKE_SERVICE_ACCOUNT_DELETED», «GCE_QUOTA_EXCEEDED», «SET_BY_OPERATOR»

config

словарь

Конфигурация узлов пула.

accelerators

список / элементы=словарь

Список аппаратных ускорителей, которые необходимо подключить к каждому узлу.

accelerator_count

целое число

Количество карт ускорителей, доступных для экземпляра.

accelerator_type

строка

Имя ресурса типа ускорителя.

disk_size_gb

целое число

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

disk_type

строка

Тип диска, подключённого к каждому узлу (например, ‘pd-standard’ или ‘pd-ssd’). Если не указано, по умолчанию используется тип диска ‘pd-standard’.

image_type

строка

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

labels

словарь

Карта меток Kubernetes (пар «ключ/значение»), которые следует применить к каждому узлу. Эти метки будут добавлены в дополнение к любым меткам по умолчанию, которые Kubernetes может применить к узлу. В случае конфликта ключей меток применённый набор может отличаться в зависимости от версии Kubernetes — лучше всего считать поведение неопределённым, и конфликты следует избегать. Более подробную информацию, включая использование и допустимые значения, см. на странице: http://kubernetes.io/v1.1/docs/user-guide/labels.html. Объект, содержащий список пар «ключ»: значение.

Пример: { “name”: “ключ”, “mass”: “1.3кг”, “count”: “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 КБ.

Объект, содержащий список пар «ключ»: значение.

Пример: { «имя»: «ключ», «масса»: «1.3кг», «количество»: «3» }.

min_cpu_platform

строка

Минимальная платформа процессора, которая должна использоваться этим экземпляром. Экземпляр может быть запланирован на указанную или более новую платформу процессора.

oauth_scopes

список / элементы=строка

Набор Google API-разрешений, которые будут доступны на всех виртуальных машинах узла в рамках учётной записи «по умолчанию».

Следующие разрешения рекомендуется использовать, но они необязательны и по умолчанию не включены: https://www.googleapis.com/auth/compute требуется для монтирования постоянного хранилища на ваших узлах.

https://www.googleapis.com/auth/devstorage.read_only требуется для связи с gcr.io (Google Container Registry).

Если не указано, разрешения не добавляются, если не включены Cloud Logging или Cloud Monitoring, в этом случае будут добавлены их необходимые разрешения.

preemptible

логическое значение

Указывает, создаются ли узлы как виртуальные машины с возможностью прерывания. См.: https://cloud.google.com/compute/docs/instances/preemptible для получения дополнительной информации о виртуальных машинах с возможностью прерывания.

Выбор:

  • false
  • true

service_account

строка

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

shielded_instance_config

словарь

Параметры защищённого экземпляра.

enable_integrity_monitoring

логическое значение

Определяет, включено ли мониторинг целостности для экземпляра.

Включает мониторинг и подтверждение целостности загрузки экземпляра.

Подтверждение выполняется в соответствии с базовой линией политики целостности. Эта база данных изначально выводится из неявно надёжного загрузочного изображения при создании экземпляра.

Выбор:

  • false
  • true

enable_secure_boot

логическое значение

Определяет, включен ли Безопасный запуск для экземпляра.

Безопасный запуск помогает гарантировать, что система запускает только аутентифицированное программное обеспечение, проверяя цифровую подпись всех загрузочных компонентов и останавливая процесс загрузки, если проверка подписи не удалась.

Выбор:

  • false
  • true

tags

список / элементы=строка

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

taints

список / элементы=словарь

Список тегов Kubernetes, которые должны применяться к каждому узлу.

effect

строка

Эффект для тега.

key

строка

Ключ для тега.

value

строка

Значение для тега.

workload_meta_config

словарь

WorkloadMetadataConfig определяет конфигурацию метаданных, которые должны быть доступны рабочим нагрузкам в пуле узлов.

mode

строка

Режим — это конфигурация для отображения метаданных рабочим нагрузкам, выполняющимся в пуле узлов.

Некоторые допустимые варианты: «GCE_METADATA», «GKE_METADATA»

env_type

строка

Указывает, в какой среде Ansible вы выполняете этот модуль.

Необходимо устанавливать только в случае необходимости.

Это изменяет только строку User Agent для всех запросов API.

initial_node_count

целое число / обязательно

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

location

псевдонимы: регион, зона

строка / обязательно

Расположение, где развернут пул узлов.

management

dictionary

Конфигурация управления для этого NodePool.

auto_repair

boolean

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

Варианты:

  • false
  • true

auto_upgrade

boolean

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

Варианты:

  • false
  • true

upgrade_options

dictionary

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

max_pods_constraint

dictionary

Ограничение максимального количества под (pods), которые могут выполняться одновременно на узле в пуле узлов.

max_pods_per_node

integer

Ограничение, накладываемое на максимальное количество под на узел.

name

string

Имя пула узлов.

project

string

Проект Google Cloud Platform, который нужно использовать.

scopes

list / elements=string

Массив используемых областей.

service_account_contents

jsonarg

Содержимое JSON файла учетной записи сервиса, либо в виде словаря, либо в виде JSON строки, его представляющей.

service_account_email

string

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

service_account_file

path

Путь к файлу JSON учетной записи сервиса, если тип serviceaccount выбран.

state

string

Определяет, должен ли данный объект существовать в GCP.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

version

string

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

Примеры

- name: create a cluster
  google.cloud.gcp_container_cluster:
    name: cluster-nodepool
    initial_node_count: 4
    location: 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
  google.cloud.gcp_container_node_pool:
    name: my-pool
    initial_node_count: 4
    cluster: "{{ cluster }}"
    location: us-central1-a
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

Значения возврата

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

Ключ

Описание

autoscaling

сложный

Настройка автоматического масштабирования для данного NodePool. Автоматическое масштабирование включено только при наличии допустимой конфигурации.

Возвращается: успех

enabled

логическое

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

Возвращается: успех

maxNodeCount

целое число

Максимальное количество узлов в NodePool. Должно быть >= minNodeCount.

Должно быть достаточно квот для увеличения кластера.

Возвращается: успех

minNodeCount

целое число

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

Возвращается: успех

cluster

словарь

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

Возвращается: успех

conditions

сложный

Условия, которые привели к текущему состоянию пула узлов.

Возвращается: успех

code

строка

Представление условия в удобочитаемом для машины формате.

Возвращается: успех

config

сложный

Конфигурация узлов пула.

Возвращается: успех

accelerators

сложный

Список аппаратных ускорителей, которые необходимо подключить к каждому узлу.

Возвращается: успех

acceleratorCount

целое число

Количество карт ускорителей, подключенных к экземпляру.

Возвращается: успех

acceleratorType

строка

Имя ресурса типа ускорителя.

Возвращается: успех

diskSizeGb

целое число

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

Возвращается: успех

diskType

строка

Тип диска, подключенного к каждому узлу (например, ‘pd-standard’ или ‘pd-ssd’). Если не указано, тип диска по умолчанию — ‘pd-standard’.

Возвращается: успех

imageType

строка

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

Возвращается: успех

labels

словарь

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

Пример: { “name”: “ключ”, “mass”: “1.3кг”, “count”: “3” }.

Возвращается: успех

localSsdCount

целое число

Количество локальных SSD-дисков, которые необходимо подключить к узлу.

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

Возвращается: успех

machineType

строка

Имя типа виртуальной машины Google Compute Engine (например,

n1-standard-1). Если не указано, тип виртуальной машины по умолчанию — n1-standard-1.

Возвращается: успех

metadata

dictionary

Ключ/значение пар метаданных, назначенных экземплярам в кластере.

Ключи должны соответствовать регулярному выражению [a-zA-Z0-9-_]+ и иметь длину менее 128 байтов. Они отражаются как часть URL на сервере метаданных. Кроме того, во избежание неоднозначности ключи не должны конфликтовать с другими ключами метаданных для проекта или быть одним из четырех зарезервированных ключей: “instance-template”, “kube-env”, “startup-script” и “user-data”. Значения представляют собой произвольные строки и имеют смысл только в том виде, в котором их интерпретирует образ, запущенный в экземпляре. Единственное ограничение, накладываемое на них, заключается в том, что размер каждого значения должен быть меньше или равен 32 КБ.

Общий размер всех ключей и значений должен быть менее 512 КБ.

Объект, содержащий список пар «ключ»: значение.

Пример: { “name”: “wrench”, “mass”: “1.3kg”, “count”: “3” }.

Возвращено: success

minCpuPlatform

string

Минимальная платформа ЦП, которая будет использоваться этим экземпляром. Экземпляр может быть запланирован на указанной или более новой платформе ЦП.

Возвращено: success

oauthScopes

list / elements=string

Набор областей API Google, которые будут доступны на всех виртуальных машинах узлов под учетной записью службы «default».

Рекомендуются, но не требуются следующие области, и по умолчанию они не включены: https://www.googleapis.com/auth/compute требуется для монтирования постоянного хранилища на ваших узлах.

https://www.googleapis.com/auth/devstorage.read_only требуется для связи с gcr.io (реестр контейнеров Google).

Если не указано, области не добавляются, если только не включено Cloud Logging или Cloud Monitoring, в этом случае будут добавлены их необходимые области.

Возвращено: success

preemptible

boolean

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

Возвращено: success

serviceAccount

string

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

Возвращено: success

shieldedInstanceConfig

complex

Параметры защищенного экземпляра.

Возвращено: success

enableIntegrityMonitoring

boolean

Определяет, включен ли для экземпляра мониторинг целостности.

Включает мониторинг и подтверждение целостности загрузки экземпляра.

Подтверждение выполняется на основе базовой линии политики целостности. Эта базовая линия изначально выводится из неявно доверенного загрузочного образа при создании экземпляра.

Возвращено: success

enableSecureBoot

boolean

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

Безопасная загрузка помогает обеспечить запуск системой только аутентичного программного обеспечения путем проверки цифровой подписи всех компонентов загрузки и остановки процесса загрузки, если проверка подписи завершится неудачей.

Возвращено: success

tags

list / elements=string

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

Возвращено: success

taints

complex

Список пометок Kubernetes, которые будут применены к каждому узлу.

Возвращено: success

effect

string

Эффект для метки.

Возвращено: success

key

string

Ключ для метки.

Возвращено: success

value

string

Значение для метки.

Возвращено: success

workloadMetaConfig

complex

WorkloadMetadataConfig определяет конфигурацию метаданных для предоставления рабочим нагрузкам в пуле узлов.

Возвращено: success

mode

string

Mode — это конфигурация для того, как предоставлять метаданные рабочим нагрузкам, работающим в пуле узлов.

Возвращено: success

initialNodeCount

integer

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

Возвращено: success

местоположение

строка

Местоположение, где развернут пул узлов.

Возвращено: успех

управление

сложный тип

Настройка управления для этого NodePool.

Возвращено: успех

автоматический ремонт

логическое значение

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

Возвращено: успех

автоматическое обновление

логическое значение

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

Возвращено: успех

параметры обновления

сложный тип

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

Возвращено: успех

время начала автоматического обновления

строка

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

Возвращено: успех

описание

строка

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

Возвращено: успех

ограничение на максимальное количество под

сложный тип

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

Возвращено: успех

максимальное количество под на узел

целое число

Ограничение, применённое к максимальному числу под на узел.

Возвращено: успех

имя

строка

Имя пула узлов.

Возвращено: успех

размер блока под CIDR

целое число

Размер блока CIDR под на узел в этом пуле узлов.

Возвращено: успех

статус

строка

Состояние узлов в этом экземпляре пула.

Возвращено: успех

сообщение о статусе

строка

Дополнительная информация о текущем состоянии этого экземпляра пула узлов.

Возвращено: успех

версия

строка

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

Возвращено: успех

Авторы

  • Google Inc. (@googlecloudplatform)

Ссылки на коллекцию

  • Система отслеживания ошибок
  • Главная страница
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/google/cloud/gcp_container_node_pool_module.html

Spec-Zone.ru

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