Menginstal dan menggunakan CLI agenik untuk Azure Kubernetes Service (AKS) (pratinjau)

Artikel ini menunjukkan cara menginstal, mengonfigurasi, dan menggunakan CLI agenik untuk Azure Kubernetes Service (AKS) dalam mode klien atau mode kluster untuk mendapatkan pemecahan masalah dan wawasan yang didukung AI untuk kluster AKS Anda.

Untuk informasi selengkapnya, lihat Ringkasan Agentic CLI for AKS.

Penting

Fitur pratinjau AKS tersedia atas dasar layanan mandiri dan pendaftaran sukarela. Pratinjau disediakan "apa adanya" dan "sebagaimana tersedia," dan pratinjau tersebut dikecualikan dari perjanjian tingkat layanan (SLA) serta garansi terbatas. Pratinjau AKS sebagian didukung oleh dukungan pelanggan berdasarkan upaya terbaik yang dapat dilakukan. Dengan demikian, fitur-fitur ini tidak dimaksudkan untuk penggunaan produksi. Untuk informasi lebih lanjut, lihat artikel dukungan berikut ini:

Prasyarat

  • Azure CLI versi 2.76 atau yang lebih baru. Periksa versi Anda menggunakan az version perintah . Untuk menginstal atau memperbarui, lihat Menginstal Azure CLI.

  • Memiliki kunci API model bahasa besar (LLM). Anda harus membawa kunci API Anda sendiri dari salah satu penyedia yang didukung:

    • Azure OpenAI (disarankan)
    • OpenAI atau penyedia LLM lainnya yang kompatibel dengan spesifikasi OpenAPI
  • Atur langganan Azure aktif Anda menggunakan perintah az account set.

    az account set --subscription "your-subscription-id-or-name"
    
  • Ekstensi Azure CLI versi 1.0.0b16 atau yang lebih baru aks-agent , yang menyediakan CLI agenik untuk fungsionalitas AKS. Anda dapat menginstal atau memperbarui ekstensi menggunakan Azure CLI.

  • Docker terinstal dan berjalan di komputer lokal Anda. Untuk petunjuk penginstalan, lihat Mulai menggunakan Docker.
  • Pastikan daemon Docker dimulai dan berjalan sebelum melanjutkan penginstalan.
  • Pastikan kredensial Azure Anda dikonfigurasi dengan benar dan Anda memiliki izin yang diperlukan untuk mengakses sumber daya kluster.

