Menggunakan tag Azure di Azure Kubernetes Service (AKS)

Dengan Azure Kubernetes Service (AKS), Anda dapat mengatur tag Azure pada kluster AKS dan sumber daya terkait menggunakan Azure Resource Manager dan Azure CLI. Anda juga dapat menggunakan manifes Kubernetes untuk mengatur tag Azure untuk sumber daya tertentu. Tag Azure adalah sumber daya pelacakan yang berguna untuk proses bisnis tertentu, seperti penagihan balik.

Artikel ini menjelaskan cara mengatur tag Azure untuk kluster AKS dan sumber daya terkait.

Sebelum Anda mulai

Tinjau informasi berikut sebelum Anda mulai:

  • Tag yang diatur pada kluster AKS berlaku untuk semua sumber daya yang terkait dengan kluster, tetapi bukan kumpulan simpul. Operasi ini menimpa nilai-nilai kunci yang ada.
  • Tag yang diatur pada kumpulan node hanya berlaku untuk sumber daya yang terkait dengan kumpulan node tersebut. Operasi ini menimpa nilai-nilai kunci yang ada. Sumber daya di luar kumpulan node itu, termasuk sumber daya untuk sisa kluster dan kumpulan node lainnya, tidak terpengaruh.
  • IP publik, file, dan disk dapat memiliki tag yang ditetapkan oleh Kubernetes melalui manifes Kubernetes. Tag yang diatur dengan cara ini mempertahankan nilai Kubernetes, bahkan jika Anda memperbaruinya nanti menggunakan metode yang berbeda. Saat Anda menghapus IP publik, file, atau disk melalui Kubernetes, tag apa pun yang ditetapkan oleh Kubernetes akan dihapus. Tag pada sumber daya yang tidak dilacak Kubernetes tetap tidak terpengaruh.

Prasyarat

  • Azure CLI versi 2.0.59 atau yang lebih baru. Untuk menemukan versi Anda, jalankan az --version. Jika Anda perlu menginstalnya atau memperbarui versi Anda, lihat Menginstal Azure CLI.
  • Kubernetes versi 1.20 atau yang lebih baru.

Batasan

  • Tag Azure memiliki kunci yang tidak peka huruf besar/kecil untuk beroperasi, misalnya saat mengambil tag dengan cara mencari kuncinya. Dalam hal ini, tag dengan kunci yang ditentukan diperbarui atau diambil terlepas dari casing. Nilai tag peka huruf besar/kecil.
  • Di AKS, jika beberapa tag diatur dengan kunci yang sama tetapi huruf besar/huruf berbeda, tag tersebut digunakan dalam urutan abjad. Misalnya, {"Key1": "val1", "kEy1": "val2", "key1": "val3"} menghasilkan diaturnya Key1 dan val1.
  • Untuk sumber daya bersama, tag tidak dapat menentukan pemisahan penggunaan sumber daya sendiri.

Tag Azure dan kluster AKS

Saat Anda membuat atau memperbarui kluster AKS dengan --tags parameter , berikut ini diberi tag Azure yang Anda tentukan:

  • Kluster AKS itu sendiri dan sumber daya terkaitnya:
    • Tabel rute
    • IP Publik
    • Load balancer
    • Grup keamanan jaringan
    • Jaringan virtual
    • Kubelet msi yang dikelola AKS
    • Msi add-on yang dikelola AKS
    • Zona DNS privat yang terkait dengan kluster privat
    • Titik akhir privat yang terkait dengan kluster privat
  • Grup sumber daya node

Catatan

Azure Private DNS hanya mendukung 15 tag. Untuk informasi selengkapnya, lihat sumber daya tag.

Membuat atau memperbarui tag pada kluster AKS

Membuat kluster AKS baru

Penting

Jika Anda menggunakan sumber daya yang ada saat membuat kluster baru, seperti alamat IP atau tabel rute, az aks create perintah akan menimpa kumpulan tag. Jika Anda menghapus kluster nanti, tag apa pun yang ditetapkan oleh kluster akan dihapus.

  1. Buat kluster dan tetapkan tag Azure menggunakan az aks create perintah dengan --tags parameter .

    Catatan

    Untuk mengatur tag pada kumpulan simpul awal, set skala komputer virtual, dan setiap instans set skala komputer virtual yang terkait dengan kumpulan simpul awal, Anda juga dapat mengatur --nodepool-tags parameter .

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --tags dept=IT costcenter=9999 \
        --generate-ssh-keys
    
  2. Verifikasi bahwa tag telah diterapkan ke kluster dan sumber daya terkait menggunakan az aks show perintah .

    az aks show -g myResourceGroup -n myAKSCluster --query '[tags]'
    

    Contoh output berikut menunjukkan tag yang diterapkan ke kluster:

    {
      "clusterTags": {
        "dept": "IT",
        "costcenter": "9999"
      }
    }
    

Memperbarui kluster AKS yang ada

Penting

