Spec-Zone.ru › Chef 16

Ресурс google_container_node_pool

Синтаксис

Используется google_container_node_pool, чтобы проверить ресурс Google NodePool.

Ресурс бета-версии

Этот ресурс содержит доступные поля бета-версии. Для получения этих полей включите beta: true в конструктор для ресурса.

Примеры

describe google_container_node_pool(project: 'chef-gcp-inspec', location: 'europe-west2-a', cluster_name: 'gcp-inspec-kube-cluster', nodepool_name: 'inspec-gcp-regional-node-pool') do
  it { should exist }
  its('initial_node_count') { should eq '1'}
end

describe google_container_node_pool(project: 'chef-gcp-inspec', location: 'europe-west2-a', cluster_name: 'gcp-inspec-kube-cluster', nodepool_name: 'nonexistent') do
  it { should_not exist }
end

Проверка, что пул узлов GCP контейнера находится в определенном состоянии, например, “RUNNING”

describe google_container_node_pool(project: 'chef-inspec-gcp', locations: 'europe-west2-a', cluster_name: 'inspec-gcp-kube-cluster', nodepool_name: 'inspec-gcp-kube-node-pool') do
  its('status') { should eq 'RUNNING' }
end

Проверка ожидаемого размера диска пула узлов GCP контейнера в ГБ

describe google_container_node_pool(project: 'chef-inspec-gcp', locations: 'europe-west2-a', cluster_name: 'inspec-gcp-kube-cluster', nodepool_name: 'inspec-gcp-kube-node-pool') do
  its('node_config.disk_size_gb'){should eq 100}
end

Проверка ожидаемого типа машины пула узлов GCP контейнера

describe google_container_node_pool(project: 'chef-inspec-gcp', locations: 'europe-west2-a', cluster_name: 'inspec-gcp-kube-cluster', nodepool_name: 'inspec-gcp-kube-node-pool') do
  its('node_config.machine_type'){should eq "n1-standard-1"}
end

Проверка ожидаемого типа образа узла пула узлов GCP контейнера

describe google_container_node_pool(project: 'chef-inspec-gcp', locations: 'europe-west2-a', cluster_name: 'inspec-gcp-kube-cluster', nodepool_name: 'inspec-gcp-kube-node-pool') do
  its('node_config.image_type'){should eq "COS"}
end

Проверка ожидаемого начального количества узлов пула узлов GCP контейнера

describe google_container_node_pool(project: 'chef-inspec-gcp', locations: 'europe-west2-a', cluster_name: 'inspec-gcp-kube-cluster', nodepool_name: 'inspec-gcp-kube-node-pool') do
  its('initial_node_count'){should eq 3}
end

Свойства

Свойства, к которым можно получить доступ из ресурса google_container_node_pool:

name
Имя пула узлов.
config
Конфигурация узлов пула.
machine_type
Имя типа машины Google Compute Engine (например, n1-standard-1). Если не указано, используется тип машины по умолчанию n1-standard-1.
disk_size_gb
Размер диска, подключенного к каждому узлу, указанный в ГБ. Минимальный разрешенный размер диска составляет 10 ГБ. Если не указано, размер диска по умолчанию составляет 100 ГБ.
oauth_scopes
Набор областей 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, в этом случае будут добавлены необходимые области.
service_account
Учетная запись службы Google Cloud Platform, которая должна использоваться виртуальными машинами узлов. Если учетная запись службы не указана, используется учетная запись службы «по умолчанию».
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
Список аппаратных ускорителей, которые следует подключить к каждому узлу
accelerator_count
Количество карт ускорителей, доступных экземпляру.
accelerator_type
Имя ресурса типа ускорителя.
disk_type
Тип диска, подключаемого к каждому узлу (например, «pd-standard» или «pd-ssd»). Если не указано, тип диска по умолчанию — «pd-standard».
min_cpu_platform
Минимальная платформа процессора, которая должна использоваться этим экземпляром. Экземпляр может быть запланирован на указанную или более новую платформу процессора.
taints
Список пометок Kubernetes, которые следует применить к каждому узлу.
key
Ключ для метки.
value
Значение метки.
effect
Эффект метки.
initial_node_count
Начальное количество узлов для пула. Необходимо убедиться, что квота ресурсов Compute Engine достаточна для этого количества экземпляров. Также должны быть доступны квота брандмауэра и маршрутизации.
status
Состояние узлов в этом экземпляре пула.
status_message
Дополнительная информация о текущем состоянии этого экземпляра пула узлов.
version
Версия Kubernetes этого узла.
autoscaling
Конфигурация автоматического масштабирования для этого пула узлов. Автоматическое масштабирование включено только в том случае, если присутствует допустимая конфигурация.
enabled
Включено ли автоматическое масштабирование для этого пула узлов.
min_node_count
Минимальное количество узлов в пуле узлов. Должно быть >= 1 и <= maxNodeCount.
max_node_count
Максимальное количество узлов в пуле узлов. Должно быть >= minNodeCount. Должно быть достаточно квот для увеличения размера кластера.
management
Конфигурация управления для этого пула узлов.
auto_upgrade
Флаг, указывающий, включен ли автоматический апгрейд узлов для пула узлов. При включении автоматический апгрейд узлов помогает поддерживать узлы в вашем пуле узлов в актуальном состоянии с последней релизной версией Kubernetes.
auto_repair
Флаг, указывающий, включен ли автоматический ремонт узлов для пула узлов. При включении узлы в этом пуле узлов будут отслеживаться, и если они слишком много раз не пройдут проверки состояния, будет запущена автоматическая процедура ремонта.
upgrade_options
Устанавливает рычаги автоматического обновления для пула узлов.
auto_upgrade_start_time
Это поле устанавливается при начале апгрейда с приблизительным начальным временем апгрейда в формате RFC3339.
description
Это поле устанавливается при начале апгрейда с описанием апгрейда.
max_pods_constraint
Ограничение максимального количества поддосок, которые могут выполняться одновременно на узле в пуле узлов.
max_pods_per_node
Ограничение, накладываемое на максимальное количество поддосок на узел.
conditions
Условия, которые привели к текущему состоянию пула узлов.
code
Представление состояния для машины.

Возможные значения:

  • UNKNOWN
  • GCE_STOCKOUT
  • GKE_SERVICE_ACCOUNT_DELETED
  • GCE_QUOTA_EXCEEDED
  • SET_BY_OPERATOR
pod_ipv4_cidr_size
Размер блока CIDR поддосок на узел в этом пуле узлов.
cluster
Кластер, к которому принадлежит этот пул узлов.
location
Местоположение, где развернут пул узлов.

Разрешения GCP

Убедитесь, что для текущего проекта включен API Kubernetes Engine по адресу https://console.cloud.google.com/apis/library/container.googleapis.com/.

© 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_node_pool/

Spec-Zone.ru

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