Bagikan melalui


Mulai cepat: Menyebarkan kluster Otomatis Azure Kubernetes Service (AKS) (pratinjau)

Berlaku untuk: ✔️ AKS Otomatis (pratinjau)

Azure Kubernetes Service (AKS) Otomatis (pratinjau) memberikan pengalaman Kubernetes terkelola termampukan bagi pengembang, teknisi DevOps, dan insinyur platform. Ideal untuk aplikasi modern dan AI, AKS Otomatis mengotomatiskan penyiapan dan operasi kluster AKS dan menyematkan konfigurasi praktik terbaik. Pengguna dari tingkat keterampilan apa pun dapat memperoleh manfaat dari keamanan, performa, dan ketergantungan AKS Otomatis untuk aplikasi mereka.

Dalam mulai cepat ini, Anda belajar untuk:

  • Menyebarkan kluster Otomatis AKS.
  • Jalankan contoh aplikasi multi-kontainer dengan sekelompok layanan mikro dan ujung depan web yang mensimulasikan skenario ritel.

Sebelum Anda mulai

Mulai cepat ini mengasumsikan pemahaman dasar tentang konsep Kube. Untuk informasi lebih, lihat konsep inti Kubernetes untuk Azure Kubernetes Service (AKS).

  • Artikel ini memerlukan Azure CLI versi 2.57.0 atau yang lebih baru. Jika Anda menggunakan Azure Cloud Shell, versi terbaru sudah diinstal di sana.

  • Artikel ini memerlukan aks-preview ekstensi Azure CLI versi 3.0.0b13 atau yang lebih baru.

  • Jika Anda memiliki beberapa langganan Azure, pilih ID langganan yang sesuai tempat sumber daya harus ditagih menggunakan perintah az account set .

  • Daftarkan AutomaticSKUPreview fitur di langganan Azure Anda.

  • Identitas yang membuat kluster juga harus memiliki izin berikut pada langganan:

    • Microsoft.Authorization/policyAssignments/write
    • Microsoft.Authorization/policyAssignments/read

Penting

