aks

Azure Kubernetes Service

Роль, помогающая создать Kubernetes Service в Azure.

Требования

Роль использует модули Ansible для Azure, минимально поддерживаемая версия — 2.8.0.

Начните работу с модулями Ansible для Azure на Microsoft Docs

Переменные роли

переменная Обязательная Значение по умолчанию описание
name да Имя ресурса Kubernetes Service
resource_group да Группа ресурсов для ресурса
aad_client_app_id ID клиентского приложения Azure Active Directory типа Native.
Это приложение предназначено для входа пользователя через kubectl.
aad_server_app_id ID серверного приложения Azure Active Directory типа Web app/API.
Это приложение представляет собой apiserver управляемого кластера (серверное приложение).
aad_server_app_secret Секрет серверного приложения Azure Active Directory.
aad_tenant_id ID арендатора Azure Active Directory.
admin_username azureuser Учетная запись пользователя, создаваемая на ВМ-узлах для доступа по SSH.
service_principal Загружается из ansible-playbook, переменная окружения AZURE_CLIENT_ID или ~/.azure/credentials Принципал службы, используемый для аутентификации в API Azure.
client_secret Загружается из ansible-playbook, переменная окружения AZURE_SECRET или ~/.azure/credentials Секрет, связанный с принципалом службы.
dns_prefix То же, что name Префикс для создаваемых имен хостов.
dns_service_ip IP-адрес, назначенный службе DNS Kubernetes.
Этот адрес должен находиться в диапазоне адресов службы Kubernetes, указанном в service_cidr.
docker_bridge_cidr Конкретный IP-адрес и маска сети для Docker bridge, с использованием стандартной нотации CIDR.
Этот адрес не должен находиться в любых диапазонах подсети или диапазоне адресов службы Kubernetes.
enable_rbac True Включить управление доступом на основе ролей Kubernetes.
http_application_routing False Включить дополнение http_application_routing. Настроить ingress с автоматическим созданием публичного DNS-имени.
kubernetes_version Первое значение из модуля azure_rm_aks_version Версия Kubernetes, используемая для создания кластера.
location eastus Регион ресурса Kubernetes Service, будет использовано местоположение resource_group, если не указано.
Местоположение обязательно, если группа ресурсов не существует
max_pods 110 Максимальное количество подов, которые можно развернуть на узле.
monitoring False Включить дополнение monitoring. Включить мониторинг Log Analytics.
network_plugin Выбор:
 - kubenet
 - azure
Плагин сети Kubernetes для использования.
network_policy Политика сети Kubernetes для использования. Используется вместе с "azure" плагином сети. Укажите azure для менеджера политики сети Azure и calico для контроллера политики сети calico.
node_count 3 Количество узлов в пуле узлов Kubernetes.
node_osdisk_size_gb 30 Размер в ГБ диска операционной системы для каждого узла в пуле узлов.
node_vm_size Standard_DS1_v2 Размер виртуальных машин, которые будут созданы в качестве узлов Kubernetes.
nodepool_name nodepool1 Имя пула узлов, до 12 буквенно-цифровых символов.
os_type Linux
pod_cidr Диапазон IP-адресов в нотации CIDR, из которого будут назначаться IP-поды, когда используется kubenet.
Этот диапазон не должен пересекаться с любыми диапазонами IP подсетей.
service_cidr Диапазон IP-адресов в нотации CIDR, из которого будут назначаться IP-кластеры служб.
Этот диапазон не должен пересекаться с любыми диапазонами IP подсетей.
storage_profile ManagedDisks
ssh_key Загружается из ~/.ssh/id_rsa.pub Путь к публичному ключу или содержимому ключа, который будет установлен на ВМ-узлах для доступа по SSH.
virtual_node False Включить дополнение virtual_node. Быстрое развертывание подов с помощью Azure Container Instance.
virtual_node_subnet_id Создать новый ресурс, когда virtual_node равен True.
vnet_subnet_id Создать новый ресурс, когда virtual_node равен True или определен network_plugin. ID подсети в существующей VNet, в которую будет развернут кластер.
workspace_resource_id Использовать первый рабочий пространственный лог аналитики в resource_group, или создать новый ресурс, когда monitoring равно True. ID ресурса существующего рабочего пространства лог аналитики для хранения данных мониторинга.

Пример плейбука

Установите роль с помощью:

ansible-galaxy install azure.aks

Используйте роль в плейбуке для создания стандартного AKS:

- hosts: localhost
  tasks:
      - include_role:
           name: azure.aks
        vars:
           name: akscluster
           resource_group: aksroletest

Создайте AKS с мониторингом:

- hosts: localhost
  tasks:
      - include_role:
           name: azure.aks
        vars:
           monitoring: yes
           name: akscluster
           resource_group: aksroletest

Лицензия

MIT

О проекте

Manage Azure Kubernetes Service

Установить
ansible-galaxy install Azure/ansible-aks
Лицензия
mit
Загрузки
368
Владелец
APIs, SDKs and open source projects from Microsoft Azure