Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Belangrijk
Ansible 2.8 (of hoger) is vereist om de voorbeeldplaybooks in dit artikel uit te voeren.
Met Azure Kubernetes Service (AKS) kunt u eenvoudig een beheerd Kubernetes-cluster implementeren in Azure. AKS verkleint de complexiteit en de operationele overhead die gepaard gaan met het beheer van Kubernetes door veel van deze taken naar Azure over te hevelen. Als gehoste Kubernetes-service verwerkt Azure kritieke taken, zoals statuscontrole en onderhoud voor u. De Kubernetes-masters worden beheerd door Azure. U beheert en onderhoudt alleen de agentknooppunten. Als beheerde Kubernetes-service is AKS gratis. U betaalt alleen voor de agentknooppunten binnen uw clusters; niet voor de masters.
AKS kan worden geconfigureerd voor het gebruik van Microsoft Entra-id voor gebruikersverificatie. Zodra dit is geconfigureerd, gebruikt u uw Microsoft Entra-verificatietoken om u aan te melden bij het AKS-cluster. De RBAC kan zijn gebaseerd op de identiteit of het lidmaatschap van een directorygroep van een gebruiker.
In dit artikel leert u het volgende:
- Een AKS-cluster maken
- Een AKS-cluster configureren
Vereiste voorwaarden
- Azure-abonnement: als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
- Azure-service-principal: maak een service-principal, noteer de volgende waarden: appId, displayName, wachtwoord en tenant.
Ansible installeren: Voer een van de volgende opties uit:
- Ansible installeren en configureren op een virtuele Linux-machine
- Configureer Azure Cloud Shell en maak een virtuele machine met Ansible als u geen toegang hebt tot een virtuele Linux-machine.
Een beheerd AKS-cluster maken
Het voorbeeldplaybook maakt een resourcegroep en een AKS-cluster binnen de resourcegroep.
Sla het volgende "playbook" op als azure_create_aks.yml:
- name: Create Azure Kubernetes Service
hosts: localhost
connection: local
vars:
resource_group: myResourceGroup
location: eastus
aks_name: myAKSCluster
username: azureuser
ssh_key: "your_ssh_key"
client_id: "your_client_id"
client_secret: "your_client_secret"
aks_version: aks_version
tasks:
- name: Create resource group
azure_rm_resourcegroup:
name: "{{ resource_group }}"
location: "{{ location }}"
- name: Create a managed Azure Container Services (AKS) cluster
azure_rm_aks:
name: "{{ aks_name }}"
location: "{{ location }}"
resource_group: "{{ resource_group }}"
dns_prefix: "{{ aks_name }}"
kubernetes_version: "{{aks_version}}"
linux_profile:
admin_username: "{{ username }}"
ssh_key: "{{ ssh_key }}"
service_principal:
client_id: "{{ client_id }}"
client_secret: "{{ client_secret }}"
agent_pool_profiles:
- name: default
count: 2
vm_size: Standard_D2_v2
tags:
Environment: Production
Bekijk de volgende opmerkingen voordat u het draaiboek uitvoert.
- De eerste sectie binnen
tasksdefinieert een resourcegroep met de naammyResourceGroupbinnen deeastuslocatie. - De tweede sectie binnen
tasksdefinieert een AKS-cluster met de naammyAKSClusterbinnen demyResourceGroupresourcegroep. - Voer voor de
your_ssh_keytijdelijke aanduiding uw openbare RSA-sleutel in het format van één regel in, beginnend met 'ssh-rsa' (zonder aanhalingstekens). - Gebruik voor de
aks_versiontijdelijke aanduiding het commando az aks get-versions .
Het playbook uitvoeren met ansible-playbook
ansible-playbook azure_create_aks.yml
Voer het playbook uit om resultaten te zien die vergelijkbaar zijn met deze uitvoer:
PLAY [Create AKS]
TASK [Gathering Facts]
ok: [localhost]
TASK [Create resource group]
changed: [localhost]
TASK [Create an Azure Container Services (AKS) cluster]
changed: [localhost]
PLAY RECAP
localhost : ok=3 changed=2 unreachable=0 failed=0
AKS-knooppunten schalen
In het voorbeeldplaybook in de vorige sectie worden twee knooppunten gedefinieerd. U past het aantal knooppunten aan door de count waarde in het agent_pool_profiles blok te wijzigen.
Sla het volgende "playbook" op als azure_configure_aks.yml:
- name: Scale AKS cluster
hosts: localhost
connection: local
vars:
resource_group: myResourceGroup
location: eastus
aks_name: myAKSCluster
username: azureuser
ssh_key: "your_ssh_key"
client_id: "your_client_id"
client_secret: "your_client_secret"
tasks:
- name: Scaling an existed AKS cluster
azure_rm_aks:
name: "{{ aks_name }}"
location: "{{ location }}"
resource_group: "{{ resource_group }}"
dns_prefix: "{{ aks_name }}"
linux_profile:
admin_username: "{{ username }}"
ssh_key: "{{ ssh_key }}"
service_principal:
client_id: "{{ client_id }}"
client_secret: "{{ client_secret }}"
agent_pool_profiles:
- name: default
count: 3
vm_size: Standard_D2_v2
Bekijk de volgende opmerkingen voordat u het draaiboek uitvoert.
- Voer voor de
your_ssh_keyplaatsaanduiding uw openbare RSA-sleutel in de éénregelige indeling in, te beginnen met 'ssh-rsa' (zonder aanhalingstekens).
Het playbook uitvoeren met ansible-playbook
ansible-playbook azure_configure_aks.yml
Als u het playbook uitvoert, ziet u resultaten die vergelijkbaar zijn met de volgende uitvoer:
PLAY [Scale AKS cluster]
TASK [Gathering Facts]
ok: [localhost]
TASK [Scaling an existed AKS cluster]
changed: [localhost]
PLAY RECAP
localhost : ok=2 changed=1 unreachable=0 failed=0
Een beheerd AKS-cluster verwijderen
In het voorbeeldplaybook wordt een AKS-cluster verwijderd.
Sla het volgende "playbook" op als azure_delete_aks.yml:
- name: Delete a managed Azure Container Services (AKS) cluster
hosts: localhost
connection: local
vars:
resource_group: myResourceGroup
aks_name: myAKSCluster
tasks:
- name:
azure_rm_aks:
name: "{{ aks_name }}"
resource_group: "{{ resource_group }}"
state: absent
Het playbook uitvoeren met ansible-playbook
ansible-playbook azure_delete_aks.yml
Als u het playbook uitvoert, ziet u resultaten die vergelijkbaar zijn met de volgende uitvoer:
PLAY [Delete a managed Azure Container Services (AKS) cluster]
TASK [Gathering Facts]
ok: [localhost]
TASK [azure_rm_aks]
PLAY RECAP
localhost : ok=2 changed=1 unreachable=0 failed=0