Pastikan langganan Anda memiliki kuota untuk 24 vCPU komputer virtual Standard_DS4_v2 untuk wilayah tempat Anda menyebarkan kluster. Anda dapat melihat kuota untuk keluarga VM tertentu dan mengirimkan permintaan peningkatan kuota melalui portal Azure. .png

  • Untuk menyebarkan file Bicep, Anda perlu menulis akses pada sumber daya yang Anda buat dan akses ke semua operasi pada Microsoft.Resources/deployments jenis sumber daya. Misalnya, untuk membuat komputer virtual, Anda memerlukan Microsoft.Compute/virtualMachines/write izin dan Microsoft.Resources/deployments/* . Untuk daftar peran dan izin, lihat Peran bawaan Azure.

Menginstal ekstensi Azure CLI pratinjau aks

Penting

Fitur pratinjau AKS tersedia berdasarkan layanan mandiri. Pratinjau disediakan "apa adanya" dan "sebagaimana tersedia," dan mereka dikecualikan dari perjanjian tingkat layanan dan garansi terbatas. Pratinjau AKS sebagian dicakup oleh dukungan pelanggan berdasarkan upaya terbaik. Dengan demikian, fitur-fitur ini tidak dimaksudkan untuk penggunaan produksi. Untuk informasi lebih lanjut, lihat artikel dukungan berikut ini:

Untuk menginstal ekstensi aks-preview, jalankan perintah berikut:

az extension add --name aks-preview

Jalankan perintah berikut untuk memperbarui ke versi terbaru ekstensi yang dirilis:

az extension update --name aks-preview

Mendaftarkan bendera fitur

Untuk menggunakan AKS Otomatis dalam pratinjau, Anda harus mendaftarkan bendera fitur untuk fitur lain yang diperlukan. Daftarkan bendera berikut menggunakan perintah az feature register .

az feature register --namespace Microsoft.ContainerService --name EnableAPIServerVnetIntegrationPreview
az feature register --namespace Microsoft.ContainerService --name NRGLockdownPreview
az feature register --namespace Microsoft.ContainerService --name SafeguardsPreview
az feature register --namespace Microsoft.ContainerService --name NodeAutoProvisioningPreview
az feature register --namespace Microsoft.ContainerService --name DisableSSHPreview
az feature register --namespace Microsoft.ContainerService --name AutomaticSKUPreview

Verifikasi status pendaftaran dengan menggunakan perintah az feature show . Dibutuhkan beberapa menit agar status menunjukkan Terdaftar:

az feature show --namespace Microsoft.ContainerService --name AutomaticSKUPreview

Saat status mencerminkan Terdaftar, refresh pendaftaran penyedia sumber daya Microsoft.ContainerService dengan menggunakan perintah az provider register :

az provider register --namespace Microsoft.ContainerService

Buat grup sumber daya

Grup sumber daya Azure adalah grup logis tempat sumber daya Azure disebarkan dan dikelola.

Contoh berikut ini menampilkan cara membuat grup sumber daya bernama myResourceGroup di lokasi eastus.

Mmebuat grup sumber daya menggunakan perintah buat grup az.

az group create --name myResourceGroup --location eastus

Contoh output berikut menyerupan pembuatan grup sumber daya yang berhasil:

{
  "id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
  "location": "eastus",
  "managedBy": null,
  "name": "myResourceGroup",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null
}

Membuat kluster Otomatis AKS

Untuk membuat kluster AKS Otomatis, gunakan perintah az aks create . Contoh berikut membuat kluster bernama myAKSAutomaticCluster dengan integrasi Prometheus Terkelola dan Container Insights diaktifkan.

az aks create \
    --resource-group myResourceGroup \
    --name myAKSAutomaticCluster \
    --sku automatic

Setelah beberapa menit, perintah selesai dan kembalikan informasi berformat JSON tentang kluster.

Menyambungkan ke kluster

Untuk mengelola kluster Kube, gunakan klien baris perintah Kube, kubectl. kubectl sudah diinstal jika Anda menggunakan Azure Cloud Shell. Untuk menginstal kubectl secara lokal, jalankan perintah az aks install-cli . Kluster Otomatis AKS dikonfigurasi dengan ID Microsoft Entra untuk kontrol akses berbasis peran (RBAC) Kubernetes. Saat Anda membuat kluster menggunakan Azure CLI, pengguna Anda diberi peran bawaan untuk Azure Kubernetes Service RBAC Cluster Admin.

Konfigurasikan kubectl untuk terhubung ke kluster Kubernetes menggunakan perintah az aks get-credentials. Perintah ini mengunduh informasi masuk dan mengonfigurasi CLI Kube untuk menggunakannya.

az aks get-credentials --resource-group myResourceGroup --name myAKSAutomaticCluster

Verifikasi koneksi ke kluster menggunakan perintah kubectl get. Perintah ini menampilkan daftar node kluster.

kubectl get nodes

Contoh output berikut akan menunjukkan bagaimana Anda diminta untuk masuk.

To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.

Setelah Anda masuk, output sampel berikut menunjukkan kumpulan simpul terkelola yang dibuat di langkah-langkah sebelumnya. Pastikan status simpul Siap.

NAME                                STATUS   ROLES   AGE     VERSION
aks-default-f8vj2                   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000000   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000001   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000002   Ready    agent   2m26s   v1.28.5

Membuat Kluster Kubernetes Otomatis

  1. Untuk membuat kluster Otomatis AKS, cari Layanan Kubernetes, dan pilih Kluster Kubernetes Otomatis dari opsi drop-down.

    Cuplikan layar titik masuk untuk membuat kluster Otomatis AKS di portal Azure.

  2. Pada tab Dasar , isi semua bidang wajib yang diperlukan untuk memulai: Langganan, Grup Sumber Daya, Nama kluster, dan Wilayah

    Cuplikan layar Tab Buat - Dasar untuk kluster Otomatis AKS di portal Azure.

    Jika prasyarat tidak terpenuhi dan langganan memerlukan pendaftaran bendera pratinjau, akan ada kesalahan yang ditampilkan di bawah bidang Langganan:

    Cuplikan layar kesalahan yang ditampilkan saat langganan tidak memiliki bendera pratinjau yang terdaftar saat membuat kluster Otomatis AKS di portal Azure.

  3. Pada tab Pemantauan , pilih konfigurasi pemantauan Anda dari Azure Monitor, Prometheus Terkelola, Grafana Terkelola, dan/atau konfigurasikan pemberitahuan. Tambahkan tag (opsional), dan lanjutkan untuk membuat kluster.

    Cuplikan layar Tab Pemantauan saat membuat kluster Otomatis AKS di portal Azure.

  4. Mulailah dengan mengonfigurasi aplikasi pertama Anda dari GitHub dan menyiapkan alur penyebaran otomatis.

    Cuplikan layar Tab Memulai pada Bilah Gambaran Umum setelah membuat kluster AKS Otomatis di portal Azure.

Menyambungkan ke kluster

Untuk mengelola kluster Kube, gunakan klien baris perintah Kube, kubectl. kubectl sudah diinstal jika Anda menggunakan Azure Cloud Shell. Untuk menginstal kubectl secara lokal, jalankan perintah az aks install-cli . Kluster Otomatis AKS dikonfigurasi dengan ID Microsoft Entra untuk kontrol akses berbasis peran (RBAC) Kubernetes. Saat Anda membuat kluster menggunakan portal Azure, pengguna Anda diberi peran bawaan untuk Azure Kubernetes Service RBAC Cluster Admin.

Konfigurasikan kubectl untuk terhubung ke kluster Kubernetes menggunakan perintah az aks get-credentials. Perintah ini mengunduh informasi masuk dan mengonfigurasi CLI Kube untuk menggunakannya.

az aks get-credentials --resource-group myResourceGroup --name myAKSAutomaticCluster

Verifikasi koneksi ke kluster menggunakan perintah kubectl get. Perintah ini menampilkan daftar node kluster.

kubectl get nodes

Contoh output berikut akan menunjukkan bagaimana Anda diminta untuk masuk.

To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.

Setelah Anda masuk, output sampel berikut menunjukkan kumpulan simpul terkelola yang dibuat di langkah-langkah sebelumnya. Pastikan status simpul Siap.

NAME                                STATUS   ROLES   AGE     VERSION
aks-default-f8vj2                   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000000   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000001   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000002   Ready    agent   2m26s   v1.28.5

Buat grup sumber daya

Grup sumber daya Azure adalah grup logis tempat sumber daya Azure disebarkan dan dikelola. Saat membuat grup sumber daya, Anda diminta untuk menentukan lokasi. Lokasi ini adalah lokasi penyimpanan metadata grup sumber daya Anda dan tempat sumber daya Anda berjalan di Azure jika Anda tidak menentukan wilayah lain selama pembuatan sumber daya.

Contoh berikut ini menampilkan cara membuat grup sumber daya bernama myResourceGroup di lokasi eastus.

Mmebuat grup sumber daya menggunakan perintah buat grup az.

az group create --name myResourceGroup --location eastus

Contoh output berikut menyerupan pembuatan grup sumber daya yang berhasil:

{
  "id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
  "location": "eastus",
  "managedBy": null,
  "name": "myResourceGroup",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null
}

Tinjau file Bicep

File Bicep ini mendefinisikan kluster Otomatis AKS. Saat dalam pratinjau, Anda perlu menentukan profil kumpulan agen nodepool sistem.

@description('The name of the managed cluster resource.')
param clusterName string = 'myAKSAutomaticCluster'

@description('The location of the managed cluster resource.')
param location string = resourceGroup().location

resource aks 'Microsoft.ContainerService/managedClusters@2024-03-02-preview' = {
  name: clusterName
  location: location  
  sku: {
		name: 'Automatic'
  		tier: 'Standard'
  }
  properties: {
    agentPoolProfiles: [
      {
        name: 'systempool'
        count: 3
        vmSize: 'Standard_DS4_v2'
        osType: 'Linux'
        mode: 'System'
      }
    ]
  }
  identity: {
    type: 'SystemAssigned'
  }
}

Untuk informasi selengkapnya tentang sumber daya yang ditentukan dalam file Bicep, lihat referensi Microsoft.ContainerService/managedClusters.

Menerapkan file Bicep

  1. Simpan file Bicep sebagai main.bicep ke penyimpanan lokal komputer Anda.

    Penting

    File Bicep mengatur clusterName param ke string myAKSAutomaticCluster. Jika Anda ingin menggunakan nama kluster yang berbeda, pastikan untuk memperbarui string ke nama kluster pilihan Anda sebelum menyimpan file ke komputer Anda.

  2. Sebarkan file Bicep menggunakan Azure CLI.

    az deployment group create --resource-group myResourceGroup --template-file main.bicep
    

    Perlu waktu beberapa menit untuk membuat kluster AKS. Tunggu hingga kluster berhasil disebarkan sebelum Anda melanjutkan ke langkah berikutnya.

Menyambungkan ke kluster

Untuk mengelola kluster Kube, gunakan klien baris perintah Kube, kubectl. kubectl sudah diinstal jika Anda menggunakan Azure Cloud Shell. Untuk menginstal kubectl secara lokal, jalankan perintah az aks install-cli . Kluster Otomatis AKS dikonfigurasi dengan ID Microsoft Entra untuk kontrol akses berbasis peran (RBAC) Kubernetes. Saat membuat kluster menggunakan Bicep, Anda perlu menetapkan salah satu peran bawaan seperti Azure Kubernetes Service RBAC Reader, , Azure Kubernetes Service RBAC Writer, Azure Kubernetes Service RBAC Adminatau Azure Kubernetes Service RBAC Cluster Admin kepada pengguna Anda, yang dilingkupkan ke kluster atau namespace tertentu. Pastikan juga pengguna Anda memiliki Azure Kubernetes Service Cluster User peran bawaan untuk dapat menjalankan az aks get-credentials, lalu mendapatkan kubeconfig kluster AKS Anda menggunakan az aks get-credentials perintah .

Konfigurasikan kubectl untuk terhubung ke kluster Kubernetes menggunakan perintah az aks get-credentials. Perintah ini mengunduh informasi masuk dan mengonfigurasi CLI Kube untuk menggunakannya.

az aks get-credentials --resource-group myResourceGroup --name

Verifikasi koneksi ke kluster menggunakan perintah kubectl get. Perintah ini menampilkan daftar node kluster.

kubectl get nodes

Contoh output berikut akan menunjukkan bagaimana Anda diminta untuk masuk.

To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.

Setelah Anda masuk, output sampel berikut menunjukkan kumpulan simpul terkelola yang dibuat di langkah-langkah sebelumnya. Pastikan status simpul Siap.

NAME                                STATUS   ROLES   AGE     VERSION
aks-default-f8vj2                   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000000   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000001   Ready    agent   2m26s   v1.28.5
aks-nodepool1-13213685-vmss000002   Ready    agent   2m26s   v1.28.5

Menyebarkan aplikasi

Untuk menyebarkan aplikasi, Anda menggunakan file manifes untuk membuat semua objek yang diperlukan untuk menjalankan aplikasi AKS Store. File manifes Kube menentukan status kluster yang diinginkan, seperti gambar kontainer mana yang akan dijalankan. Manifes mencakup penyebaran dan layanan Kubernetes berikut:

Cuplikan layar arsitektur sampel Azure Store.

  • Simpan depan: Aplikasi web bagi pelanggan untuk melihat produk dan melakukan pemesanan.
  • Layanan produk: Menampilkan informasi produk.
  • Layanan pesanan: Menempatkan pesanan.
  • Rabbit MQ: Antrean pesan untuk antrean pesanan.

Catatan

Kami tidak menyarankan untuk menjalankan kontainer stateful, seperti Rabbit MQ, tanpa penyimpanan persisten untuk produksi. Ini digunakan di sini untuk kesederhanaan, tetapi sebaiknya gunakan layanan terkelola, seperti Azure Cosmos DB atau Azure Bus Layanan.

  1. Buat namespace aks-store-demo layanan untuk menyebarkan sumber daya Kubernetes.

    kubectl create ns aks-store-demo
    
  2. Sebarkan aplikasi menggunakan perintah kubectl apply ke aks-store-demo dalam namespace layanan. File YAML yang menentukan penyebaran ada di GitHub.

    kubectl apply -n aks-store-demo -f https://raw.githubusercontent.com/Azure-Samples/aks-store-demo/main/aks-store-ingress-quickstart.yaml
    

    Contoh output berikut menunjukkan penyebaran dan layanan:

    statefulset.apps/rabbitmq created
    configmap/rabbitmq-enabled-plugins created
    service/rabbitmq created
    deployment.apps/order-service created
    service/order-service created
    deployment.apps/product-service created
    service/product-service created
    deployment.apps/store-front created
    service/store-front created
    ingress/store-front created
    

Uji aplikasi

Ketika aplikasi berjalan, layanan Kubernetes mengekspos front end aplikasi ke internet. Diperlukan beberapa menit untuk menyelesaikan proses ini.

  1. Periksa status pod yang disebarkan menggunakan perintah kubectl get pods . Pastikan semua pod sebelum Running melanjutkan. Jika ini adalah beban kerja pertama yang Anda sebarkan, mungkin perlu beberapa menit agar provisi otomatis simpul membuat kumpulan simpul untuk menjalankan pod.

    kubectl get pods -n aks-store-demo
    
  2. Periksa alamat IP publik untuk aplikasi store-front. Pantau kemajuan menggunakan perintah kubectl get service dengan argumen --watch.

    kubectl get ingress store-front -n aks-store-demo --watch
    

    Output ADDRESS untuk store-front layanan awalnya menunjukkan kosong:

    NAME          CLASS                                HOSTS   ADDRESS        PORTS   AGE
    store-front   webapprouting.kubernetes.azure.com   *                      80      12m
    
  3. Setelah ALAMAT berubah dari kosong ke alamat IP publik yang sebenarnya, gunakan CTRL-C untuk menghentikan kubectl proses tontonan.

    Contoh output berikut menunjukkan alamat IP publik yang valid yang ditetapkan ke layanan:

    NAME          CLASS                                HOSTS   ADDRESS        PORTS   AGE
    store-front   webapprouting.kubernetes.azure.com   *       4.255.22.196   80      12m
    
  4. Buka browser web ke alamat IP eksternal ingress Anda untuk melihat aplikasi Azure Store beraksi.

    Cuplikan layar aplikasi sampel AKS Store.

Menghapus kluster

Jika Anda tidak berencana untuk melalui tutorial AKS, bersihkan sumber daya yang tidak perlu untuk menghindari biaya Azure. Jalankan perintah az group delete untuk menghapus grup sumber daya, layanan kontainer, dan semua sumber daya terkait.

az group delete --name myResourceGroup --yes --no-wait

Catatan

Kluster AKS dibuat dengan identitas terkelola yang ditetapkan sistem, yang merupakan opsi identitas default yang digunakan dalam mulai cepat ini. Platform ini mengelola identitas ini, jadi Anda tidak perlu menghapusnya secara manual.

Langkah berikutnya

Dalam mulai cepat ini, Anda menyebarkan kluster Kubernetes menggunakan AKS Otomatis dan kemudian menyebarkan aplikasi multi-kontainer sederhana ke dalamnya. Aplikasi sampel ini hanya untuk tujuan demo dan tidak mewakili semua praktik terbaik untuk aplikasi Kubernetes. Untuk panduan tentang membuat solusi lengkap dengan AKS untuk produksi, lihat panduan solusi AKS.

Untuk mempelajari selengkapnya tentang AKS Otomatis, lanjutkan ke pengenalan.