Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
Bu makaledeki örnek playbook'ları çalıştırmak için Ansible 2.8 (veya üzeri) gereklidir.
Azure Kubernetes Service (AKS), Azure'da yönetilen bir Kubernetes kümesi dağıtmayı kolaylaştırır. AKS, sorumluluğun çoğunu Azure'a devrederek Kubernetes yönetiminin karmaşıklığını ve işlemsel yükünü azaltır. Barındırılan bir Kubernetes hizmeti olarak Azure, sistem durumu izleme ve bakım gibi kritik görevleri sizin için işler. Kubernetes ana makineleri Azure tarafından yönetilir. Yalnızca ajan düğümlerini yönetir ve korursunuz. Yönetilen bir Kubernetes hizmeti olarak AKS ücretsizdir; yalnızca kümelerinizdeki aracı düğümler için ödeme yaparsınız, yönetici düğümler için değil.
AKS, kullanıcı kimlik doğrulaması için Microsoft Entra Id kullanacak şekilde yapılandırılabilir. Yapılandırıldıktan sonra, AKS kümesinde oturum açmak için Microsoft Entra kimlik doğrulama belirtecinizi kullanırsınız. RBAC, bir kullanıcının kimliğine veya dizin grubu üyeliğine dayalı olabilir.
Bu makalede şunları öğreneceksiniz:
- AKS kümesi oluşturma
- AKS kümesini yapılandırma
Önkoşullar
- Azure aboneliği: Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.
- Azure hizmet sorumlusu: Aşağıdaki değerleri not ederek bir hizmet sorumlusu oluşturun: appId, displayName, password ve tenant.
Ansible'ı Yükleme: Aşağıdaki seçeneklerden birini yapın:
- Ansible'ı Linux sanal makinesine yükleme ve yapılandırma
- Azure Cloud Shell'i yapılandırın ve Linux sanal makinesine erişiminiz yoksa Ansible ile bir sanal makine oluşturun.
Yönetilen AKS kümesi oluşturma
Örnek playbook, bir kaynak grubu ve bu grup içinde bir AKS kümesi oluşturur.
Aşağıdaki playbook'u azure_create_aks.yml olarak kaydedin.
- 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
Playbook'u çalıştırmadan önce aşağıdaki notlara bakın:
- içindeki ilk bölüm
tasks, konum içindemyResourceGroupadlıeastusbir kaynak grubunu tanımlar. - içindeki
tasksikinci bölüm, kaynak grubu içindemyAKSClusteradlımyResourceGroupbir AKS kümesini tanımlar. - Yer tutucu için
your_ssh_key, RSA ortak anahtarınızı "ssh-rsa" ile (tırnak işaretleri olmadan) başlayarak tek satır biçiminde girin. - Yer tutucu için
aks_versionaz aks get-versions komutunu kullanın.
Ansible-playbook kullanarak playbook'u çalıştırın
ansible-playbook azure_create_aks.yml
Playbook çalıştığında aşağıdaki çıktıya benzer sonuçlar alınabilir.
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 düğümlerini ölçeklendirme
Önceki bölümdeki örnek playbook iki düğümü tanımlar. Bloktaki count değeri değiştirerek agent_pool_profiles düğüm sayısını ayarlarsınız.
Aşağıdaki playbook'u azure_configure_aks.yml olarak kaydedin.
- 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
Playbook'u çalıştırmadan önce aşağıdaki notlara bakın:
- Yer tutucu için
your_ssh_key, RSA ortak anahtarınızı "ssh-rsa" ile (tırnak işaretleri olmadan) başlayarak tek satır biçiminde girin.
Ansible-playbook kullanarak playbook'u çalıştırın
ansible-playbook azure_configure_aks.yml
Playbook'un çalıştırılması, aşağıdaki çıktıya benzer sonuçlar gösterir.
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
Yönetilen AKS kümesini silme
Örnek playbook bir AKS kümesini siler.
Aşağıdaki playbook'u azure_delete_aks.yml olarak kaydedin.
- 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
Ansible-playbook kullanarak playbook'u çalıştırın
ansible-playbook azure_delete_aks.yml
Playbook çalıştırıldığında aşağıdakine benzer sonuçlar gösterilir:
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