Spec-Zone.ru › Chef 18

Ресурс google_container_regional_cluster

[править на GitHub]

Синтаксис

Используется google_container_regional_cluster для проверки ресурса Google RegionalCluster.

Примеры

describe google_container_regional_cluster(project: 'chef-gcp-inspec', location: 'europe-west2', name: 'inspec-gcp-regional-cluster') do
  it { should exist }
  its('initial_node_count') { should eq '1'}
  its('location') { should eq 'europe-west2'}
end

describe google_container_regional_cluster(project: 'chef-gcp-inspec', location: 'europe-west2', name: 'nonexistent') do
  it { should_not exist }
end

Свойства

Свойства, доступные для ресурса google_container_regional_cluster:

name
Имя этого кластера. Имя должно быть уникальным в рамках этого проекта и расположения, и может содержать до 40 символов. Допускаются только строчные буквы, цифры и дефисы. Имя должно начинаться с буквы и заканчиваться цифрой или буквой.
description
Необязательное описание этого кластера.
initial_node_count
Количество узлов, которые нужно создать в этом кластере. Вы должны убедиться, что квота ресурсов Compute Engine достаточна для этого количества экземпляров. Вы также должны иметь доступные квоты на брандмауэр и маршрутизацию. Для запросов это поле должно использоваться только вместо объекта «nodePool», так как эта конфигурация (вместе с «nodeConfig») будет использоваться для создания объекта «NodePool» с автоматически сгенерированным именем. Не используйте это поле и nodePool одновременно. Это поле устарело. Пожалуйста, используйте вместо него nodePool.initial_node_count.
node_config
Параметры, используемые при создании узлов кластера. Для запросов это поле должно использоваться только вместо объекта «nodePool», так как эта конфигурация (вместе с «initialNodeCount») будет использоваться для создания объекта «NodePool» с автоматически сгенерированным именем. Не используйте это поле и nodePool одновременно. Для ответов это поле будет заполнено конфигурацией узлов первого пула узлов. Если не указано, используются значения по умолчанию.
machine_type
Имя типа виртуальной машины Google Compute Engine (например, n1-standard-1). Если не указано, используется тип виртуальной машины по умолчанию n1-standard-1.
disk_size_gb
Размер диска, подключенного к каждому узлу, указанный в ГБ. Минимальный размер диска составляет 10 ГБ. Если не указано, используется размер диска по умолчанию 100 ГБ.
oauth_scopes
Набор областей доступа 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, в этом случае будут добавлены необходимые области доступа.
service_account
Учетная запись службы Google Cloud Platform, которая будет использоваться виртуальными машинами узлов. Если учетная запись службы не указана, используется учетная запись службы «default».
metadata
Ключ/значение метаданных, назначенные экземплярам в кластере. Ключи должны соответствовать регулярному выражению [a-zA-Z0-9-_]+ и иметь длину менее 128 байт. Они отображаются как часть URL-адреса в сервере метаданных. Кроме того, для избежания неоднозначности ключи не должны конфликтовать с другими ключами метаданных для проекта или совпадать с четырьмя зарезервированными ключами: «instance-template», «kube-env», «startup-script» и «user-data». Значения — это строки произвольного формата, и они имеют смысл только в интерпретации изображения, выполняемого в экземпляре. Единственное ограничение заключается в том, что размер каждого значения должен быть меньше или равен 32 КБ. Общий размер всех ключей и значений должен быть меньше 512 КБ. Объект, содержащий список пар «ключ»: «значение». Пример: { «name»: «ключ», «mass»: «1.3кг», «count»: «3» }
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.
tags
Список меток экземпляра, применяемых ко всем узлам. Метки используются для идентификации допустимых источников или целей для сетевых брандмауэров и задаются клиентом во время создания кластера или пула узлов. Каждая метка в списке должна соответствовать RFC1035.
preemptible
Создаются ли узлы как преемственные виртуальные машины. Дополнительную информацию о преемственных виртуальных машинах см. на странице: https://cloud.google.com/compute/docs/instances/preemptible.
accelerators
Список аппаратных ускорителей, которые нужно подключить к каждому узлу. Дополнительную информацию об ускорителях графических процессоров см. на странице https://cloud.google.com/compute/docs/gpus.
accelerator_count
Количество карт ускорителей, доступных экземпляру.
accelerator_type
Идентификатор ресурса типа ускорителя.
disk_type
Тип диска, подключаемого к каждому узлу (например, «pd-standard» или «pd-ssd»). Если не указано, используется тип диска по умолчанию «pd-standard».
min_cpu_platform
Минимальная платформа процессора, которая должна использоваться этим экземпляром. Экземпляр может быть запланирован на указанную или более новую платформу процессора.
taints
Список меток Kubernetes, применяемых к каждому узлу. Дополнительную информацию, включая использование и допустимые значения, см. на странице: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
key
Ключ метки
value
Значение метки
effect
Эффект метки
master_auth
Информация об аутентификации для доступа к конечному пункту назначения мастера.
username
Имя пользователя, которое нужно использовать для аутентификации по протоколу HTTP Basic на конечном пункте назначения мастера.
password
Пароль, который нужно использовать для аутентификации по протоколу HTTP Basic на конечном пункте назначения мастера. Так как конечный пункт назначения мастера доступен в Интернете, вы должны создать надежный пароль с длиной не менее 16 символов.
client_certificate_config
Настройка аутентификации по клиенту с сертификатом в кластере. Для кластеров до версии 1.12, если конфигурация не указана, выдан сертификат клиента.
issue_client_certificate
Выдать сертификат клиента.
cluster_ca_certificate
Базово-кодированный открытый сертификат, являющийся корнем доверия для кластера.
client_certificate
Базово-кодированный открытый сертификат, используемый клиентами для аутентификации в конечном пункте назначения кластера.
client_key
Базово-кодированный закрытый ключ, используемый клиентами для аутентификации в конечном пункте назначения кластера.
logging_service
Служба протоколирования, которую кластер должен использовать для записи журналов. Доступные варианты: logging.googleapis.com — служба Google Cloud Logging. none — журналы не будут экспортированы из кластера. Если оставлено пустым, будет использоваться logging.googleapis.com.
monitoring_service
Служба мониторинга, которую кластер должен использовать для записи метрик. Доступные варианты: monitoring.googleapis.com — служба Google Cloud Monitoring. none — метрики не будут экспортированы из кластера. Если оставлено пустым, будет использоваться monitoring.googleapis.com.
network
Имя сети Google Compute Engine, к которой подключен кластер. Если не указано, будет использоваться сеть по умолчанию.
private_cluster_config
Конфигурация для частного кластера.
enable_private_nodes
Узлы имеют только внутренние IP-адреса. Если включено, все узлы получают только частные адреса RFC 1918 и взаимодействуют с мастером через частную сеть.
enable_private_endpoint
Используется ли внутренний IP-адрес мастера как конечный пункт назначения кластера.
master_ipv4_cidr_block
Диапазон IP-адресов в нотации CIDR для использования в размещенной сети мастера. Этот диапазон будет использоваться для назначения внутренних IP-адресов мастеру или группе мастеров, а также для VIP-адреса ILB. Этот диапазон не должен пересекаться с другими диапазонами, используемыми в сети кластера.
private_endpoint
Внутренний IP-адрес конечного пункта назначения мастера этого кластера.
public_endpoint
Внешний IP-адрес конечного пункта назначения мастера этого кластера.
cluster_ipv4_cidr
Диапазон IP-адресов контейнерных под в этом кластере в нотации CIDR (например, 10.96.0.0/14). Оставьте пустым, чтобы автоматически выбрать один, или укажите блок /14 в 10.0.0.0/8.
enable_tpu
(Необязательно) Включить ресурсы Cloud TPU в этом кластере. См. официальную документацию — https://cloud.google.com/tpu/docs/kubernetes-engine-setup
tpu_ipv4_cidr_block
Диапазон IP-адресов Cloud TPUs в этом кластере в нотации CIDR (например, 1.2.3.4/29).
addons_config
Конфигурации для различных плагинов, доступных для запуска в кластере.
http_load_balancing
Настройка плагина контроллера балансировки нагрузки HTTP (L7), который упрощает настройку балансировщиков нагрузки HTTP для служб в кластере.
disabled
Включен ли контроллер балансировки нагрузки HTTP в кластере. При включении он запускает небольшой pod в кластере, который управляет балансировщиками нагрузки.
horizontal_pod_autoscaling
Настройка функции горизонтального масштабирования под, которая увеличивает или уменьшает количество реплицированных под, имеющихся у контроллера репликации, на основе использования ресурсов существующих под.
disabled
Включена ли функция горизонтального масштабирования под в кластере. При включении она гарантирует, что в кластере запущен pod Heapster, который также используется службой Google Cloud Monitoring.
kubernetes_dashboard
Настройка Kubernetes Dashboard. Этот плагин устарел и будет отключен в версии 1.15. Рекомендуется использовать консоль Google Cloud для управления и мониторинга ваших Kubernetes-кластеров, рабочих нагрузок и приложений.
disabled
Включен ли Kubernetes Dashboard для этого кластера.
network_policy_config
Настройка NetworkPolicy. Этот параметр отслеживает только включен ли плагин на Master, а не включена ли политика сети для узлов.
disabled
Включена ли политика NetworkPolicy для данного кластера.
subnetwork
Имя подсети Google Compute Engine, к которой подключен кластер.
locations
Список зон Google Compute Engine, в которых должны находиться узлы кластера.
resource_labels
Метки ресурсов для кластера, используемые для аннотирования связанных ресурсов Google Compute Engine.
label_fingerprint
Отпечаток набора меток для данного кластера.
legacy_abac
Настройка режима авторизации ABAC legacy.
enabled
Включен ли ABAC-авторизатор для данного кластера. При включении, идентификаторам в системе, включая учетные записи сервисов, узлы и контроллеры, будут статически предоставлены разрешения, которые выходят за рамки тех, которые предоставляются конфигурацией RBAC или IAM.
network_policy
Настройки для функции NetworkPolicy.
provider
Выбранный поставщик политики сети.
enabled
Включена ли политика сети в кластере.
default_max_pods_constraint
Установленное ограничение на максимальное количество поддонов, которые могут быть запущены одновременно на узле в пуле узлов данного кластера. Учитывается только если кластер создан с поддержкой IP Alias.
max_pods_per_node
Ограничение, применяемое к максимальному количеству поддонов на узел.
ip_allocation_policy
Настройка для управления выделением IP-адресов в кластере.
use_ip_aliases
Используются ли alias IP для IP-адресов поддонов в кластере.
create_subnetwork
Создается ли автоматически новая подсеть для кластера.
subnetwork_name
Пользовательское имя подсети, используемое, если createSubnetwork установлено в true. Если это поле пустое, то для новой подсети будет выбрано имя автоматически.
cluster_secondary_range_name
Имя вторичного диапазона, используемого для блока CIDR кластера. Вторичный диапазон будет использоваться для адресов IP поддонов. Он должен быть существующим вторичным диапазоном, связанным с подсетью кластера.
services_secondary_range_name
Имя вторичного диапазона, используемого в качестве блока CIDR для сервисов. Вторичный диапазон будет использоваться для адресов service ClusterIPs. Он должен быть существующим вторичным диапазоном, связанным с подсетью кластера.
cluster_ipv4_cidr_block
Диапазон IP-адресов для IP-адресов поддонов кластера. Если это поле задано, то cluster.cluster_ipv4_cidr должно быть пустым. Это поле применимо только при useIpAliases=true. Установите пустым, чтобы получить диапазон с размером по умолчанию. Установите /netmask (например, /14), чтобы получить диапазон с указанной маской сети.
node_ipv4_cidr_block
Диапазон IP-адресов IP-адресов экземпляров в этом кластере. Это применимо только если createSubnetwork=true. Установите пустым, чтобы получить диапазон с размером по умолчанию. Установите /netmask (например, /14), чтобы получить диапазон с указанной маской сети.
services_ipv4_cidr_block
Диапазон IP-адресов сервисов в этом кластере. Если пустое, диапазон будет автоматически выбран с размером по умолчанию. Это поле применимо только при useIpAliases=true. Установите пустым, чтобы получить диапазон с размером по умолчанию. Установите /netmask (например, /14), чтобы получить диапазон с указанной маской сети.
tpu_ipv4_cidr_block
Диапазон IP-адресов Cloud TPUs в этом кластере. Если не указано, диапазон будет автоматически выбран с размером по умолчанию. Это поле применимо только при useIpAliases=true. Если не указано, диапазон будет использовать размер по умолчанию. Установите /netmask (например, /14), чтобы получить диапазон с указанной маской сети.
endpoint
IP-адрес конечной точки мастера кластера. К конечной точке можно получить доступ из интернета по адресу https://имя_пользователя:пароль@конечная_точка/. См. свойство masterAuth этого ресурса для получения информации об имени пользователя и пароле.
initial_cluster_version
Версия программного обеспечения конечной точки мастера и kubelets, используемых в кластере при его первоначальном создании. Версия может быть обновлена со временем.
current_master_version
Текущая версия программного обеспечения конечной точки мастера.
current_node_version
Текущая версия программных компонентов узла. Если они в настоящее время находятся на нескольких версиях, потому что они находятся в процессе обновления, это отражает минимальную версию всех узлов.
create_time
Время создания кластера в формате RFC3339.
status
Текущий статус данного кластера.
status_message
Дополнительная информация о текущем состоянии кластера, если доступна.
node_ipv4_cidr_size
Размер адресного пространства на каждом узле для размещения контейнеров. Он выделяется из диапазона container_ipv4_cidr.
services_ipv4_cidr
Диапазон IP-адресов Kubernetes-сервисов в данном кластере в формате CIDR (например, 1.2.3.4/29). Адреса сервисов обычно располагаются в последней /16 из диапазона контейнеров.
current_node_count
Количество узлов в кластере.
expire_time
Время автоматического удаления кластера в формате RFC3339.
conditions
Условий, которые привели к текущему состоянию кластера.
code
Представление условия в удобном для машинного чтения формате.
message
Представление условия в удобном для человека формате.
master_authorized_networks_config
Настройка для управления выделением IP-адресов в кластере.
enabled
Включена ли авторизация master-сети.
cidr_blocks
Определите до 50 внешних сетей, которые могут получить доступ к Kubernetes-мастеру через HTTPS.
display_name
Необязательное поле, используемое для идентификации блоков CIDR.
cidr_block
Блок, указанный в формате CIDR.
location
Место развертывания кластера.

Разрешения GCP

Убедитесь, что API Kubernetes Engine включен для текущего проекта.

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/google_container_regional_cluster/

Spec-Zone.ru

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