google.cloud.gcp_container_cluster_info – Сбор информации о кластере GCP
Примечание
Этот плагин входит в коллекцию google.cloud (версия 1.0.2).
Для его установки используйте: ansible-galaxy collection install google.cloud.
Чтобы использовать его в книге задач, укажите: google.cloud.gcp_container_cluster_info.
Обзор
- Сбор информации о кластере GCP
Требования
Ниже перечислены требования, которые должны быть выполнены на хосте, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. |
| env_type строка | Указывает, в какой среде Ansible выполняется этот модуль. Не следует устанавливать, если вы не знаете, что делаете. Это изменяет только строку User Agent для всех запросов к API. | |
| location строка / обязательно | Расположение, где развернут кластер. псевдонимы: 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 с помощью переменной среды
gcp_service_account_file. - для аутентификации можно установить service_account_contents с помощью переменной среды
GCP_SERVICE_ACCOUNT_CONTENTS. - для аутентификации можно установить service_account_email с помощью переменной среды
GCP_SERVICE_ACCOUNT_EMAIL. - для аутентификации можно установить auth_kind с помощью переменной среды
GCP_AUTH_KIND. - для аутентификации можно установить scopes с помощью переменной среды
GCP_SCOPES. - Значения переменных среды будут использоваться только в том случае, если значения в книге задач не заданы.
- Параметры 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 | успех | Настройка функции автоматического масштабирования горизонтальных под, которая увеличивает или уменьшает количество реплик под, контролируемых контроллером репликации, на основе использования ресурсов существующих под. | |||
| disabled boolean | успех | Включена ли функция автоматического масштабирования горизонтальных под в кластере. При включении она гарантирует, что в кластере запущен pod Heapster, который также используется службой мониторинга Cloud. | |||
| httpLoadBalancing complex | успех | Настройка плагина контроллера балансировки нагрузки HTTP (L7), который упрощает настройку балансировщиков нагрузки HTTP для служб в кластере. | |||
| disabled boolean | успех | Включен ли контроллер балансировки нагрузки HTTP в кластере. При включении он запускает небольшой pod в кластере, который управляет балансировщиками нагрузки. | |||
| networkPolicyConfig complex | успех | Настройка NetworkPolicy. Это отслеживает только то, включен ли плагин на Мастере, но не отслеживает, включена ли политика сети для узлов. | |||
| disabled boolean | успех | Включена ли политика сети для этого кластера. | |||
| binaryAuthorization complex | успех | Настройка функции BinaryAuthorization. | |||
| enabled boolean | успех | Если включено, все контейнерные образы будут проверяться с помощью Binary Authorization. | |||
| clusterIpv4Cidr string | успех | Диапазон IP-адресов контейнерных pod в этом кластере в CIDR-нотации (например, 10.96.0.0/14). Оставьте пустым, чтобы автоматически выбрать диапазон, или укажите блок /14 в 10.0.0.0/8. | |||
| conditions complex | успех | Какие условия привели к текущему состоянию кластера. | |||
| code string | успех | Представление условия в удобном для машины формате. | |||
| message string | успех | Представление условия в удобном для человека формате. | |||
| createTime string | успех | Время создания кластера в формате RFC3339. | |||
| currentMasterVersion string | успех | Текущая версия программного обеспечения главного узла. | |||
| currentNodeCount integer | успех | Количество узлов в настоящее время в кластере. | |||
| currentNodeVersion string | успех | Текущая версия программного обеспечения компонентов узлов. Если они в настоящее время находятся на нескольких версиях, потому что они находятся в процессе обновления, это отражает минимальную версию всех узлов. | |||
| databaseEncryption complex | успех | Настройка шифрования etcd. | |||
| keyName string | успех | Имя ключа CloudKMS, используемого для шифрования секретов в etcd. Пример: `projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key` . | |||
| state string | успех | Обозначает состояние шифрования etcd. | |||
| defaultMaxPodsConstraint complex | успех | Стандартное ограничение на максимальное количество pod, которое может одновременно работать на узле в пуле узлов этого кластера. Учитывается только если кластер создан с поддержкой IP Alias. | |||
| maxPodsPerNode string | успех | Ограничение, применённое к максимальному числу pod на узел. | |||
| description string | успех | Необязательное описание этого кластера. | |||
| enableKubernetesAlpha boolean | успех | Включены альфа-функции Kubernetes в этом кластере. Это включает альфа API-группы (например, v1alpha1) и функции, которые могут не быть готовы к производству в версии kubernetes главного узла и узлов. | |||
| enableTpu boolean | успех | (Необязательно) Включить ресурсы Cloud TPU в этом кластере. См. официальную документацию - https://cloud.google.com/tpu/docs/kubernetes-engine-setup . | |||
| endpoint string | успех | IP-адрес главного узла этого кластера. К этому узлу можно получить доступ из интернета по адресу https://username:password@endpoint/ См. свойство masterAuth этого ресурса для получения информации об имени пользователя и пароле. | |||
| expireTime string | успех | Время автоматического удаления кластера в формате RFC3339. | |||
| initialClusterVersion string | успех | Версия программного обеспечения главного узла и kubelet, использованные в кластере при его первоначальном создании. Версию можно обновлять со временем. | |||
| initialNodeCount integer | успех | Количество узлов для создания в этом кластере. Необходимо убедиться, что ваш квота ресурсов Compute Engine достаточна для этого числа экземпляров. Также необходимо иметь доступную квоту на брандмауэр и маршруты. Для запросов это поле следует использовать только вместо объекта «nodePool», так как эта настройка (вместе с «nodeConfig») будет использована для создания объекта «NodePool» с автоматически сгенерированным именем. Не используйте это и nodePool одновременно. Это поле устарело. Пожалуйста, используйте nodePool.initial_node_count вместо него. | |||
| ipAllocationPolicy complex | успех | Настройка управления распределением IP-адресов в кластере. | |||
| clusterIpv4CidrBlock string | успех | Диапазон IP-адресов для pod кластера. Если это поле установлено, то cluster.cluster_ipv4_cidr необходимо оставить пустым. Это поле применимо только в случае, если useIpAliases имеет значение true. Установите пустым, чтобы выбрать диапазон со стандартным размером. Установите в /маска (например, /14), чтобы выбрать диапазон с определённой маской. | |||
| clusterSecondaryRangeName string | успех | Имя вторичного диапазона, который будет использоваться для блока CIDR кластера. Вторичный диапазон будет использован для IP-адресов pod. Это должен быть существующий вторичный диапазон, связанный с подсетью кластера. | |||
| createSubnetwork boolean | успех | Будет ли автоматически создана новая подсеть для кластера. | |||
| nodeIpv4CidrBlock string | успех | Диапазон IP-адресов экземпляров в этом кластере. Это применимо только если createSubnetwork имеет значение true. Установите пустым, чтобы выбрать диапазон со стандартным размером. Установите в /маска (например, /14), чтобы выбрать диапазон с определённой маской. | |||
| servicesIpv4CidrBlock string | success | Диапазон IP-адресов сервисов в этом кластере. Если пусто, будет выбран диапазон с размерами по умолчанию. Это поле применимо только при useIpAliases = true. Установите в пустое значение, чтобы выбрать диапазон с размерами по умолчанию. Установите в /netmask (например, /14), чтобы выбрать диапазон с заданной маской сети. | |||
| servicesSecondaryRangeName string | success | Имя вторичного диапазона, используемого в качестве блока CIDR для сервисов. Вторичный диапазон будет использоваться для ClusterIPs сервисов. Это должен быть существующий вторичный диапазон, связанный с подсетью кластера. | |||
| subnetworkName string | success | Пользовательское имя подсети, которое будет использоваться, если createSubnetwork = true. Если это поле пустое, для новой подсети будет выбрано автоматическое имя. | |||
| tpuIpv4CidrBlock string | success | Диапазон IP-адресов Cloud TPUs в этом кластере. Если не указано, будет выбран диапазон с размерами по умолчанию. Это поле применимо только при useIpAliases = true. Если не указано, диапазон будет использовать размер по умолчанию. Установите в /netmask (например, /14), чтобы выбрать диапазон с заданной маской сети. | |||
| useIpAliases boolean | success | Использовать ли алиасы IP-адресов для IP-адресов pod в кластере. | |||
| labelFingerprint string | success | Отпечаток метки набора меток для данного кластера. | |||
| legacyAbac complex | success | Конфигурация для режима авторизации legacy ABAC. | |||
| enabled boolean | success | Включен ли ABAC-авторизатор для данного кластера. При включении, идентификаторам в системе, включая сервисные учетные записи, узлы и контроллеры, будут статически предоставлены разрешения сверх тех, которые предоставляются конфигурацией RBAC или IAM. | |||
| location string | success | Расположение, где развернут кластер. | |||
| locations list / elements=string | success | Список зон Google Compute Engine, в которых должны располагаться узлы кластера. | |||
| loggingService string | success | Служба ведения журналов, которую должен использовать кластер для записи журналов. Доступные варианты: logging.googleapis.com - служба Google Cloud Logging. none - журналы из кластера не будут экспортироваться. Если оставлено пустым, будет использоваться logging.googleapis.com. | |||
| masterAuth complex | success | Информация об аутентификации для доступа к мастер-точке. | |||
| clientCertificate string | success | Публичный сертификат в формате Base64, используемый клиентами для аутентификации на конечной точке кластера. | |||
| clientCertificateConfig complex | success | Конфигурация для аутентификации с помощью клиентского сертификата в кластере. Для кластеров до версии v1.12, если конфигурация не указана, выдается клиентский сертификат. | |||
| issueClientCertificate boolean | success | Выдать клиентский сертификат. | |||
| clientKey string | success | Приватный ключ в формате Base64, используемый клиентами для аутентификации на конечной точке кластера. | |||
| clusterCaCertificate string | success | Публичный сертификат в формате Base64, являющийся корневым сертификатом доверия для кластера. | |||
| password string | success | Пароль, используемый для HTTP-аутентификации по принципу «имя пользователя/пароль» на мастер-точке. Поскольку мастер-точка доступна через Интернет, необходимо создать надежный пароль, состоящий как минимум из 16 символов. | |||
| username string | success | Имя пользователя, используемое для HTTP-аутентификации по принципу «имя пользователя/пароль» на мастер-точке. | |||
| masterAuthorizedNetworksConfig complex | success | Конфигурация для управления выделением IP-адресов в кластере. | |||
| cidrBlocks complex | success | Определение до 50 внешних сетей, которые могут получить доступ к мастер-компоненту Kubernetes через HTTPS. | |||
| cidrBlock string | success | Блок, заданный в нотации CIDR. | |||
| displayName string | success | Необязательное поле, используемое для идентификации блоков CIDR. | |||
| enabled boolean | success | Включены ли авторизованные сети мастер-компонента. | |||
| monitoringService string | success | Служба мониторинга, которую должен использовать кластер для записи метрик. Доступные варианты: monitoring.googleapis.com - служба Google Cloud Monitoring. none - метрики из кластера не будут экспортироваться. Если оставлено пустым, будет использоваться monitoring.googleapis.com. | |||
| name string | success | Имя кластера. Имя должно быть уникальным в данном проекте и расположении, и может содержать до 40 символов. Допускаются только строчные буквы, цифры и дефисы. Должно начинаться с буквы. Должно заканчиваться цифрой или буквой. | |||
| network string | success | Имя сети Google Compute Engine, к которой подключен кластер. Если не указано, будет использоваться сеть по умолчанию. | |||
| networkConfig complex | success | Конфигурации сети. | |||
| defaultSnatStatus boolean | success | Отключает ли кластер правила sNAT по умолчанию для узлов. Правила sNAT по умолчанию для узлов будут отключены, если defaultSnatStatus отключен. | |||
| enableIntraNodeVisibility boolean | success | Включена ли видимость внутри узлов для данного кластера. Это делает трафик pod-to-pod на одном узле видимым для сети VPC. | |||
| network string | success | Относительное имя сети Google Compute Engine, к которой подключен кластер. Пример: projects/my-project/global/networks/my-network. | |||
| subnetwork string | success | Относительное имя подсети Google Compute Engine, к которой подключен кластер. Пример: projects/my-project/regions/us-central1/subnetworks/my-subnet. | |||
| networkPolicy complex | success | Настройки конфигурации для функции NetworkPolicy. | |||
| enabled boolean | success | Включена ли политика сети в кластере. | |||
| provider string | success | Выбранный поставщик политики сети. | |||
| nodeConfig complex | success | Параметры, используемые при создании узлов кластера. Для запросов этот параметр следует использовать только вместо объекта "nodePool", так как эта конфигурация (вместе с "initialNodeCount") будет использоваться для создания объекта "NodePool" с автоматически сгенерированным именем. Не используйте одновременно этот параметр и nodePool. Для ответов этот параметр будет заполнен конфигурацией узла первого пула узлов. Если не указано иное, используются значения по умолчанию. | |||
| accelerators complex | success | Список аппаратных ускорителей, которые должны быть подключены к каждому узлу. Подробнее об использовании графических процессоров см. на странице https://cloud.google.com/compute/docs/gpus. | |||
| acceleratorCount string | 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": "ключ", "mass": "1.3кг", "count": "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": "ключ", "mass": "1.3кг", "count": "3" }. | |||
| minCpuPlatform string | success | Минимальная платформа процессора, используемая этим экземпляром. Экземпляр может быть запланирован на указанной или более новой платформе процессора. | |||
| oauthScopes list / elements=string | success | Набор областей применения Google API, которые должны быть доступны на всех виртуальных машинах узлов в рамках учетной записи "default". Следующие области применения рекомендуются, но не являются обязательными и по умолчанию не включены: 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, которая должна использоваться виртуальными машинами узлов. Если учетная запись службы не указана, используется учетная запись службы "default". | |||
| shieldedInstanceConfig complex | success | Параметры защищенного экземпляра. | |||
| enableIntegrityMonitoring boolean | success | Определяет, включено ли мониторинг целостности для экземпляра. Включает мониторинг и аутентификацию целостности загрузки экземпляра. Аутентификация выполняется по отношению к эталону политики целостности. Этот эталон изначально определяется из образ файла загрузки, который неявно доверен, когда экземпляр создается. | |||
| enableSecureBoot boolean | success | Определяет, включен ли на экземпляре Secure Boot. Secure Boot помогает гарантировать, что система запускает только подлинное программное обеспечение, проверяя цифровую подпись всех компонентов загрузки и останавливая процесс загрузки, если проверка подписи завершается неудачно. | |||
| tags list / elements=string | success | Список меток экземпляров, применяемых ко всем узлам. Метки используются для определения допустимых источников или целей сетевых брандмауэров и указываются клиентом во время создания кластера или пула узлов. Каждая метка в списке должна соответствовать RFC1035. | |||
| taints complex | success | Список меток Kubernetes, которые будут применены к каждому узлу. Дополнительную информацию, включая использование и допустимые значения, см. на странице: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ . | |||
| effect string | success | Эффект метки. | |||
| key string | success | Ключ метки. | |||
| value string | success | Значение метки. | |||
| nodeIpv4CidrSize integer | success | Размер адресного пространства на каждом узле для размещения контейнеров. Этот параметр выделяется из диапазона container_ipv4_cidr. | |||
| nodePools complex | success | Пулы узлов, принадлежащие этому кластеру. | |||
| name string | success | Имя пула узлов. | |||
| privateClusterConfig complex | success | Конфигурация для частного кластера. | |||
| enablePrivateEndpoint boolean | success | Используется ли внутренний IP-адрес мастера в качестве конечной точки кластера. | |||
| enablePrivateNodes boolean | success | Являются ли узлы только с внутренними IP-адресами. Если включено, всем узлам присваиваются только частные адреса RFC 1918, и они взаимодействуют с мастером через частную сеть. | |||
| masterIpv4CidrBlock string | success | Диапазон IP-адресов в формате CIDR, используемый для размещённой мастер-сети. Этот диапазон будет использован для назначения внутренних IP-адресов мастеру или группе мастеров, а также VIP ILB. Этот диапазон не должен перекрываться с другими диапазонами, используемыми в сети кластера. | |||
| privateEndpoint string | success | Внутренний IP-адрес конечной точки мастера данного кластера. | |||
| publicEndpoint string | success | Внешний IP-адрес конечной точки мастера данного кластера. | |||
| releaseChannel complex | success | ReleaseChannel указывает, к какому релизному каналу подключён кластер. Релизные каналы упорядочены по степени риска и частоте обновлений. | |||
| channel string | success | Релизный канал, к которому подключен кластер. | |||
| resourceLabels dictionary | success | Метки ресурсов кластера для аннотирования связанных ресурсов Google Compute Engine. | |||
| servicesIpv4Cidr string | success | Диапазон IP-адресов Kubernetes сервисов в данном кластере в формате CIDR (например, 1.2.3.4/29). Адреса сервисов обычно находятся в последнем /16 из диапазона CIDR контейнеров. | |||
| shieldedNodes complex | success | Настройка защищённых узлов. | |||
| enabled boolean | success | Включены ли функции защищённых узлов на всех узлах данного кластера. | |||
| status string | success | Текущий статус данного кластера. | |||
| statusMessage string | success | Дополнительная информация о текущем статусе кластера, если доступна. | |||
| subnetwork string | success | Имя подсети Google Compute Engine, к которой подключен кластер. | |||
| tpuIpv4CidrBlock string | success | Диапазон IP-адресов Cloud TPUs в данном кластере в формате CIDR (например, `1.2.3.4/29`). | |||
Авторы
- 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_cluster_info_module.html