Mengatur tag pada kluster menggunakan az aks update perintah menimpa kumpulan tag. Misalnya, jika kluster Anda memiliki tag dept=IT dan costcenter=9999, dan Anda menggunakan az aks update dengan tag team=alpha dan costcenter=1234, daftar tag baru adalah team=alpha dan costcenter=1234.

  1. Perbarui tag pada kluster yang ada menggunakan az aks update perintah dengan --tags parameter .

    az aks update \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --tags team=alpha costcenter=1234
    
  2. Verifikasi bahwa tag telah diterapkan ke kluster dan sumber daya terkait menggunakan az aks show perintah .

    az aks show -g myResourceGroup -n myAKSCluster --query '[tags]'
    

    Contoh output berikut menunjukkan tag yang diterapkan ke kluster:

    {
      "clusterTags": {
        "team": "alpha",
        "costcenter": "1234"
      }
    }
    

Menambahkan tag ke kumpulan simpul

Anda dapat menerapkan tag Azure ke kumpulan node baru atau yang sudah ada di kluster AKS Anda. Tag-tag yang diterapkan ke kumpulan simpul diterapkan ke setiap simpul dalam kumpulan simpul dan dipertahankan melalui berbagai peningkatan. Tag juga diterapkan ke node baru yang ditambahkan ke kumpulan node selama operasi peluasan skala. Menambahkan tag dapat membantu tugas-tugas seperti penelusuran kebijakan atau estimasi biaya.

Saat Anda membuat atau memperbarui kumpulan simpul dengan --tags parameter , tag yang Anda tentukan ditetapkan ke sumber daya berikut:

  • Kumpulan simpul.
  • Set skala komputer virtual dan setiap instans set skala komputer virtual yang terkait dengan kumpulan simpul.

Membuat kumpulan simpul baru

  1. Buat kumpulan simpul dengan tag Azure menggunakan az aks nodepool add perintah dengan --tags parameter .

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name tagnodepool \
        --node-count 1 \
        --tags abtest=a costcenter=5555 \
        --no-wait
    
  2. Verifikasi bahwa tag telah diterapkan ke kumpulan simpul menggunakan az aks show perintah .

    az aks show -g myResourceGroup -n myAKSCluster --query 'agentPoolProfiles[].{nodepoolName:name,tags:tags}'
    

    Contoh output berikut menunjukkan tag yang diterapkan ke kumpulan simpul:

    [
      {
        "nodepoolName": "nodepool1",
        "tags": null
      },
      {
        "nodepoolName": "tagnodepool",
        "tags": {
          "abtest": "a",
          "costcenter": "5555"
        }
      }
    ]
    

Memperbarui kumpulan simpul yang ada

Penting

Mengatur tag pada kumpulan simpul menggunakan az aks nodepool update perintah menimpa kumpulan tag. Misalnya, jika kumpulan node Anda memiliki tag abtest=a dan costcenter=5555, dan Anda menggunakan az aks nodepool update dengan tag appversion=0.0.2 dan costcenter=4444, daftar tag baru adalah appversion=0.0.2 dan costcenter=4444.

  1. Perbarui kumpulan simpul dengan tag Azure menggunakan az aks nodepool update perintah .

    az aks nodepool update \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name tagnodepool \
        --tags appversion=0.0.2 costcenter=4444 \
        --no-wait
    
  2. Verifikasi bahwa tag telah diterapkan ke kumpulan simpul menggunakan az aks show perintah .

    az aks show -g myResourceGroup -n myAKSCluster --query 'agentPoolProfiles[].{nodepoolName:name,tags:tags}'
    

    Contoh output berikut menunjukkan tag yang diterapkan ke kumpulan simpul:

    [
      {
        "nodepoolName": "nodepool1",
        "tags": null
      },
      {
        "nodepoolName": "tagnodepool",
        "tags": {
          "appversion": "0.0.2",
          "costcenter": "4444"
        }
      }
    ]
    

Menambahkan tag menggunakan Kubernetes

Penting

Mengatur tag pada file, disk, dan IP publik menggunakan Kubernetes memperbarui kumpulan tag. Misalnya, jika disk Anda memiliki tag dept=IT dan costcenter=5555, dan Anda menggunakan Kubernetes guna mengatur tag team=beta dan costcenter=3333, daftar tag baru akan menjadi dept=IT, team=beta, dan costcenter=3333.

Setiap pembaruan yang Anda buat untuk tag melalui Kubernetes mempertahankan nilai yang ditetapkan melalui Kubernetes. Misalnya, jika disk Anda memiliki tag dept=IT dan costcenter=5555 yang ditetapkan oleh Kubernetes, dan Anda menggunakan portal guna mengatur tag team=beta dan costcenter=3333, daftar tag baru akan menjadi dept=IT, team=beta, dan costcenter=5555. Jika Anda kemudian menghapus disk melalui Kubernetes, disk akan memiliki tag team=beta.

Anda dapat menerapkan tag Azure ke IP publik, disk, dan file menggunakan manifes Kubernetes.

  • Untuk IP publik, gunakan service.beta.kubernetes.io/azure-pip-tags di bawah anotasi. Contohnya:

    apiVersion: v1
    kind: Service
    metadata:
      annotations:
        service.beta.kubernetes.io/azure-pip-tags: costcenter=3333,team=beta
    spec:
      ...
    
  • Untuk file dan disk, gunakan tag di bawah parameter. Contohnya:

    ---
    apiVersion: storage.k8s.io/v1
    ...
    parameters:
      ...
      tags: costcenter=3333,team=beta
    ...
    

Langkah berikutnya

Pelajari selengkapnya tentang menggunakan label dalam kluster AKS.