azure.aks

Azure Kubernetes Service

Rola do tworzenia usługi Kubernetes w Azure.

Wymagania

Rola korzysta z modułów Azure Ansible, a minimalna wspierana wersja to 2.8.0.

Wprowadzenie do modułów Ansible dla Azure można znaleźć w Dokumentacji Microsoftu

Zmienne roli

zmienna Wymagana Wartość domyślna opis
name tak Nazwa zasobu usługi Kubernetes
resource_group tak Grupa zasobów dla zasobu
aad_client_app_id ID aplikacji klienckiej Azure Active Directory typu Native.
Aplikacja ta służy do logowania użytkowników przez kubectl.
aad_server_app_id ID aplikacji serwerowej Azure Active Directory typu Web app/API.
Aplikacja ta reprezentuje serwer API klastra.
aad_server_app_secret Sekret aplikacji serwerowej Azure Active Directory.
aad_tenant_id ID najemcy Azure Active Directory.
admin_username azureuser Konto użytkownika do utworzenia na maszynach wirtualnych w celu dostępu SSH.
service_principal Ładowane z ansible-playbook, zmienna środowiskowa AZURE_CLIENT_ID lub ~/.azure/credentials Użytkownik do uwierzytelnienia w interfejsach API Azure.
client_secret Ładowane z ansible-playbook, zmienna środowiskowa AZURE_SECRET lub ~/.azure/credentials Sekret związany z użytkownikiem.
dns_prefix Taka sama jak name Prefiks dla tworzonej nazwy hosta.
dns_service_ip Adres IP przypisany do usługi DNS Kubernetes.
Ten adres musi być w obrębie zakresu adresów usługi Kubernetes określonego przez service_cidr.
docker_bridge_cidr Konkretna adresacja IP i maska sieciowa dla mostka Dockera, używająca standardowej notacji CIDR.
Ten adres nie może znajdować się w żadnym zakresie IP podsieci ani w zakresie adresów usługi Kubernetes.
enable_rbac True Włącz kontrolę dostępu opartą na rolach Kubernetes.
http_application_routing False Włącz dodatek http_application_routing. Skonfiguruj ingress z automatycznym tworzeniem publicznych nazw DNS.
kubernetes_version Pierwsza wartość z modułu azure_rm_aks_version Wersja Kubernetes do użycia przy tworzeniu klastra.
location eastus Region zasobu usługi Kubernetes, użyje lokalizacji grupy zasobów, jeśli nie jest określona.
Lokalizacja jest wymagana, jeśli grupa zasobów nie istnieje
max_pods 110 Maksymalna liczba podów, które można wdrożyć na węźle.
monitoring False Włącz dodatek monitoring. Włącz monitorowanie za pomocą Log Analytics.
network_plugin Opcje:
 - kubenet
 - azure
Wtyczka sieciowa Kubernetes do użycia.
network_policy Polityka sieciowa Kubernetes do użycia. Używaj razem z "azure" jako wtyczką sieciową. Określ azure dla menedżera polityki sieciowej Azure i calico dla kontrolera polityki sieciowej calico.
node_count 3 Liczba węzłów w puli węzłów Kubernetes.
node_osdisk_size_gb 30 Rozmiar dysku systemowego w GB dla każdego węzła w puli węzłów.
node_vm_size Standard_DS1_v2 Rozmiar maszyn wirtualnych tworzonych jako węzły Kubernetes.
nodepool_name nodepool1 Nazwa puli węzłów, do 12 znaków alfanumerycznych.
os_type Linux
pod_cidr Zakres IP w notacji CIDR, z którego będą przypisywane adresy IP dla podów, gdy używany jest kubenet.
Ten zakres nie może pokrywać się z żadnym zakresem IP podsieci.
service_cidr Zakres IP w notacji CIDR, z którego będą przypisywane adresy IP klastra usługi.
Ten zakres nie może pokrywać się z żadnym zakresem IP podsieci.
storage_profile ManagedDisks
ssh_key Ładowane z ~/.ssh/id_rsa.pub Ścieżka lub zawartość klucza publicznego do zainstalowania na maszynach wirtualnych dla dostępu SSH.
virtual_node False Włącz dodatek virtual_node. Szybkie wdrażanie podów za pomocą Azure Container Instance.
virtual_node_subnet_id Utwórz nowy zasób, gdy virtual_node jest True.
vnet_subnet_id Utwórz nowy zasób, gdy virtual_node jest True lub zdefiniowana jest network_plugin. ID podsieci w istniejącej sieci VNet, do której wdrożony zostanie klaster.
workspace_resource_id Użyj pierwszego Workspace Log Analytics w resource_group lub utwórz nowy zasób, gdy monitoring jest True. ID zasobu istniejącego Workspace Log Analytics, który ma być używany do przechowywania danych monitorujących.

Przykład Playbooka

Zainstaluj rolę za pomocą:

ansible-galaxy install azure.aks

Użyj roli w playbooku, aby utworzyć domyślny AKS:

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

Utwórz AKS z monitoringiem:

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

Licencja

MIT

O projekcie

Manage Azure Kubernetes Service

Zainstaluj
ansible-galaxy install azure.aks
Licencja
mit
Pobrania
380
Właściciel
APIs, SDKs and open source projects from Microsoft Azure