API bidang kontrol xDS

Traffic Director dan kliennya (proxy Envoy atau library gRPC tanpa proxy) menggunakan xDS API open source untuk bertukar informasi. Saat Anda mengonfigurasi Traffic Director, misalnya, menggunakan resource seperti aturan penerusan dan layanan backend, Traffic Director mengonversi resource ini menjadi konfigurasi xDS yang dibagikan kepada kliennya.

Dukungan versi xDS

Traffic Director mendukung xDS v3 (sangat dianjurkan) dan xDS v2. Dukungan untuk xDS v2 akan berakhir pada 20 Juni 2024. Jika Anda men-deploy Traffic Director untuk pertama kalinya, sebaiknya gunakan xDS v3.

Untuk menentukan versi Envoy dan gRPC yang mendukung xDS v3, lihat dokumentasi Envoy dan gRPC.

Bermigrasi dari xDS v2 ke xDS v3

Ada dua langkah dalam proses migrasi:

  1. Perbarui izin Identity and Access Management (IAM) yang diberikan ke akun layanan yang digunakan klien Anda (proxy Envoy atau library gRPC tanpa proxy) saat terhubung ke Traffic Director.
  2. Update dan deploy ulang aplikasi Anda. Langkah-langkah spesifiknya dapat bervariasi bergantung pada deployment Anda, dan akan dijelaskan di bagian berikut.

Memperbarui izin IAM akun layanan

Pastikan akun layanan yang digunakan oleh klien Traffic Director Anda (Envoy, gRPC tanpa proxy) memiliki izin trafficdirector.networks.reportMetrics dan trafficdirector.networks.getConfigs. Izin ini disertakan dalam peran Traffic Director Client IAM (roles/trafficdirector.client).

Jika menggunakan peran IAM khusus, Anda dapat menambahkan izin ini ke peran khusus tersebut. Setelah menambahkan izin, Anda dapat menghapus peran Compute Network Viewer (roles/compute.networkViewer) dan/atau peran Compute Network Admin (roles/compute.networkAdmin) dari akun layanan.

Mengupdate aplikasi Anda

Setelah Anda memperbarui izin IAM pada akun layanan, perbarui aplikasi Anda.

Envoy untuk Compute Engine

Jika Anda menggunakan deployment Envoy otomatis dengan Compute Engine, lakukan rolling restart atau penggantian grup instance terkelola. Versi Envoy yang mendukung xDS v3 otomatis ditambahkan ke instance virtual machine (VM) Anda.

Jika Anda men-deploy Envoy secara manual pada VM Compute Engine, ikuti panduan penyiapan untuk membuat template instance baru. Panduan penyiapan menggunakan versi terbaru Envoy yang mendukung xDS v3. Selanjutnya, lakukan update berkelanjutan, dengan menentukan template instance baru.

Envoy di GKE

Jika Anda menggunakan injeksi Envoy otomatis dengan Google Kubernetes Engine (GKE), instal ulang injektor sidecar di cluster GKE yang Anda gunakan dengan Traffic Director. Saat Pod baru dibuat, proxy file bantuan Envoy yang mendukung xDS v3 akan otomatis dimasukkan bersama Pod workload Anda.

Jika Anda menggunakan injeksi file bantuan manual di GKE, deploy ulang proxy file bantuan di setiap cluster GKE.

gRPC tanpa proxy

Ada dua langkah dalam proses migrasi:

  1. Pastikan versi gRPC yang Anda gunakan mendukung xDS v3. Untuk informasi selengkapnya, lihat Fitur xDS di gRPC.

  2. Update konfigurasi bootstrap dengan menggunakan langkah-langkah berikut:

    1. Di kolom "xds_servers", tambahkan "server_features": ["xds_v3"] seperti yang ditunjukkan dalam contoh file bootstrap ini.
    2. ID node harus dalam format berikut seperti ditunjukkan pada contoh sebelumnya:

      "projects/PROJECT_NUMBER/networks/NETWORK_NAME/nodes/ID"
      

Setelah membuat perubahan sebelumnya pada aplikasi Anda, build dan deploy ulang aplikasi.

Perubahan sebelumnya pada konfigurasi bootstrap tidak memengaruhi versi gRPC yang tidak mendukung xDS v3. Selain itu, jika perubahan sebelumnya tidak ada dalam konfigurasi bootstrap, versi gRPC yang mendukung xDS v3 akan menggunakan xDS v2.

Untuk memudahkan, Anda dapat menggunakan generator bootstrap gRPC Traffic Director versi 0.11.0 atau yang lebih baru untuk membuat konfigurasi bootstrap yang kompatibel dengan xDS v3.

Memastikan bahwa klien Traffic Director menggunakan xDS v3

Untuk memeriksa konfigurasi yang dihasilkan Traffic Director untuk kliennya, Anda dapat menggunakan alat status klien. Alat ini menyatakan apakah konfigurasinya xDS v2 atau xDS v3.

Langkah selanjutnya