Spec-Zone.ru › Ansible 2.11

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

Примечание

Этот плагин входит в коллекцию google.cloud (версия 1.0.2).

Для его установки используйте: 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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
строка / обязательно
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
autoscaling
словарь
Настройка автомасштабирования для этого пула узлов. Автомасштабирование включено только при наличии корректной конфигурации.
enabled
булево
    Варианты:
  • no
  • yes
Включено ли автомасштабирование для этого пула узлов.
max_node_count
целое число
Максимальное количество узлов в пуле узлов. Должно быть больше или равно minNodeCount.
Должно быть достаточно квот для увеличения масштаба кластера.
min_node_count
целое число
Минимальное количество узлов в пуле узлов. Должно быть больше или равно 1 и меньше или равно maxNodeCount.
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": "отвёртка", "масса": "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" }.
min_cpu_platform
строка
Минимальная платформа процессора, используемая этим экземпляром. Экземпляр может быть запланирован на указанную или более новую платформу процессора.
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
булево
    Варианты:
  • no
  • yes
Создаются ли узлы как виртуальные машины с возможностью прерывания. См.: https://cloud.google.com/compute/docs/instances/preemptible для получения дополнительной информации о виртуальных машинах с возможностью прерывания.
service_account
строка
Учетная запись сервиса Google Cloud Platform, которая должна использоваться виртуальными машинами узлов. Если учетная запись сервиса не указана, используется учетная запись сервиса "по умолчанию".
shielded_instance_config
словарь
Параметры защищённого экземпляра.
enable_integrity_monitoring
булево
    Варианты:
  • no
  • yes
Определяет, включено ли для экземпляра мониторинг целостности.
Включает мониторинг и подтверждение целостности загрузки экземпляра.
Подтверждение выполняется по отношению к эталону политики целостности. Этот эталон изначально выводится из неявного доверенного загрузочного образа при создании экземпляра.
enable_secure_boot
булево
    Варианты:
  • no
  • yes
Определяет, включен ли для экземпляра безопасный запуск.
Безопасный запуск помогает гарантировать, что система выполняет только аутентифицированное программное обеспечение, проверяя цифровую подпись всех загрузочных компонентов и останавливая процесс загрузки в случае неудачи проверки подписи.
tags
список / элементы=строка
Список меток экземпляра, применённых ко всем узлам. Метки используются для определения допустимых источников или целей для сетевых брандмауэров и задаются клиентом при создании кластера или пула узлов. Каждая метка в списке должна соответствовать RFC1035.
taints
список / элементы=словарь
Список меток Kubernetes, которые должны быть применены к каждому узлу.
effect
строка
Эффект для метки.
key
строка
Ключ для метки.
value
строка
Значение для метки.
workload_meta_config
словарь
WorkloadMetadataConfig определяет конфигурацию метаданных, которая должна быть доступна рабочим нагрузкам в пуле узлов.
mode
строка
Режим — это конфигурация того, как метаданные будут представлены рабочим нагрузкам, выполняемым в пуле узлов.
Некоторые допустимые значения включают: "GCE_METADATA", "GKE_METADATA"
тип_среды
строка
Указывает, в какой среде Ansible выполняется этот модуль.
Не устанавливайте это значение, если вы не знаете, что делаете.
Это только изменяет строку User Agent для всех запросов к API.
начальное_количество_узлов
целое / обязательно
Начальное количество узлов для пула. Вы должны убедиться, что квота Compute Engine ресурсов достаточна для этого числа экземпляров. У вас также должны быть доступные квоты на брандмауэр и маршруты.
местоположение
строка / обязательно
Расположение, где развернут пул узлов.

псевдонимы: регион, зона
управление
словарь
Настройка управления для этого пула узлов.
автоматический_ремонт
булево
    Варианты:
  • нет
  • да
Флаг, указывающий, включён ли автоматический ремонт узлов для пула узлов. Если включен, узлы в этом пуле будут отслеживаться, и если они слишком много раз не пройдут проверки работоспособности, будет выполнено автоматическое действие ремонта.
автоматическое_обновление
булево
    Варианты:
  • нет
  • да
Флаг, указывающий, включено ли автоматическое обновление узлов для пула узлов. Если включено, автоматическое обновление узлов поможет поддерживать узлы в вашем пуле узлов актуальными с последней версией Kubernetes.
варианты_обновления
словарь
Указывает параметры автоматического обновления для пула узлов.
ограничение_максимального_количества_подов
словарь
Ограничение максимального количества поддонов, которые могут выполняться одновременно на узле в пуле узлов.
максимальное_количество_подов_на_узел
целое
Ограничение, применяемое к максимальному числу поддонов на узел.
имя
строка
Имя пула узлов.
проект
строка
Проект Google Cloud Platform для использования.
разрешения
список / элементы=строка
Массив разрешений для использования
содержимое_учетной_записи_службы
jsonarg
Содержимое файла JSON учетной записи службы, либо в словаре, либо в виде JSON-строки, представляющей его.
электронный_адрес_учетной_записи_службы
строка
Необязательный электронный адрес учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию.
файл_учетной_записи_службы
путь
Путь к файлу JSON учетной записи службы, если тип serviceaccount выбран.
состояние
строка
    Варианты:
  • есть ←
  • отсутствует
Требуется ли существование данного объекта в GCP
версия
строка
Версия 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
complex
success
Конфигурация автомасштабирования для данного пула узлов. Автомасштабирование включено только при наличии корректной конфигурации.

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

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

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

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

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

code
string
success
Представление условия, удобное для машинного анализа.

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

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

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

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

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

diskType
string
success
Тип диска, подключенного к каждому узлу (например, 'pd-standard' или 'pd-ssd'). Если не указан, используется тип диска по умолчанию — 'pd-standard'.

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

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

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

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

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

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

oauthScopes
list / elements=string
success
Набор областей видимости 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
boolean
success
Указывается, создаются ли узлы в качестве экземпляров виртуальных машин с возможностью прерывания. Подробнее см.: https://cloud.google.com/compute/docs/instances/preemptible

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

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

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

enableSecureBoot
boolean
success
Определяет, включена ли функция Secure Boot для экземпляра.
Secure Boot помогает гарантировать, что система выполняет только подлинный программный код, проверяя цифровую подпись всех загрузочных компонентов и останавливая процесс загрузки, если проверка подписи завершается неудачно.

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

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

effect
string
success
Эффект метки.

key
string
success
Ключ метки.

value
string
success
Значение метки.

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

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

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

location
string
success
Расположение, в котором развернут пул узлов.

management
complex
success
Конфигурация управления для данного пула узлов.

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

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

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

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

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

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

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

name
string
success
Название пула узлов.

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

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

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

version
string
success
Версия Kubernetes данного узла.



Авторы

  • Google Inc. (@googlecloudplatform)

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

Spec-Zone.ru

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