Menggunakan Layanan Konfigurasi Aplikasi untuk Tanzu

Catatan

Azure Spring Apps adalah nama baru untuk layanan Azure Spring Cloud. Meskipun layanan memiliki nama baru, Anda akan melihat nama lama di beberapa tempat untuk sementara saat kami berupaya memperbarui aset seperti cuplikan layar, video, dan diagram.

Artikel ini berlaku untuk:❌ Tingkat Dasar/Standar ✔️ ️Tingkat Enterprise

Artikel ini berisikan cara menggunakan Layanan Konfigurasi Aplikasi untuk VMware Tanzu® dengan Tingkat Enterprise Azure Spring Apps.

Layanan Konfigurasi Aplikasi untuk Tanzu adalah salah satu komponen VMware Tanzu komersial. Komponen ini memungkinkan manajemen sumber daya ConfigMap berbasis Kubernetes yang diisi dari properti yang ditentukan dalam satu atau beberapa repositori Git.

Dengan Layanan Konfigurasi Aplikasi untuk Tanzu, Anda memiliki tempat pusat untuk mengelola properti eksternal untuk aplikasi di semua lingkungan.

Prasyarat

  • Instans tingkat Enterprise Azure Spring Apps dengan dukungan Layanan Konfigurasi Aplikasi untuk Tanzu yang sudah tersedia. Untuk informasi lebih lanjut, lihat Mulai Cepat: Menyediakan instans layanan Azure Spring Apps menggunakan tingkat Enterprise.

    Catatan

    Untuk menggunakan Layanan Konfigurasi Aplikasi untuk Tanzu, Anda harus mengaktifkannya saat menyediakan instans layanan Azure Spring Apps Anda. Saat ini, Anda tidak dapat mengaktifkannya setelah proses provisi.

Mengonfigurasi pengaturan Layanan Konfigurasi Aplikasi untuk Tanzu

Layanan Konfigurasi Aplikasi untuk Tanzu mendukung Azure DevOps, GitHub, GitLab, dan Bitbucket untuk menyimpan file konfigurasi Anda.

Untuk mengelola pengaturan layanan, buka bagian Pengaturan dan tambahkan entri baru di bagian Repositori.

Screenshot of where to add a repository.

Properti untuk setiap entri dijelaskan dalam tabel berikut ini.

