Bagikan melalui


Tutorial: Menggunakan konfigurasi dinamis di Azure Kubernetes Service

Jika Anda menggunakan Azure Kubernetes Service (AKS), tutorial ini menunjukkan cara mengaktifkan konfigurasi dinamis untuk beban kerja anda di AKS dengan memanfaatkan Azure App Configuration dan Penyedia Kubernetes-nya. Tutorial ini mengasumsikan bahwa Anda telah melalui panduan memulai cepat dan menyiapkan Penyedia Kubernetes untuk App Configuration, jadi sebelum melanjutkan, pastikan Anda menyelesaikan panduan memulai cepat Menggunakan Azure App Configuration di Azure Kubernetes Service.

Petunjuk / Saran

Lihat opsi untuk beban kerja yang dihosting di Kubernetes untuk mengakses Azure App Configuration.

Prasyarat

Selesaikan mulai cepat: Gunakan Azure App Configuration di Azure Kubernetes Service.

Muat Ulang Data dari Konfigurasi Aplikasi

  1. Buka file appConfigurationProvider.yaml yang terletak di direktori Penyebaran . Kemudian, tambahkan bagian refresh ke properti configuration. Ini memungkinkan penyedia Kubernetes untuk memuat ulang seluruh konfigurasi setiap kali mendeteksi perubahan pada salah satu nilai kunci yang dipilih (yang dimulai dengan Pengaturan: dan tidak memiliki label). Untuk informasi selengkapnya tentang memantau perubahan konfigurasi, lihat Praktik terbaik untuk refresh konfigurasi.

    apiVersion: azconfig.io/v1
    kind: AzureAppConfigurationProvider
    metadata:
      name: appconfigurationprovider-sample
    spec:
      endpoint: <your-app-configuration-store-endpoint>
      target:
        configMapName: configmap-created-by-appconfig-provider
        configMapData: 
          type: json
          key: mysettings.json
      auth:
        workloadIdentity:
          managedIdentityClientId: <your-managed-identity-client-id>
      configuration:
        refresh:
          enabled: true
    

    Petunjuk / Saran

    Anda dapat mengatur interval properti refresh untuk menentukan waktu minimum antara penyegaran konfigurasi. Dalam contoh ini, Anda menggunakan nilai default 30 detik. Sesuaikan ke nilai yang lebih tinggi jika Anda perlu mengurangi jumlah permintaan yang dibuat ke toko Konfigurasi Aplikasi Anda.

  2. Buka file deployment.yaml di direktori Penyebaran dan tambahkan konten berikut ke bagian .spec.containers Aplikasi Anda memuat konfigurasi dari file yang dipasang pada volume yang dihasilkan oleh penyedia App Configuration Kubernetes. Dengan mengatur variabel lingkungan ini, aplikasi Anda dapat menggunakan polling untuk memantau perubahan dalam file yang dipasang.

    env:
    - name: DOTNET_USE_POLLING_FILE_WATCHER
      value: "true"
    
  3. Jalankan perintah berikut untuk menyebarkan perubahan. Ganti namespace jika Anda menggunakan aplikasi AKS yang ada.

    kubectl apply -f ./Deployment -n appconfig-demo
    
  4. Buka jendela browser, dan navigasikan ke alamat IP yang diperoleh di langkah sebelumnya. Halaman web terlihat seperti ini:

    Cuplikan layar aplikasi web dengan nilai lama.

  5. Perbarui pasangan kunci-nilai berikut di toko konfigurasi aplikasi Anda.

    Kunci Nilai
    Pengaturan:Pesan Halo dari Azure App Configuration - sekarang dengan pembaruan langsung!
  6. Setelah me-refresh browser beberapa kali, Anda akan melihat konten yang diperbarui setelah ConfigMap diperbarui dalam 30 detik.

    Cuplikan layar aplikasi web dengan nilai yang diperbarui.

Muat Ulang ConfigMap dan Secret

Penyedia Kubernetes App Configuration membuat ConfigMaps atau Secrets yang dapat digunakan sebagai variabel lingkungan atau file yang di-mount ke volume. Tutorial ini menunjukkan cara memuat konfigurasi dari file JSON menggunakan penyedia konfigurasi .NET JSON, yang secara otomatis memuat ulang konfigurasi setiap kali perubahan terdeteksi dalam file yang dipasang. Akibatnya, aplikasi Anda mendapatkan konfigurasi yang diperbarui secara otomatis setiap kali penyedia Kubernetes App Configuration memperbarui ConfigMap.

Jika aplikasi Anda bergantung pada variabel lingkungan untuk konfigurasi, mungkin perlu memulai ulang untuk mengambil nilai yang diperbarui. Di Kubernetes, restart aplikasi dapat diorkestrasi menggunakan pembaruan bergulir pada pod atau kontainer yang sesuai. Untuk mengotomatiskan pembaruan konfigurasi, Anda dapat memanfaatkan alat pihak ketiga seperti stakater/Reloader, yang dapat secara otomatis memicu pembaruan bergulir pada setiap perubahan yang dilakukan pada ConfigMaps atau Secrets.

Langkah selanjutnya

Untuk mempelajari lebih lanjut tentang Azure App Configuration Kubernetes Provider, lihat Referensi Azure App Configuration Kubernetes Provider.