Menginstal CLI agenik untuk ekstensi AKS

  1. Instal agent CLI untuk ekstensi AKS menggunakan perintah az extension add. Jika ekstensi sudah diinstal, Anda dapat memperbarui ke versi terbaru dengan az extension update perintah . Langkah ini mungkin perlu waktu 5 hingga 10 menit untuk diselesaikan.

    # Install the extension
    az extension add --name aks-agent --debug
    
    # Update the extension
    az extension update --name aks-agent --debug
    
  2. Verifikasi keberhasilan penginstalan menggunakan perintah az extension list.

    az extension list
    

    Output Anda harus mencakup entri untuk aks-agent.

  3. Verifikasi bahwa perintah CLI agentik untuk AKS tersedia dengan menggunakan perintah [az aks agent][/cli/azure/aks#az-aks-agent] dan parameter --help.

    az aks agent --help
    

    Output Anda harus menampilkan aks-agent dengan informasi versinya di bagian extensions. Contohnya:

    ...
    "extensions": {
    "aks-agent": "1.0.0b17",
    }
    

Menyiapkan kunci LLM API Anda

Sebelum melanjutkan penginstalan, Anda perlu menyiapkan kunci LLM API Anda. Sebaiknya gunakan model yang lebih baru seperti GPT-5 atau Claude Opus MINI untuk performa yang lebih baik. Pastikan untuk memilih model dengan ukuran konteks tinggi setidaknya 128.000 token atau lebih tinggi.

  1. Buat sumber daya Azure OpenAI.
  2. Sebarkan model. Untuk nama penyebaran, gunakan nama yang sama dengan nama model, seperti gpt-4o atau gpt-4o-mini, tergantung pada aksesnya. Anda dapat menggunakan wilayah mana pun di mana Anda memiliki akses dan kuota untuk model. Dalam proses penerapan, pilih batas token per menit (TPM) setinggi mungkin. Kami merekomendasikan lebih dari 1 juta TPM untuk performa yang baik.
  3. Setelah penyebaran selesai, perhatikan URL dasar API dan kunci API Anda. Versi API bukan versi model. Anda dapat menggunakan versi API apa pun yang tersedia dan didukung di Azure OpenAI di Microsoft Foundry Models v1 API. Basis Azure API mengacu pada titik akhir Azure OpenAI (yang biasanya berakhiran openai.azure.com/), bukan URI target penyebaran di Foundry.

Azure OpenAI dengan ID Microsoft Entra (autentikasi tanpa kunci)

Saat Anda memilih "Azure Open AI (MICROSOFT Entra ID)" sebagai penyedia LLM, Anda dapat mengonfigurasi autentikasi tanpa kunci menggunakan ID Microsoft Entra. Dengan opsi ini, Anda tidak perlu menyediakan kunci API. Sebagai gantinya, metode autentikasi ini memerlukan penetapan peran berikut:

  • Mode klien: Kredensial Azure CLI lokal harus diberi peran Pengguna Cognitive Services atau Pengguna Azure AI pada sumber daya Azure OpenAI.
  • Mode kluster: Identitas beban kerja harus ditetapkan peran Pengguna Cognitive Services atau Pengguna Azure AI pada sumber daya Azure OpenAI.

Penyedia LLM lainnya

Jika Anda menggunakan penyedia lain yang kompatibel dengan OpenAI, ikuti dokumentasi mereka untuk petunjuk tentang cara membuat akun dan mengambil kunci API.

Memverifikasi penginstalan Docker dan memulai daemon Docker

  1. Verifikasi bahwa Docker diinstal dan daemon Docker berjalan menggunakan perintah berikut:

    docker --version
    docker ps
    
  2. Jika Anda menerima kesalahan yang menunjukkan bahwa daemon Docker tidak berjalan, mulai layanan Docker menggunakan langkah-langkah yang sesuai untuk sistem operasi Anda:

    • macOS / Windows:

      • Luncurkan Docker Desktop dari aplikasi Anda.
      • Tunggu Docker dimulai.
    • Linux:

      • Mulai layanan Docker menggunakan perintah berikut:

        sudo systemctl start docker
        sudo systemctl enable docker  # Enable Docker to start on boot
        
  3. Verifikasi Docker berjalan menggunakan perintah berikut:

    docker info
    

    Perintah ini harus mengembalikan informasi sistem Docker tanpa kesalahan.

Menginisialisasi mode klien

  1. Inisialisasi CLI agenik dalam mode klien dengan menggunakan perintah az aks agent-init. Pastikan untuk mengganti nilai placeholder dengan grup sumber daya dan nama kluster Anda yang sesungguhnya.

    az aks agent-init --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME
    
  2. Saat diminta untuk memilih mode penyebaran, masukkan 2 untuk mode klien.

    🚀 Welcome to AKS Agent initialization!
    
    Please select the mode you want to use:
      1. Cluster mode - Deploys agent as a pod in your AKS cluster
         Uses service account and workload identity for secure access to cluster and Azure resources
      2. Client mode - Runs agent locally using Docker
         Uses your local Azure credentials and cluster user credentials for access
    
    Enter your choice (1 or 2): 2
    
  3. Konfigurasikan detail penyedia LLM Anda. Contohnya:

    Welcome to AKS Agent LLM configuration setup. Type '/exit' to exit.
     1. Azure Open AI (API Key)
     1. Azure Open AI (Microsoft Entra ID)
     3. OpenAI
     4. Anthropic
     5. Gemini
     6. Openai Compatible
    Enter the number of your LLM provider: 1
    Your selected provider: azure
    Enter value for MODEL_NAME:  (Hint: should be consistent with your deployed name, e.g., gpt-4.1) gpt-4.1
    Enter your API key: 
    Enter value for AZURE_API_BASE:  (Hint: https://{your-custom-endpoint}.openai.azure.com/) https://test-example.openai.azure.com
    Enter value for AZURE_API_VERSION:  (Default: 2025-04-01-preview)
    LLM configuration setup successfully.
    

    Nota

    Kunci API tampak kosong saat Anda mengetik untuk keamanan. Pastikan untuk memasukkan kunci API yang benar.

  4. Verifikasi bahwa inisialisasi berhasil. Agen secara otomatis menarik gambar Docker yang diperlukan saat Anda menjalankan perintah pertama Anda.

Menginisialisasi mode kluster

  1. Inisialisasi CLI agenik dengan mode kluster menggunakan az aks agent-init perintah . Pastikan untuk mengganti nilai placeholder dengan grup sumber daya dan nama kluster Anda yang sesungguhnya.

    az aks agent-init --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME
    
  2. Saat diminta untuk memilih mode penyebaran, masukkan 1 untuk mode kluster.

    🚀 Welcome to AKS Agent initialization!
    
    Please select the mode you want to use:
      1. Cluster mode - Deploys agent as a pod in your AKS cluster
         Uses service account and workload identity for secure access to cluster and Azure resources
      2. Client mode - Runs agent locally using Docker
         Uses your local Azure credentials and cluster user credentials for access
    
    Enter your choice (1 or 2): 1
    
  3. Saat diminta untuk menentukan namespace target, masukkan namespace tempat Anda membuat akun layanan. Contoh berikut menggunakan your-namespace sebagai tempat penampung. Pastikan untuk menggantinya dengan namespace aktual yang Anda gunakan.

    ✅ Cluster mode selected. This will set up the agent deployment in your cluster.
    
    Please specify the namespace where the agent will be deployed.
    
    Enter namespace (e.g., 'kube-system'): your-namespace
    
  4. Konfigurasikan detail penyedia LLM Anda. Contohnya:

    📦 Using namespace: your-namespace
    No existing LLM configuration found. Setting up new configuration...
    Please provide your LLM configuration. Type '/exit' to exit.
     1. Azure OpenAI
     2. OpenAI
     3. Anthropic
     4. Gemini
     5. OpenAI Compatible
     6. For other providers, see https://aka.ms/aks/agentic-cli/init
    Please choose the LLM provider (1-5): 1
    
  5. Berikan detail akun layanan menggunakan akun layanan Kubernetes yang Anda buat untuk penyebaran agen. Contoh berikut menggunakan aks-mcp sebagai tempat penampung untuk nama akun layanan. Pastikan untuk menggantinya dengan nama akun layanan Anda yang sebenarnya.

    👤 Service Account Configuration
    The AKS agent requires a service account with appropriate permissions in the 'your-namespace'
    namespace.
    Please ensure you have created the necessary Role and RoleBinding in your namespace for 
    this service account.
    
    Enter service account name: aks-mcp
    
  6. Tunggu hingga penyebaran selesai. Inisialisasi mengimplementasikan agen perangkat lunak menggunakan Helm.

    🚀 Deploying AKS agent (this typically takes less than 2 minutes)...
    ✅ AKS agent deployed successfully!
    Verifying deployment status...
    ✅ AKS agent is ready and running!
    
    🎉 Initialization completed successfully!
    
  7. Verifikasi penyebaran yang sukses dan periksa status agen menggunakan perintah az aks agent dengan parameter --status.

    az aks agent \
    --status \
    --resource-group $RESOURCE_GROUP \
    --name $CLUSTER_NAME \
    --namespace $NAMESPACE
    

    Keluaran Anda harus menunjukkan bahwa agen perangkat lunak siap dan berjalan, mirip dengan yang berikut ini:

    📊 Checking AKS agent status...
    
    ✅ Helm Release: deployed
    
    📦 Deployments:
      • aks-agent: 1/1 ready
      • aks-mcp: 1/1 ready
    
    🐳 Pods:
      • aks-agent-xxxxx-xxxxx: Running ✓
      • aks-mcp-xxxxx-xxxxx: Running ✓
    
    📋 LLM Configurations:
      • azure/gpt-4o
        API Base: https://your-service.openai.azure.com/
        API Version: 2025-04-01-preview
    
    ✅ AKS agent is ready and running!
    

    Nota

    Anda juga dapat memverifikasi penyebaran yang berhasil dengan memeriksa pod dan penyebaran di namespace target menggunakan kubectl:

    kubectl get pods --namespace $NAMESPACE | grep aks-
    kubectl get deployment --namespace $NAMESPACE | grep aks-
    

Gunakan agentic CLI untuk AKS

Setelah diinisialisasi, Anda dapat menggunakan CLI agenik untuk AKS untuk memecahkan masalah kluster Anda dan mendapatkan wawasan cerdas dengan menggunakan kueri bahasa alami. Sintaks perintah dan fungsionalitasnya sama untuk mode klien dan mode kluster, kecuali untuk --mode parameter dan --namespace . Mode kluster adalah mode penyebaran default, jadi Anda hanya perlu menentukan --mode client saat menggunakan mode klien. Untuk mode kluster, Anda perlu menentukan --namespace parameter dengan namespace tempat agen disebarkan.

Kueri dasar

Nota

Jika Anda memiliki beberapa model yang disiapkan, Anda dapat menentukan model yang akan digunakan untuk setiap kueri menggunakan --model parameter . Contohnya, --model=azure/gpt-4o.

Berikut ini adalah contoh kueri dasar yang dapat Anda jalankan dengan CLI agenik untuk AKS dalam mode klien:

az aks agent "How many nodes are in my cluster?" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --mode client
az aks agent "What is the Kubernetes version on the cluster?" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --mode client
az aks agent "Why is coredns not working on my cluster?" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --mode client
az aks agent "Why is my cluster in a failed state?" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --mode client

Berikut ini adalah contoh kueri dasar yang dapat Anda jalankan dengan CLI agenik untuk AKS dalam mode kluster:

az aks agent "How many nodes are in my cluster?" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --namespace $NAMESPACE
az aks agent "What is the Kubernetes version on the cluster?" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --namespace $NAMESPACE
az aks agent "Why is coredns not working on my cluster?" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --namespace $NAMESPACE
az aks agent "Why is my cluster in a failed state?" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --namespace $NAMESPACE

Pengalaman ini menggunakan mode interaktif secara default, sehingga Anda dapat terus mengajukan pertanyaan dengan konteks yang dipertahankan hingga Anda ingin pergi. Untuk keluar dari pengalaman, masukkan /exit.

Parameter perintah

Perintah az aks agent ini memiliki beberapa parameter yang memungkinkan Anda menyesuaikan pengalaman pemecahan masalah. Tabel berikut ini menjelaskan parameter kunci yang bisa Anda gunakan saat menjalankan kueri Anda:

Pengaturan Deskripsi
--max-steps Jumlah maksimum langkah yang dapat dilakukan LLM untuk menyelidiki masalah tersebut. Bawaan: 40.
--mode Mode menentukan bagaimana agen disebarkan. Nilai yang diizinkan: client, cluster. Standar: cluster.
--model Tentukan penyedia dan model atau penyebaran LLM yang akan digunakan untuk asisten AI.
--name, -n Nama kluster terkelola. (Diperlukan)
--namespace Namespace Layanan Kubernetes tempat Agen AKS disebarkan. Diperlukan untuk mode kluster.
--no-echo-request Nonaktifkan menampilkan ulang pertanyaan yang diberikan kepada Agen AKS dalam output.
--no-interactive Nonaktifkan mode interaktif. Ketika diatur, agen tidak akan meminta input dan akan berjalan dalam mode batch.
--refresh-toolsets Perbarui status perangkat alat.
--resource-group, -g Nama grup sumber daya. (Diperlukan)
--show-tool-output Tampilkan output dari setiap alat yang dipanggil.
--status Tampilkan konfigurasi agen AKS dan informasi status.

Spesifikasi model

Parameter --model menentukan LLM dan penyedia mana yang menganalisis kluster Anda. Contohnya:

  • OpenAI: Gunakan nama model secara langsung (misalnya, gpt-4o).
  • Azure OpenAI: Gunakan azure/<deployment name> (misalnya, azure/gpt-4o).
  • Anthropic: Gunakan anthropic/claude-sonnet-4.

Perintah interaktif

az aks agent memiliki sekumpulan sub-perintah yang membantu pengalaman pemecahan masalah. Untuk mengaksesnya, masukkan / di dalam pengalaman mode interaktif.

Tabel berikut ini menjelaskan perintah interaktif yang tersedia:

Command Deskripsi
/exit Keluar dari mode interaktif.
/help Tampilkan pesan bantuan dengan semua perintah.
/clear Bersihkan layar dan reset konteks percakapan.
/tools Tampilkan toolset yang tersedia dan statusnya.
/auto Alihkan tampilan output alat setelah respons.
/last Tampilkan semua output alat dari respons terakhir.
/run Jalankan perintah Bash dan bagikan secara opsional dengan LLM.
/shell Masuk ke shell interaktif dan kemudian opsionalnya, bagikan sesi dengan LLM.
/context Perlihatkan ukuran konteks percakapan dan jumlah token.
/show Tampilkan output alat tertentu dalam tampilan yang dapat digulir.
/feedback Berikan umpan balik tentang respons agen.

Menonaktifkan mode interaktif

Anda dapat menonaktifkan mode interaktif menggunakan --no-interactive bendera dengan perintah Anda. Contohnya:

az aks agent "How many pods are in the kube-system namespace" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --mode client --model=azure/gpt-4o --no-interactive
az aks agent "Why are the pods in Crashloopbackoff in the kube-system namespace" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --mode client --model=azure/gpt-4o --no-interactive --show-tool-output
az aks agent "How many pods are in the kube-system namespace" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --namespace $NAMESPACE --model=azure/gpt-4o --no-interactive
az aks agent "Why are the pods in Crashloopbackoff in the kube-system namespace" --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --namespace $NAMESPACE --model=azure/gpt-4o --no-interactive --show-tool-output

Perangkat alat

CLI agenik untuk AKS mencakup integrasi bawaan untuk alat pemantauan dan pengamatan populer melalui toolset. Beberapa integrasi bekerja secara otomatis dengan Kubernetes. Integrasi lain memerlukan kunci atau konfigurasi API.

Untuk AKS, ada set alat khusus yang membantu pengalaman pemecahan masalah. Toolset ini muncul dalam output di awal pengalaman:

...
✅ Toolset kubernetes/kube-prometheus-stack
✅ Toolset internet
✅ Toolset bash
✅ Toolset runbook
✅ Toolset kubernetes/logs
✅ Toolset kubernetes/core
✅ Toolset kubernetes/live-metrics
✅ Toolset aks/core
✅ Toolset aks/node-health
Using 37 datasources (toolsets). To refresh: use flag `--refresh-toolsets`

Integrasi server AKS MCP

Server AKS Model Context Protocol (MCP) diaktifkan secara default dengan CLI agenik untuk AKS. Pengalaman ini menyalakan server AKS MCP secara lokal (atau dalam kluster dengan mode kluster) dan menggunakannya sebagai sumber telemetri.

Membersihkan penyebaran CLI agenik

Bersihkan penyebaran mode klien Anda menggunakan perintah az aks agent-cleanup dengan parameter --mode client. Perintah ini menghapus file konfigurasi lokal dan mengatur ulang konfigurasi agen.

az aks agent-cleanup --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --mode client

Membersihkan penyebaran mode kluster Anda menggunakan perintah az aks agent-cleanup. Pastikan untuk menentukan --namespace parameter dengan namespace tempat agen disebarkan. Perintah ini menghapus pod agen dari namespace yang ditentukan dan menghapus konfigurasi LLM yang disimpan pada kluster.

az aks agent-cleanup --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --namespace $NAMESPACE

Verifikasi pembersihan yang berhasil

Periksa apakah file konfigurasi lokal dan gambar Docker dihapus menggunakan perintah berikut:

# Check if configuration file was removed
ls ~/.azure/aksAgent.config

# Check for remaining Docker images
docker images | grep aks-agent

Periksa apakah pod agen dan sumber daya terkait dihapus dari kluster menggunakan perintah berikut dengan namespace yang sesuai:

# Check if agent pod was removed
kubectl get pods --namespace $NAMESPACE

# Check if service account was removed
kubectl get serviceaccount --namespace $NAMESPACE

# Check if namespace was removed (if it was created during init)
kubectl get namespace $NAMESPACE

Menghapus CLI 'agentic' untuk ekstensi AKS

Hapus CLI agenik untuk ekstensi AKS menggunakan az extension remove perintah .

az extension remove --name aks-agent --debug