azure.aks

Azure Kubernetes Service

Eine Rolle, die hilft, einen Kubernetes Service in Azure zu erstellen.

Anforderungen

Die Rolle verwendet Ansible Azure-Module, die minimal unterstützte Version ist 2.8.0.

Einstieg in Ansible Azure-Module mit Microsoft Docs

Rollenvariablen

Variable Erforderlich Standardwert Beschreibung
name ja Name der Kubernetes-Service-Ressource
resource_group ja Ressourcengruppe der Ressource
aad_client_app_id Die ID einer Azure Active Directory-Clientanwendung vom Typ Native.
Diese Anwendung dient der Benutzeranmeldung über kubectl.
aad_server_app_id Die ID einer Azure Active Directory-Serveranwendung vom Typ Web app/API.
Diese Anwendung repräsentiert den API-Server des verwalteten Clusters (Serveranwendung).
aad_server_app_secret Das Geheimnis einer Azure Active Directory-Serveranwendung.
aad_tenant_id Die ID eines Azure Active Directory-Mandanten.
admin_username azureuser Benutzerkonto, das auf den Knoten-VMs für SSH-Zugriff erstellt wird.
service_principal Wird aus dem ansible-playbook, der Umgebungsvariable AZURE_CLIENT_ID oder ~/.azure/credentials geladen Dienstprinzipal, der zur Authentifizierung bei Azure-APIs verwendet wird.
client_secret Wird aus dem ansible-playbook, der Umgebungsvariable AZURE_SECRET oder ~/.azure/credentials geladen Geheimnis, das mit dem Dienstprinzipal verknüpft ist.
dns_prefix Der gleiche wie name Präfix für die erstellten Hostnamen.
dns_service_ip Eine IP-Adresse, die dem Kubernetes-DNS-Dienst zugewiesen ist.
Diese Adresse muss innerhalb des von service_cidr angegebenen Kubernetes-Dienstadressenbereichs liegen.
docker_bridge_cidr Eine bestimmte IP-Adresse und Netzmaske für das Docker-Bridge-Netzwerk, unter Verwendung der Standard-CIDR-Notation.
Diese Adresse darf nicht in einem der Subnetz-IP-Bereiche oder im Kubernetes-Dienstadressbereich liegen.
enable_rbac True Kubernetes-Rollenbasierte Zugriffskontrolle aktivieren.
http_application_routing False Das Add-On http_application_routing aktivieren. Ingress mit automatischer Erstellung öffentlicher DNS-Namen konfigurieren.
kubernetes_version Erster Wert aus azure_rm_aks_version Modul Version von Kubernetes, die zum Erstellen des Clusters verwendet werden soll.
location eastus Region der Kubernetes-Service-Ressource, verwendet die Lage der resource_group, wenn nicht angegeben.
Standort ist erforderlich, wenn die Ressourcengruppe nicht existiert
max_pods 110 Maximale Anzahl von Pods, die auf einem Knoten bereitgestellt werden können.
monitoring False Das Add-On monitoring aktivieren. Log Analytics-Überwachung aktivieren.
network_plugin Auswahl:
 - kubenet
 - azure
Das zu verwendende Kubernetes-Netzwerk-Plugin.
network_policy Die zu verwendende Kubernetes-Netzwerkrichtlinie. Zusammen mit dem "azure" Netzwerk-Plugin verwenden. azure für den Azure-Netzwerkrichtlinienmanager und calico für den Calico-Netzwerkrichtliniencontroller angeben.
node_count 3 Anzahl der Knoten im Kubernetes-Knotenpool.
node_osdisk_size_gb 30 Größe in GB der OS-Disk für jeden Knoten im Knotenpool.
node_vm_size Standard_DS1_v2 Größe der virtuellen Maschinen, die als Kubernetes-Knoten erstellt werden.
nodepool_name nodepool1 Name des Knotenpools, bis zu 12 alphanumerische Zeichen.
os_type Linux
pod_cidr Ein CIDR-Notation-IP-Bereich, aus dem Pod-IP-Adressen zugewiesen werden, wenn kubenet verwendet wird.
Dieser Bereich darf nicht mit anderen Subnetz-IP-Bereichen überschneiden.
service_cidr Ein CIDR-Notation-IP-Bereich, aus dem Dienstcluster-IP-Adressen zugewiesen werden.
Dieser Bereich darf nicht mit anderen Subnetz-IP-Bereichen überschneiden.
storage_profile ManagedDisks
ssh_key Wird aus ~/.ssh/id_rsa.pub geladen Pfad oder Inhalt des öffentlichen Schlüssels, der auf den Knoten-VMs für SSH-Zugriff installiert wird.
virtual_node False Das Add-On virtual_node aktivieren. Schnelle Bereitstellung von Pods mit Azure Container Instance.
virtual_node_subnet_id Ein neues Ressourcenobjekt erstellen, wenn virtual_node True ist.
vnet_subnet_id Ein neues Ressourcenobjekt erstellen, wenn virtual_node True ist oder das network_plugin definiert ist. Die ID eines Subnetzes in einem vorhandenen VNet, in das der Cluster bereitgestellt werden soll.
workspace_resource_id Verwenden Sie den ersten Log Analytics-Arbeitsbereich in der resource_group oder erstellen Sie eine neue Ressource, wenn monitoring True ist. Die Ressourcen-ID eines vorhandenen Log Analytics-Arbeitsbereichs zur Speicherung von Überwachungsdaten.

Beispiel-Playbook

Installieren Sie die Rolle mit:

ansible-galaxy install azure.aks

Verwenden Sie die Rolle im Playbook, um das standardmäßigste AKS zu erstellen:

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

Ein AKS mit Überwachung erstellen:

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

Lizenz

MIT

Über das Projekt

Manage Azure Kubernetes Service

Installieren
ansible-galaxy install azure.aks
Lizenz
mit
Downloads
380
Besitzer
APIs, SDKs and open source projects from Microsoft Azure