Properti Diperlukan? Deskripsi
Nama Ya Nama unik untuk melabeli setiap repositori Git.
Pola Ya Pola untuk mencari di repositori Git. Untuk setiap pola, gunakan format seperti {application} atau {application}/{profile}, bukan {application}-{profile}.yml, dan pisahkan polanya dengan koma. Untuk informasi lebih lanjut, lihat bagian Pola.
URI Ya URI Git (misalnya, https://github.com/Azure-Samples/piggymetrics-config atau git@github.com:Azure-Samples/piggymetrics-config)
Label Ya Nama cabang yang akan dicari di repositori Git.
Jalur pencarian Tidak Jalur pencarian opsional yang dipisahkan oleh koma untuk mencari subdirektori repositori Git.

Pola

Konfigurasi akan ditarik dari backend Git menggunakan apa yang telah ditentukan dalam pola. Pola adalah kombinasi dari {application}/{profile}, seperti yang dijelaskan dalam daftar berikut.

  • {application} - Nama aplikasi yang konfigurasinya sedang diambil. Nilai application dianggap sebagai aplikasi default dan menyertakan konfigurasi yang sama dengan konfigurasi di banyak aplikasi. Nilai yang lain menentukan aplikasi tertentu dan akan menyertakan properti aplikasi yang ditentukan dan properti yang sama untuk aplikasi default.
  • {profile} - Opsional. Nama profil tempat properti dapat diambil. Nilai kosong, atau nilai default menyertakan properti yang sama dengan setiap profil apa pun. Nilai non-default mencakup properti untuk profil dan properti yang ditentukan untuk profil default.

Autentikasi

Gambar berikut menunjukkan tiga jenis autentikasi repositori yang didukung oleh Layanan Konfigurasi Aplikasi untuk Tanzu.

Screenshot of where to edit authentication types.

  • Repositori publik.

    Anda tidak memerlukan konfigurasi Autentikasi tambahan saat menggunakan repositori publik. Cukup pilih Publik dalam formulir Autentikasi.

  • Repositori privat dengan autentikasi dasar.

    Tabel berikut ini menunjukkan semua properti yang dapat dikonfigurasi yang digunakan untuk menyiapkan repositori Git privat dengan autentikasi dasar.

    Properti Diperlukan? Deskripsi
    nama pengguna Ya Nama pengguna yang digunakan untuk mengakses repositori.
    kata sandi Ya Kata sandi yang digunakan untuk mengakses repositori.
  • Repositori privat dengan autentikasi SSH.

    Tabel berikut ini menunjukkan semua properti yang dapat dikonfigurasi yang digunakan untuk menyiapkan repositori Git privat dengan SSH.

    Properti Diperlukan? Deskripsi
    Kunci privat Ya Kunci privat yang mengidentifikasi pengguna Git. Kunci privat yang dienkripsi frase sandi tidak didukung.
    Kunci host Tidak Kunci host server Git. Jika Anda telah tersambung ke server melalui Git di baris perintah, kunci host ada di file .ssh/known_hosts Anda. Jangan sertakan awalan algoritma, karena awalan tersebut ditentukan dalam Host key algorithm.
    Algoritma kunci host Tidak Algoritma hostKey: salah satu dari ssh-dss, ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, dan ecdsa-sha2-nistp521. (Diperlukan jika memberikan Host key).
    Pemeriksaan kunci host yang ketat Tidak Nilai opsional yang menunjukkan apakah backend harus diabaikan jika mengalami kesalahan saat menggunakan Host key yang disediakan. Nilai yang berlaku adalah true atau false. Nilai defaultnya adalah true.

Untuk memvalidasi akses ke URI target, pilih Validasi. Setelah validasi berhasil diselesaikan, pilih Terapkan untuk memperbarui pengaturan konfigurasi.

Melakukan refresh strategi

Gunakan langkah-langkah berikut untuk melakukan refresh konfigurasi aplikasi setelah memperbarui file konfigurasi di repositori Git.

  1. Muat konfigurasi ke Layanan Konfigurasi Aplikasi untuk Tanzu.

    Frekuensi refresh dikelola oleh Azure Spring Apps dan sifatnya tetap, yaitu refresh setiap 60 detik.

  2. Muat konfigurasi ke aplikasi Anda.

Aplikasi Spring menyimpan properti sebagai bean Konteks Aplikasi Spring melalui antarmuka Lingkungan. Daftar berikut berisikan beberapa cara untuk memuat konfigurasi baru:

  • Mulai ulang aplikasi. Setelah menghidupkan ulang, aplikasi akan selalu memuat konfigurasi baru.

  • Panggil titik akhir /actuator/refresh yang diekspos pada klien konfigurasi melalui Aktuator Spring.

    Untuk menggunakan metode ini, tambahkan dependensi berikut ke file pom.xml klien konfigurasi Anda.

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    

    Anda juga dapat mengaktifkan titik akhir aktuator dengan menambahkan konfigurasi berikut:

    management.endpoints.web.exposure.include=refresh, bus-refresh, beans, env
    

    Setelah memuat ulang sumber properti dengan memanggil titik akhir /actuator/refresh, atribut yang terikat dengan @Value dalam bean yang memiliki anotasi @RefreshScope akan di-refresh.

    @Service
    @Getter @Setter
    @RefreshScope
    public class MyService {
        @Value
        private Boolean activated;
    }
    

    Selanjutnya, gunakan curl dengan titik akhir aplikasi untuk me-refresh konfigurasi baru.

    curl -X POST http://{app-endpoint}/actuator/refresh
    

Mengonfigurasi pengaturan Layanan Konfigurasi Aplikasi untuk Tanzu menggunakan portal

Anda dapat mengonfigurasi Layanan Konfigurasi Aplikasi untuk Tanzu menggunakan portal dengan mengikuti langkah-langkah berikut:

  1. Pilih Layanan Konfigurasi Aplikasi.

  2. Pilih Gambaran umum untuk menampilkan status dan sumber daya yang dialokasikan ke Layanan Konfigurasi Aplikasi untuk Tanzu.

    Application Configuration Service Overview screen

  3. Pilih Pengaturan dan tambahkan entri baru di bagian Repositori dengan informasi backend Git.

  4. Pilih Validasi untuk memvalidasi akses ke URI target. Setelah validasi berhasil diselesaikan, pilih Terapkan untuk memperbarui pengaturan konfigurasi.

    Application Configuration Service Settings overview

Mengonfigurasi pengaturan Layanan Konfigurasi Aplikasi untuk Tanzu menggunakan CLI

Anda dapat mengonfigurasi Layanan Konfigurasi Aplikasi untuk Tanzu menggunakan CLI dengan mengikuti langkah-langkah berikut:

az spring application-configuration-service git repo add \
    --name <entry-name> \
    --patterns <patterns> \
    --uri <git-backend-uri> \
    --label <git-branch-name>

Menggunakan Layanan Konfigurasi Aplikasi untuk Tanzu dengan aplikasi menggunakan portal

Saat Anda menggunakan Layanan Konfigurasi Aplikasi untuk Tanzu dengan back end Git, ingatlah item berikut.

Untuk menggunakan konfigurasi terpusat, Anda harus mengikat aplikasi ke Layanan Konfigurasi Aplikasi untuk Tanzu. Setelah mengikat aplikasi, selanjutnya Anda harus mengonfigurasi pola mana yang akan digunakan oleh aplikasi dengan mengikuti langkah-langkah berikut:

  1. Buka tab Pengikatan aplikasi.

  2. Pilih Ikat aplikasi dan pilih satu aplikasi di menu dropdown. Pilih Terapkan untuk mengikat aplikasi tersebut.

    Screenshot of where to select the application to bind.

    Catatan

    Saat mengubah status ikat/lepas, Anda harus menghidupkan ulang atau menyebarkan ulang aplikasi agar perubahan diterapkan.

  3. Pilih Aplikasi, lalu pilih pola yang akan digunakan oleh aplikasi.

    a. Di menu navigasi sebelah kiri, pilih Aplikasi untuk menampilkan daftar semua aplikasi.

    b. Pilih aplikasi target yang polanya akan dikonfigurasi dari kolom name.

    c. Di panel navigasi sebelah kiri, pilih Konfigurasi, lalu pilih Pengaturan umum.

    d. Di dropdown Pola file konfigurasi, pilih satu atau beberapa pola dari daftar.

    Screenshot of the pattern selection screen.

    e. Pilih Simpan

Menggunakan Layanan Konfigurasi Aplikasi untuk Tanzu dengan aplikasi menggunakan CLI

Anda dapat menggunakan Layanan Konfigurasi Aplikasi untuk Tanzu dengan aplikasi, menggunakan perintah ini:

az spring application-configuration-service bind --app <app-name>
az spring app deploy \
    --name <app-name> \
    --artifact-path <path-to-your-JAR-file> \
    --config-file-pattern <config-file-pattern>

Langkah berikutnya