Anthos Service Mesh menggunakan proxy file bantuan untuk meningkatkan keamanan, keandalan, dan kemampuan observasi jaringan. Fungsi-fungsi ini diabstraksikan dari penampung utama aplikasi dan diimplementasikan dalam proxy di luar proses umum (file bantuan), yang dikirim sebagai penampung terpisah dalam Pod yang sama. Mesh ini menyediakan fitur Anthos Service Mesh tanpa mendesain ulang aplikasi produksi untuk berpartisipasi dalam mesh layanan.
Injeksi proxy file bantuan otomatis (injeksi otomatis) terjadi saat Anthos Service Mesh mendeteksi label namespace yang Anda konfigurasikan untuk Pod workload. Proxy ini mencegat semua traffic masuk dan keluar ke workload dan berkomunikasi dengan Anthos Service Mesh.
Mengaktifkan injeksi file bantuan otomatis
Cara yang direkomendasikan untuk memasukkan proxy file bantuan adalah dengan menggunakan injektor file bantuan otomatis berbasis webhook, meskipun Anda dapat mengupdate konfigurasi Kubernetes Pod secara manual. Untuk memasukkan Pod dengan proxy file bantuan, konfigurasikan injeksi otomatis dengan memberi label namespace menggunakan label revisi yang sama dengan yang Anda tetapkan di istiod
saat menginstal Anthos Service Mesh.
Untuk mengaktifkan injeksi otomatis:
Gunakan perintah berikut untuk menemukan label revisi di
istiod
:kubectl -n istio-system get pods -l app=istiod --show-labels
Outputnya terlihat mirip dengan yang berikut ini:
NAME READY STATUS RESTARTS AGE LABELS istiod-asm-178-10-5788d57586-bljj4 1/1 Running 0 23h app=istiod,istio.io/rev=asm-178-10,istio=istiod,pod-template-hash=5788d57586 istiod-asm-178-10-5788d57586-vsklm 1/1 Running 1 23h app=istiod,istio.io/rev=asm-178-10,istio=istiod,pod-template-hash=5788d57586
Pada output, di kolom
LABELS
, catat nilai label revisiistiod
, yang mengikuti awalanistio.io/rev=
. Dalam contoh ini, nilainya adalahasm-178-10
.Terapkan label revisi ke namespace dan hapus label injeksi istio (jika ada). Dalam perintah berikut,
NAMESPACE
adalah nama namespace tempat Anda ingin mengaktifkan injeksi otomatis, danREVISION
adalah label revisi yang Anda catat pada langkah sebelumnya.kubectl label namespace NAMESPACE istio-injection- istio.io/rev=REVISION --overwrite
Jika melihat
"istio-injection not found"
pada output, Anda dapat mengabaikannya. Artinya, namespace sebelumnya tidak memiliki labelistio-injection
. Untuk penginstalan baru Anthos Service Mesh atau untuk deployment baru, namespace Anda tidak akan memiliki labelistio-injection
. Jika namespace memiliki labelistio-injection
, namespace harus dihapus agar berhasil mengaktifkan injeksi otomatis.Mulai ulang pod yang terpengaruh, menggunakan langkah-langkah di bagian berikutnya.
Memulai ulang Pod untuk memperbarui proxy file bantuan
Dengan injeksi file bantuan otomatis, Anda dapat mengupdate file bantuan untuk Pod yang ada dengan memulai ulang Pod:
Cara memulai ulang Pod bergantung pada apakah Pod dibuat sebagai bagian dari Deployment.
Jika Anda menggunakan Deployment, mulai ulang Deployment, yang akan memulai ulang semua Pod dengan file bantuan:
kubectl rollout restart deployment -n YOUR_NAMESPACE
Jika Anda tidak menggunakan Deployment, hapus Pod, lalu Pod akan otomatis dibuat ulang dengan file bantuan:
kubectl delete pod -n YOUR_NAMESPACE --all
Pastikan semua Pod di namespace memiliki file bantuan yang dimasukkan:
kubectl get pod -n YOUR_NAMESPACE
Pada contoh output dari perintah sebelumnya berikut, perhatikan bahwa kolom
READY
menunjukkan bahwa ada dua penampung untuk setiap beban kerja: penampung utama dan container untuk proxy sidecar.NAME READY STATUS RESTARTS AGE YOUR_WORKLOAD 2/2 Running 0 20s ...
Langkah selanjutnya
Pelajari lebih lanjut: