gcp_container_cluster_info – Сбор информации о кластере GCP
Новая версия с 2.8.
Описание
- Сбор информации о кластере GCP
- Этот модуль назывался
gcp_container_cluster_factsдо Ansible 2.9. Использование не изменилось.
Псевдонимы: gcp_container_cluster_facts
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. |
| env_type строка | Указывает, в какой среде Ansible вы выполняете этот модуль. Не устанавливайте это значение, если вы не знаете, что делаете. Это изменяет только строку User Agent для всех запросов к API. | |
| location строка / обязательно добавлено в 2.8 | Расположение развертывания кластера. Псевдонимы: region, zone | |
| project строка | Используемый проект Google Cloud Platform. | |
| scopes список | Массив используемых областей видимости. | |
| service_account_contents jsonarg | Содержимое файла JSON учетной записи сервиса, представленного в виде словаря или JSON-строки. | |
| service_account_email строка | Необязательный адрес электронной почты учетной записи сервиса, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию. | |
| service_account_file путь | Путь к файлу JSON учетной записи сервиса, если выбран тип serviceaccount. |
Примечания
Примечание
- для аутентификации можно установить service_account_file с использованием переменной среды c(gcp_service_account_file).
- для аутентификации можно установить service_account_contents с использованием переменной среды c(GCP_SERVICE_ACCOUNT_CONTENTS).
- для аутентификации можно установить service_account_email с использованием переменной среды
GCP_SERVICE_ACCOUNT_EMAIL. - для аутентификации можно установить auth_kind с использованием переменной среды
GCP_AUTH_KIND. - для аутентификации можно установить scopes с использованием переменной среды
GCP_SCOPES. - Значения переменных среды будут использоваться только в том случае, если значения в playbook не заданы.
- Параметры service_account_email и service_account_file взаимоисключающие.
Примеры
- name: get info on a cluster
gcp_container_cluster_info:
location: us-central1-a
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, а следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание | |||
|---|---|---|---|---|---|
| resources complex | всегда | Список ресурсов | |||
| addonsConfig complex | успешно | Настройки различных дополнений, доступных для запуска в кластере. | |||
| horizontalPodAutoscaling complex | успешно | Настройка функции горизонтального масштабирования Pods, которая увеличивает или уменьшает количество реплицируемых Pods контроллером репликации на основе использования ресурсов существующих Pods. | |||
| disabled boolean | успешно | Включена ли функция Горизонтального масштабирования Pods в кластере. При включении она гарантирует, что в кластере запущен Pod Heapster, который также используется службой Cloud Monitoring. | |||
| httpLoadBalancing complex | успешно | Настройка дополнения контроллера балансировки нагрузки HTTP (L7), которое упрощает настройку балансировщиков HTTP для служб в кластере. | |||
| disabled boolean | успешно | Включен ли контроллер балансировки нагрузки HTTP в кластере. При включении он запускает небольшой Pod в кластере, который управляет балансировщиками. | |||
| networkPolicyConfig complex | успешно | Настройка NetworkPolicy. Это отслеживает только включение/выключение дополнения на узле Master, не отслеживая включение NetworkPolicy на узлах. | |||
| disabled boolean | успешно | Включена ли NetworkPolicy для этого кластера. | |||
| clusterIpv4Cidr string | успешно | Диапазон IP-адресов контейнерных Pods в этом кластере в формате CIDR (например, 10.96.0.0/14). Оставьте пустым, чтобы автоматически выбрать или укажите блок /14 в 10.0.0.0/8. | |||
| conditions complex | успешно | Условия, вызвавшие текущее состояние кластера. | |||
| code string | успешно | Представление условия в машиночитаемом формате. | |||
| message string | успешно | Представление условия в удобочитаемом формате. | |||
| createTime string | успешно | Дата создания кластера в формате RFC3339. | |||
| currentMasterVersion string | успешно | Текущая версия программного обеспечения узла Master. | |||
| currentNodeCount integer | успешно | Количество узлов в кластере. | |||
| currentNodeVersion string | успешно | Текущая версия программного обеспечения узлов. Если они находятся на разных версиях (например, в процессе обновления), отображается минимальная версия. | |||
| defaultMaxPodsConstraint complex | успешно | По умолчанию ограничение на максимальное количество Pods, которые могут быть запущены одновременно на узле в пуле узлов этого кластера. Учитывается только если кластер создан с поддержкой IP Alias. | |||
| maxPodsPerNode string | успешно | Ограничение на максимальное количество Pods на узел. | |||
| description string | успешно | Необязательное описание кластера. | |||
| enableTpu boolean | успешно | Включить возможность использования Cloud TPUs в этом кластере. | |||
| endpoint string | успешно | IP-адрес узла Master этого кластера. К узлу можно получить доступ через интернет по адресу https://имя_пользователя:пароль@адрес_узла/ . См. свойство masterAuth этого ресурса для получения информации о имени пользователя и пароле. | |||
| expireTime string | успешно | Дата автоматического удаления кластера в формате RFC3339. | |||
| initialClusterVersion string | успешно | Версия программного обеспечения узла Master и kubelets, используемые в кластере при его первом создании. Версия может быть обновлена со временем. | |||
| initialNodeCount integer | успешно | Количество узлов для создания в этом кластере. Необходимо убедиться, что у вас достаточно квот ресурсов Compute Engine для этого количества экземпляров. Также необходимо иметь достаточные квоты на брандмауэры и маршруты. Для запросов это поле следует использовать только вместо объекта "nodePool", поскольку эта настройка (вместе с "nodeConfig") будет использована для создания объекта "NodePool" с автоматически сгенерированным именем. Не используйте одновременно это поле и nodePool. Это поле устарело. Пожалуйста, используйте nodePool.initial_node_count вместо него. | |||
| ipAllocationPolicy complex | успешно | Настройка для управления выделением IP-адресов в кластере. | |||
| clusterIpv4CidrBlock string | успешно | Диапазон IP-адресов для IP-адресов Pods кластера. Если это поле установлено, то cluster.cluster_ipv4_cidr необходимо оставить пустым. Это поле применимо только при useIpAliases=true. Оставьте пустым, чтобы выбрать диапазон с размером по умолчанию. Установите /netmask (например, /14), чтобы выбрать диапазон с заданной маской сети. | |||
| clusterSecondaryRangeName string | успешно | Имя вторичного диапазона, используемого для блока CIDR кластера. Вторичный диапазон будет использоваться для IP-адресов Pods. Должен быть существующим вторичным диапазоном, связанным с подсетью кластера. | |||
| createSubnetwork boolean | успешно | Будет ли автоматически создана новая подсеть для кластера. | |||
| nodeIpv4CidrBlock string | успешно | Диапазон IP-адресов IP-адресов экземпляров в этом кластере. Применимо только если createSubnetwork=true. Оставьте пустым, чтобы выбрать диапазон с размером по умолчанию. Установите /netmask (например, /14), чтобы выбрать диапазон с заданной маской сети. | |||
| servicesIpv4CidrBlock string | успешно | Диапазон IP-адресов IP-адресов сервисов в этом кластере. Если пусто, будет автоматически выбран диапазон с размером по умолчанию. Это поле применимо только при useIpAliases=true. Оставьте пустым, чтобы выбрать диапазон с размером по умолчанию. Установите /netmask (например, /14), чтобы выбрать диапазон с заданной маской сети. | |||
| servicesSecondaryRangeName строка | success | Имя вторичного диапазона, используемого в качестве блока CIDR для сервисов. Вторичный диапазон будет использоваться для ClusterIPs сервисов. Должен быть существующим вторичным диапазоном, связанным с подсетью кластера. | |||
| subnetworkName строка | success | Настраиваемое имя подсети, которое будет использоваться, если createSubnetwork равно true. Если это поле пустое, то для новой подсети будет выбрано автоматическое имя. | |||
| tpuIpv4CidrBlock строка | success | Диапазон IP-адресов Cloud TPUs в этом кластере. Если не указано, диапазон будет автоматически выбран с размером по умолчанию. Это поле применимо только в случае, если useIpAliases равно true. Если не указано, диапазон будет использовать размер по умолчанию. Установите в значение /маска (например, /14), чтобы выбрать диапазон с определенной маской. | |||
| useIpAliases логическое значение | success | Использовать ли alias IP-адреса для IP-адресов pod в кластере. | |||
| labelFingerprint строка | success | Отпечаток метки набора меток для этого кластера. | |||
| legacyAbac сложный тип | success | Настройка режима авторизации legacy ABAC. | |||
| enabled логическое значение | success | Включен ли механизм авторизации ABAC для этого кластера. При включении у идентификаторов в системе, включая учетные записи сервисов, узлы и контроллеры, будут статически предоставлены разрешения помимо тех, которые предоставлены конфигурацией RBAC или IAM. | |||
| location строка | success | Местоположение, где развернут кластер. | |||
| locations список | success | Список зон Google Compute Engine, в которых должны располагаться узлы кластера. | |||
| loggingService строка | success | Служба ведения журналов, которую должен использовать кластер для записи журналов. В настоящее время доступны следующие варианты: logging.googleapis.com — служба Google Cloud Logging. none — журналы из кластера не будут экспортироваться. Если оставить пустой строкой, будет использоваться logging.googleapis.com. | |||
| masterAuth сложный тип | success | Информация об аутентификации для доступа к мастер-точке. | |||
| clientCertificate строка | success | Публичный сертификат в кодировке Base64, используемый клиентами для аутентификации на конечной точке кластера. | |||
| clientCertificateConfig сложный тип | success | Настройка аутентификации с помощью клиентского сертификата в кластере. Для кластеров до версии 1.12, если конфигурация не указана, клиентский сертификат выдается. | |||
| issueClientCertificate логическое значение | success | Выдать клиентский сертификат. | |||
| clientKey строка | success | Закрытый ключ в кодировке Base64, используемый клиентами для аутентификации на конечной точке кластера. | |||
| clusterCaCertificate строка | success | Публичный сертификат в кодировке Base64, являющийся корневым сертификатом доверия для кластера. | |||
| password строка | success | Пароль, который нужно использовать для HTTP-аутентификации по схеме basic на мастер-точке. Поскольку мастер-точка открыта для доступа из интернета, следует создать надежный пароль длиной не менее 16 символов. | |||
| username строка | success | Имя пользователя, которое нужно использовать для HTTP-аутентификации по схеме basic на мастер-точке. | |||
| monitoringService строка | success | Служба мониторинга, которую должен использовать кластер для записи метрик. В настоящее время доступны следующие варианты: monitoring.googleapis.com — служба Google Cloud Monitoring. none — метрики из кластера не будут экспортироваться. Если оставить пустой строкой, будет использоваться monitoring.googleapis.com. | |||
| name строка | success | Имя этого кластера. Имя должно быть уникальным в рамках этого проекта и местоположения, и может содержать до 40 символов. Допускаются только строчные буквы, цифры и дефисы. Должно начинаться с буквы. Должно заканчиваться цифрой или буквой. | |||
| network строка | success | Имя сети Google Compute Engine, к которой подключен кластер. Если не указано, будет использоваться сеть по умолчанию. | |||
| networkPolicy сложный тип | success | Параметры конфигурации функции NetworkPolicy. | |||
| enabled логическое значение | success | Включена ли политика сети в кластере. | |||
| provider строка | success | Выбранный поставщик политики сети. | |||
| nodeConfig сложный тип | success | Параметры, используемые при создании узлов кластера. Для запросов это поле должно использоваться вместо объекта "nodePool", так как эта конфигурация (вместе с "initialNodeCount") будет использоваться для создания объекта "NodePool" с автоматически сгенерированным именем. Не используйте это поле и nodePool одновременно. Для ответов это поле будет заполнено конфигурацией узла первого пула узлов. Если не указано, используются значения по умолчанию. | |||
| accelerators сложный тип | success | Список аппаратных ускорителей, которые должны быть подключены к каждому узлу. См. https://cloud.google.com/compute/docs/gpus для получения дополнительной информации о поддержке графических процессоров. | |||
| acceleratorCount строка | success | Количество карт ускорителей, доступных для экземпляра. | |||
| acceleratorType строка | success | Имя ресурса типа ускорителя. | |||
| diskSizeGb целое число | success | Размер диска, подключенного к каждому узлу, указанный в ГБ. Минимально допустимый размер диска составляет 10 ГБ. Если не указано, размер диска по умолчанию составляет 100 ГБ. | |||
| diskType строка | success | Тип диска, подключенного к каждому узлу (например, 'pd-standard' или 'pd-ssd'). Если не указано, тип диска по умолчанию — 'pd-standard'. | |||
| imageType строка | success | Тип образа, используемого для данного узла. Обратите внимание, что для данного типа образа будет использоваться последняя версия. | |||
| метки словарь | успех | Карта меток Kubernetes (пар ключ/значение), которые будут применяться к каждому узлу. Они будут добавлены дополнительно к любым стандартным меткам, которые Kubernetes может применить к узлу. В случае конфликта ключей меток применённый набор может отличаться в зависимости от версии Kubernetes — лучше предположить, что поведение неопределённо, и конфликтов следует избегать. Для получения дополнительной информации, включая использование и допустимые значения, см.: http://kubernetes.io/v1.1/docs/user-guide/labels.html Объект, содержащий список пар «ключ»: значение. Пример: { «имя»: «ключ», «масса»: «1.3кг», «количество»: «3» } | |||
| localSsdCount целое число | успех | Количество локальных дисков SSD, которые будут подключены к узлу. Предел для этого значения зависит от максимального количества дисков, доступных на машине в зоне. Подробнее см.: https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits. | |||
| machineType строка | успех | Имя типа машины 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» } | |||
| minCpuPlatform строка | успех | Минимальная платформа ЦП, которая должна использоваться этим экземпляром. Экземпляр может быть запланирован на указанную или более новую платформу ЦП. | |||
| oauthScopes список | успех | Набор облачных 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 булево | успех | Определяет, создаются ли узлы в виде преемственных виртуальных машин. См.: https://cloud.google.com/compute/docs/instances/preemptible для получения дополнительной информации о преемственных виртуальных машинах. | |||
| serviceAccount строка | успех | Учётная запись сервиса Google Cloud Platform, которая должна использоваться виртуальными машинами узлов. Если учётная запись сервиса не указана, используется учётная запись «по умолчанию». | |||
| tags список | успех | Список меток экземпляров, применённых ко всем узлам. Метки используются для идентификации допустимых источников или целей для сетевых брандмауэров и указываются клиентом во время создания кластера или пула узлов. Каждая метка в списке должна соответствовать RFC1035. | |||
| taints сложное | успех | Список меток Kubernetes, которые необходимо применить к каждому узлу. Для получения дополнительной информации, включая использование и допустимые значения, см.: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ . | |||
| effect строка | успех | Эффект для метки. | |||
| key строка | успех | Ключ для метки. | |||
| value строка | успех | Значение для метки. | |||
| nodeIpv4CidrSize целое число | успех | Размер адресного пространства на каждом узле для размещения контейнеров. Этот ресурс резервируется из диапазона container_ipv4_cidr. | |||
| privateClusterConfig сложное | успех | Конфигурация для частного кластера. | |||
| enablePrivateEndpoint булево | успех | Используется ли внутренний IP-адрес мастер-узла в качестве конечной точки кластера. | |||
| enablePrivateNodes булево | успех | У узлов только внутренние IP-адреса. Если включено, все узлы получают только частные адреса RFC 1918 и взаимодействуют с мастер-узлом через частную сеть. | |||
| masterIpv4CidrBlock строка | успех | Диапазон IP-адресов в формате CIDR для использования в размещённой сети мастер-узла. Этот диапазон будет использоваться для назначения внутренних IP-адресов мастер-узлу или набору мастер-узлов, а также для VIP ILB. Этот диапазон не должен перекрываться с другими диапазонами, используемыми в сети кластера. | |||
| privateEndpoint строка | успех | Внутренний IP-адрес конечной точки мастер-узла данного кластера. | |||
| publicEndpoint строка | успех | Внешний IP-адрес конечной точки мастер-узла данного кластера. | |||
| resourceLabels словарь | успех | Метки ресурсов для кластера, используемые для аннотирования любых связанных ресурсов Google Compute Engine. | |||
| servicesIpv4Cidr строка | успех | Диапазон IP-адресов Kubernetes-сервисов в данном кластере в формате CIDR (например, 1.2.3.4/29). Адреса сервисов обычно располагаются в последней /16 из диапазона container CIDR. | |||
| status строка | успех | Текущий статус данного кластера. | |||
| statusMessage строка | успех | Дополнительная информация о текущем статусе данного кластера, если доступна. | |||
| subnetwork строка | успех | Имя подсети Google Compute Engine, к которой подключён кластер. | |||
| tpuIpv4CidrBlock строка | успех | Диапазон IP-адресов Cloud TPUs в данном кластере в формате CIDR. | |||
Статус
- Данный модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом 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.9/modules/gcp_container_cluster_info_module.html