Service Mesh (ASM) mendukung dua mode sidecarless: Mode Ambient Mesh dan mode Alibaba Centralized Mesh Gateway (ACMG). Topik ini menjelaskan cara menerapkan aplikasi contoh dalam kedua mode tersebut. Ini membantu Anda menyiapkan lingkungan terlebih dahulu sehingga Anda dapat segera mencoba fitur dari mode sidecarless.
Prasyarat
Sebuah kluster Container Service for Kubernetes (ACK) yang memenuhi kondisi tertentu telah dibuat. Untuk informasi lebih lanjut, lihat bagian "Kluster Kubernetes yang didukung dan konfigurasinya" di Batasan.
Sebuah instance ASM telah dibuat dan diaktifkan dengan mode Ambient Mesh atau mode ACMG.
Di bagian Dataplane Mode pada halaman Create Service Mesh, pilih Enable Ambient Mesh mode atau Enable ACMG Mode. Konfigurasikan pengaturan lainnya sesuai dengan kebutuhan bisnis Anda. Untuk informasi lebih lanjut, lihat Buat instance ASM.
Kluster ACK telah ditambahkan ke instance ASM. Untuk informasi lebih lanjut, lihat Tambahkan kluster ke instance ASM.
Sebuah gateway ingress telah dibuat. Untuk informasi lebih lanjut, lihat Buat gateway ingress.
Terapkan aplikasi contoh
Dalam contoh ini, aplikasi Bookinfo diterapkan. Untuk informasi lebih lanjut, lihat Terapkan aplikasi di kluster ACK yang ditambahkan ke instance ASM.
Terapkan aplikasi contoh di kluster ACK
Masuk ke Konsol ASM. Di panel navigasi sisi kiri, pilih .
Pada halaman Mesh Management, klik nama instance ASM. Di panel navigasi sisi kiri, pilih .
Aktifkan mode Ambient Mesh atau mode ACMG.
Mode Ambient Mesh
Pada halaman Global Namespace, temukan namespace default dan klik Switch to Ambient Mesh Mode di kolom Dataplane Mode. Di pesan Submit, klik OK.
Mode ACMG
Gunakan kubectl untuk terhubung ke instance ASM berdasarkan informasi dalam file kubeconfig dan aktifkan mode ACMG.
kubectl label namespace default istio.io/dataplane-mode=acmg
Unduh file YAML aplikasi Bookinfo dari repositori Istio di GitHub. Lalu, jalankan perintah berikut untuk menerapkan aplikasi Bookinfo di namespace default:
kubectl apply -f bookinfo.yamlTerapkan aplikasi sleep.
Buat file sleep.yaml yang berisi konten berikut:
Jalankan perintah berikut untuk menerapkan aplikasi sleep di namespace default:
kubectl apply -f sleep.yaml
Terapkan aplikasi notsleep.
Buat file notsleep.yaml yang berisi konten berikut:
Jalankan perintah berikut untuk menerapkan aplikasi notsleep di namespace default:
kubectl apply -f notsleep.yaml
Terapkan sumber daya mesh di instance ASM
Buat file bookinfo-gateway.yaml yang berisi konten berikut.
File YAML digunakan untuk membuat gateway Istio dan layanan virtual.
Gunakan kubectl untuk terhubung ke instance ASM berdasarkan informasi dalam file kubeconfig, lalu jalankan perintah berikut untuk menerapkan sumber daya mesh:
kubectl apply -f bookinfo-gateway.yaml
Verifikasi fitur dasar
Jalankan perintah berikut untuk mengonfigurasi variabel lingkungan untuk gateway ingress:
export GATEWAY_HOST=istio-ingressgateway.istio-system export GATEWAY_SERVICE_ACCOUNT=ns/istio-system/sa/istio-ingressgatewayJalankan perintah berikut untuk menguji apakah aplikasi Bookinfo bekerja dengan baik dengan atau tanpa gateway ingress.
Jalankan perintah berikut:
kubectl exec deploy/sleep -- curl -s "http://$GATEWAY_HOST/productpage" | grep -o "<title>.*</title>"Output yang diharapkan:
<title>Simple Bookstore App</title>Jalankan perintah berikut:
kubectl exec deploy/sleep -- curl -s http://productpage:9080/ | grep -o "<title>.*</title>"Output yang diharapkan:
<title>Simple Bookstore App</title>Jalankan perintah berikut:
kubectl exec deploy/notsleep -- curl -s http://productpage:9080/ | grep -o "<title>.*</title>"Output yang diharapkan:
<title>Simple Bookstore App</title>Output sebelumnya menunjukkan bahwa aplikasi Bookinfo dapat bekerja dengan baik dengan atau tanpa gateway ingress.