gcp_container_cluster_facts – Сбор фактов для кластера GCP
Новое в версии 2.8.
Обзор
- Сбор фактов для кластера GCP
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. |
| location - / обязательно добавлен в 2.8 | Расположение, где развернут кластер. псевдонимы: region, zone | |
| project строка | Используемый проект Google Cloud Platform. | |
| scopes список | Массив используемых областей. | |
| service_account_contents строка | Строка, представляющая содержимое файла JSON учетной записи сервиса. Не следует передавать это значение как словарь, а строку с точным содержимым файла JSON учетной записи сервиса (валидный JSON). | |
| service_account_email строка | Необязательный адрес электронной почты учетной записи сервиса, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию. | |
| service_account_file путь | Путь к файлу JSON учетной записи сервиса, если выбран тип serviceaccount. |
Примечания
Примечание
- Для аутентификации можно установить service_account_file с помощью переменной среды
GCP_SERVICE_ACCOUNT_FILE. - Для аутентификации можно установить service_account_email с помощью переменной среды
GCP_SERVICE_ACCOUNT_EMAIL. - Для аутентификации можно установить service_account_contents с помощью переменной среды
GCP_SERVICE_ACCOUNT_CONTENTS. - Для аутентификации можно установить auth_kind с помощью переменной среды
GCP_AUTH_KIND. - Для аутентификации можно установить scopes с помощью переменной среды
GCP_SCOPES. - Значения переменных среды будут использоваться только в том случае, если значения в playbook не заданы.
- Параметры service_account_email и service_account_file взаимоисключающие.
Примеры
- name: " a cluster facts"
gcp_container_cluster_facts:
location: us-central1-a
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание | |||
|---|---|---|---|---|---|
| items сложный тип | всегда | Список элементов | |||
| addonsConfig сложный тип | успешно | Настройки различных плагинов, доступных для запуска в кластере. | |||
| horizontalPodAutoscaling сложный тип | успешно | Настройка функции горизонтального масштабирования Pods, которая увеличивает или уменьшает количество реплик Pod, управляемых контроллером репликации, на основе использования ресурсов существующих Pods. | |||
| disabled булево значение | успешно | Включена ли функция горизонтального масштабирования Pods в кластере. При включении она гарантирует запуск Pod Heapster в кластере, который также используется службой Cloud Monitoring. | |||
| httpLoadBalancing сложный тип | успешно | Настройка плагина контроллера балансировки нагрузки HTTP (L7), который упрощает настройку балансировщиков нагрузки HTTP для служб в кластере. | |||
| disabled булево значение | успешно | Включен ли контроллер балансировки нагрузки HTTP в кластере. При включении он запускает небольшой Pod в кластере, который управляет балансировщиками нагрузки. | |||
| clusterIpv4Cidr строка | успешно | Диапазон IP-адресов контейнерных Pods в этом кластере в нотации CIDR (например, 10.96.0.0/14). Оставьте пустым, чтобы автоматически выбрать диапазон, или укажите блок /14 в 10.0.0.0/8. | |||
| createTime строка | успешно | Время создания кластера в формате RFC3339. | |||
| currentMasterVersion строка | успешно | Текущая версия программного обеспечения конечной точки Master. | |||
| currentNodeCount целое число | успешно | Количество узлов в кластере. | |||
| currentNodeVersion строка | успешно | Текущая версия программного обеспечения компонентов узлов. Если они находятся на разных версиях из-за обновления, это отражает минимальную версию всех узлов. | |||
| description строка | успешно | Необязательное описание этого кластера. | |||
| endpoint строка | успешно | IP-адрес конечной точки Master этого кластера. Доступ к конечной точке возможен из интернета по адресу https://имя_пользователя:пароль@конечная_точка/. Информацию об имени пользователя и пароле см. в свойстве masterAuth этого ресурса. | |||
| expireTime строка | успешно | Время автоматического удаления кластера в формате RFC3339. | |||
| initialClusterVersion строка | успешно | Версия программного обеспечения конечной точки Master и kubelet, используемая в кластере при его первоначальном создании. Версия может быть обновлена со временем. | |||
| initialNodeCount целое число | успешно | Количество узлов для создания в этом кластере. Вам необходимо убедиться, что квота ресурсов Compute Engine достаточна для этого количества экземпляров. Вам также потребуются квоты на брандмауэры и маршруты. Для запросов этот параметр следует использовать только вместо объекта «nodePool», так как эти настройки (вместе с «nodeConfig») будут использоваться для создания объекта «NodePool» с автоматически сгенерированным именем. Не используйте одновременно этот параметр и nodePool. | |||
| location строка | успешно | Расположение, где развернут кластер. | |||
| loggingService строка | успешно | Служба ведения журналов, которую должен использовать кластер. Доступные варианты: logging.googleapis.com — служба Google Cloud Logging. none — журналы из кластера не будут экспортироваться. Если оставить пустым, будет использоваться logging.googleapis.com. | |||
| masterAuth сложный тип | успешно | Информация об аутентификации для доступа к конечной точке Master. | |||
| clientCertificate строка | успешно | Публичный сертификат в кодировке Base64, используемый клиентами для аутентификации на конечной точке кластера. | |||
| clientKey строка | успешно | Приватный ключ в кодировке Base64, используемый клиентами для аутентификации на конечной точке кластера. | |||
| clusterCaCertificate строка | успешно | Публичный сертификат в кодировке Base64, являющийся корневым сертификатом доверия для кластера. | |||
| password строка | успешно | Пароль для аутентификации по HTTP Basic на конечной точке Master. Так как конечная точка Master доступна в интернете, необходимо использовать надежный пароль. | |||
| username строка | успешно | Имя пользователя для аутентификации по HTTP Basic на конечной точке Master. | |||
| monitoringService строка | успешно | Служба мониторинга, которую должен использовать кластер для записи метрик. Доступные варианты: monitoring.googleapis.com — служба Google Cloud Monitoring. none — метрики из кластера не будут экспортироваться. Если оставить пустым, будет использоваться monitoring.googleapis.com. | |||
| name строка | успешно | Имя этого кластера. Имя должно быть уникальным в данном проекте и регионе и может содержать до 40 символов. Допускаются только строчные буквы, цифры и дефисы. Имя должно начинаться с буквы и заканчиваться цифрой или буквой. | |||
| network строка | успешно | Имя сети Google Compute Engine, к которой подключен кластер. Если не указано, будет использована сеть по умолчанию. | |||
| nodeConfig сложный тип | успешно | Параметры, используемые при создании узлов кластера. Для запросов этот параметр следует использовать только вместо объекта «nodePool», так как эти настройки (вместе с «initialNodeCount») будут использоваться для создания объекта «NodePool» с автоматически сгенерированным именем. Не используйте одновременно этот параметр и nodePool. Для ответов этот параметр будет заполнен настройками узла первого пула узлов. Если не указано, будут использованы значения по умолчанию. | |||
| diskSizeGb целое число | успешно | Размер диска, подключенного к каждому узлу, указанный в ГБ. Минимальный размер диска составляет 10 ГБ. Если не указано, размер диска по умолчанию составляет 100 ГБ. | |||
| 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 словарь | успех | Ключевые/значимые пары метаданных, назначенные экземплярам в кластере. Ключи должны соответствовать регулярному выражению [a-zA-Z0-9-_]+ и иметь длину менее 128 байт. Они отражаются как часть URL в сервере метаданных. Кроме того, для избежания неоднозначности ключи не должны конфликтовать с другими ключами метаданных для проекта или быть одним из четырёх зарезервированных ключей: "instance-template", "kube-env", "startup-script" и "user-data". Значения — свободные строки, и они имеют смысл только как интерпретируемые изображением, работающим в экземпляре. Единственное ограничение на них заключается в том, что размер каждого значения должен быть меньше или равен 32 КБ. Общий размер всех ключей и значений должен быть меньше 512 КБ. Объект, содержащий список пар «ключ»: значение. Пример: { "name": "ключ", "mass": "1.3кг", "count": "3" }. | |||
| oauthScopes список | успех | Набор областей 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. | |||
| serviceAccount строка | успех | Учётная запись службы Google Cloud Platform, которая должна использоваться виртуальными машинами узлов. Если учётная запись службы не указана, используется учётная запись «по умолчанию». | |||
| tags список | успех | Список тегов экземпляров, применяемых ко всем узлам. Теги используются для определения допустимых источников или целей для сетевых брандмауэров и задаются клиентом при создании кластера или пула узлов. Каждый тег в списке должен соответствовать RFC1035. | |||
| nodeIpv4CidrSize целое число | успех | Размер адресного пространства на каждом узле для размещения контейнеров. Это резервируется из диапазона container_ipv4_cidr. | |||
| privateClusterConfig сложная структура | успех | Настройка для частного кластера. | |||
| enablePrivateEndpoint булево | успех | Указывает, используется ли внутренний IP-адрес мастера в качестве конечной точки кластера. | |||
| enablePrivateNodes булево | успех | Указывает, имеют ли узлы только внутренние IP-адреса. При включении всем узлам назначаются только частные адреса RFC 1918, и они взаимодействуют с мастером через частную сеть. | |||
| masterIpv4CidrBlock строка | успех | Диапазон IP-адресов в нотации CIDR для использования в сетевом интерфейсе мастера. Этот диапазон будет использоваться для назначения внутренних IP-адресов мастеру или набору мастеров, а также для VIP-адреса ILB. Данный диапазон не должен пересекаться ни с каким другим используемым диапазоном в сети кластера. | |||
| privateEndpoint строка | успех | Внутренний IP-адрес конечной точки мастера этого кластера. | |||
| publicEndpoint строка | успех | Внешний IP-адрес конечной точки мастера этого кластера. | |||
| servicesIpv4Cidr строка | успех | Диапазон IP-адресов Kubernetes-сервисов в этом кластере в нотации CIDR (например, 1.2.3.4/29). Адреса сервисов обычно размещаются в последней /16 из диапазона container CIDR. | |||
| subnetwork строка | успех | Имя подсети Google Compute Engine, к которой подключен кластер. | |||
Статус
- Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- 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.8/modules/gcp_container_cluster_facts_module.html