Menginstal Anthos Service Mesh
Halaman ini menjelaskan cara menginstal Anthos Service Mesh di GKE dan platform lokal:
- Jalankan
asmcli
untuk melakukan penginstalan baru Anthos Service Mesh 1.15.7-asm.23. - Men-deploy gateway masuk (opsional).
- Deploy atau deploy ulang workload Anda untuk memasukkan proxy file bantuan.
Batasan
Perhatikan batasan berikut:
Semua cluster Anthos Service Mesh untuk satu mesh harus didaftarkan ke fleet yang sama setiap saat untuk menggunakan Anthos Service Mesh. Cluster lain dalam project cluster Anthos Service Mesh tidak boleh didaftarkan ke fleet yang berbeda.
Alat
asmcli
harus memiliki akses ke endpoint Google Kubernetes Engine (GKE). Anda dapat mengonfigurasi akses melalui server"jump", seperti VM Compute Engine dalam Virtual Private Cloud (VPC) yang memberikan akses tertentu.
Sebelum memulai
Sebelum memulai, pastikan Anda:
- Tinjau prasyarat.
- Tinjau informasi di Merencanakan penginstalan.
- Instal alat yang diperlukan.
- Download
asmcli
. - Berikan izin admin cluster.
- Validasi project dan cluster.
Menginstal Anthos Service Mesh
Berikut adalah penjelasan cara menginstal Anthos Service Mesh:
Jalankan
asmcli install
untuk menginstal bidang kontrol dalam cluster di satu cluster. Lihat bagian berikut untuk mengetahui contoh command line. Contoh tersebut berisi argumen yang diperlukan dan argumen opsional yang mungkin berguna bagi Anda. Sebaiknya selalu tentukan argumenoutput_dir
agar Anda dapat dengan mudah menemukan gateway contoh dan alat sepertiistioctl
. Lihat menu navigasi di sebelah kanan untuk melihat daftar contoh.Cluster GKE pribadi memerlukan langkah konfigurasi firewall tambahan agar mengizinkan traffic ke
istiod
.Secara opsional, instal gateway masuk. Secara default,
asmcli
tidak menginstalistio-ingressgateway
. Sebaiknya deploy serta kelola bidang kontrol dan gateway secara terpisah. Jika Anda perlu menginstalistio-ingressgateway
default dengan bidang kontrol dalam cluster, sertakan argumen--option legacy-default-ingressgateway
.Untuk menyelesaikan penyiapan Anthos Service Mesh, Anda harus mengaktifkan injeksi file bantuan otomatis dan men-deploy atau men-deploy ulang workload.
Jika Anda menginstal Anthos Service Mesh di lebih dari satu cluster, jalankan
asmcli install
di setiap cluster. Saat menjalankanasmcli install
, pastikan untuk menggunakanFLEET_PROJECT_ID
yang sama untuk setiap cluster. Setelah Anthos Service Mesh terinstal, lihat petunjuk untuk menyiapkan mesh multi-cluster di GKE atau di luar Google Cloud.Jika cluster berada di jaringan yang berbeda (karena berada dalam mode pulau), Anda harus meneruskan nama jaringan yang unik ke
asmcli
menggunakan flag--network_id
.
Instal fitur default dan Mesh CA
Bagian ini menunjukkan cara menjalankan asmcli
untuk menginstal Anthos Service Mesh dengan
fitur yang didukung default untuk platform Anda dan
mengaktifkan certificate authority (Mesh CA) Anthos Service Mesh sebagai certificate authority.
GKE
Jalankan perintah berikut untuk menginstal bidang kontrol dengan fitur default dan Mesh CA. Masukkan nilai Anda di placeholder yang disediakan.
./asmcli install \
--project_id PROJECT_ID \
--cluster_name CLUSTER_NAME \
--cluster_location CLUSTER_LOCATION \
--fleet_id FLEET_PROJECT_ID \
--output_dir DIR_PATH \
--enable_all \
--ca mesh_ca
--project_id
,--cluster_name
, dan--cluster_location
Tentukan project ID tempat cluster berada, nama cluster, dan zona atau region cluster.--fleet_id
Project ID untuk project fleet host. Jika Anda tidak menyertakan opsi ini,asmcli
akan menggunakan project tempat cluster dibuat saat mendaftarkan cluster tersebut.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
--ca mesh_ca
Gunakan Mesh CA sebagai certificate authority.asmcli
mengonfigurasi Mesh CA untuk menggunakan identitas workload fleet
Lokal
Jalankan perintah berikut di GKE di VMware atau Google Distributed Cloud Virtual for Bare Metal untuk menginstal bidang kontrol dengan fitur default dan Mesh CA. Masukkan nilai Anda di placeholder yang disediakan.
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca mesh_ca
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
--ca mesh_ca
Gunakan Mesh CA sebagai certificate authority.asmcli
mengonfigurasi Mesh CA untuk menggunakan identitas workload fleet
Untuk melihat SLO dan metrik infrastruktur di UI Anthos Service Mesh, Anda juga harus melakukan tiga langkah pertama di artikel Mengaktifkan logging dan pemantauan aplikasi. Jika logging dan pemantauan tidak diaktifkan dan tidak menerima log serta metrik kustom, dasbor Anthos Service Mesh tidak akan menampilkan SLO, log error, atau metrik CPU dan memori.
Instal fitur default dan Layanan Certificate Authority (CA)
Bagian ini menunjukkan cara menjalankan asmcli
untuk menginstal Anthos Service Mesh dengan
fitur yang didukung default untuk platform Anda dan
mengaktifkan CA Service sebagai certificate authority.
Selain Mesh CA, Anda dapat mengonfigurasi Anthos Service Mesh untuk menggunakan Certificate Authority Service. Panduan ini memberi Anda peluang untuk berintegrasi dengan CA Service, yang direkomendasikan untuk kasus penggunaan berikut:
- Jika Anda memerlukan certificate authority untuk menandatangani sertifikat workload pada cluster yang berbeda.
- Jika Anda ingin menggunakan sertifikat plugin CA Kustom
istiod
. - Jika Anda perlu mencadangkan kunci penandatanganan di HSM terkelola.
- Jika Anda berada dalam industri yang diatur dengan regulasi ketat dan tunduk pada kepatuhan.
- Jika Anda ingin menggabungkan Anthos Service Mesh CA ke root certificate perusahaan kustom untuk menandatangani sertifikat workload.
Biaya Mesh CA tercakup dalam harga Anthos Service Mesh. CA Service tidak disertakan dalam harga dasar Anthos Service Mesh dan dikenai biaya secara terpisah. Selain itu, Layanan CA dilengkapi dengan SLA eksplisit, tetapi Mesh CA tidak.
Untuk integrasi ini, semua workload di Anthos Service Mesh diberi peran IAM:
privateca.workloadCertificateRequester
privateca.auditor
privateca.template
(wajib jika menggunakan template sertifikat)
Konfigurasi Layanan CA
- Buat kumpulan CA
di tingkat
DevOps
dan di region yang sama dengan cluster yang dilayaninya untuk menghindari masalah latensi yang berlebihan atau potensi gangguan lintas-region. Untuk mengetahui informasi selengkapnya, lihat Tingkatan yang dioptimalkan untuk workload. - Buat CA untuk memiliki minimal satu certificate authority aktif di kumpulan CA dalam project yang sama dengan cluster GKE. Gunakan CA subordinat untuk menandatangani sertifikat beban kerja Anthos Service Mesh. Catat kumpulan CA yang sesuai dengan CA subordinat.
Jika dimaksudkan hanya untuk layanan sertifikat untuk workload Anthos Service Mesh, siapkan kebijakan penerbitan berikut untuk kumpulan CA:
policy.yaml
baselineValues: keyUsage: baseKeyUsage: digitalSignature: true keyEncipherment: true extendedKeyUsage: serverAuth: true clientAuth: true caOptions: isCa: false identityConstraints: allowSubjectPassthrough: false allowSubjectAltNamesPassthrough: true celExpression: expression: subject_alt_names.all(san, san.type == URI && san.value.startsWith("spiffe://PROJECT_ID.svc.id.goog/ns/") )
Untuk memperbarui kebijakan penerbitan kumpulan CA, gunakan perintah berikut:
gcloud privateca pools update CA_POOL --location ca_region --issuance-policy policy.yaml
Untuk mengetahui informasi tentang cara menetapkan kebijakan pada kumpulan, lihat Menggunakan kebijakan penerbitan sertifikat.
Jika Anda menggunakan template sertifikat, konfigurasikan sekarang. Untuk mengetahui informasi selengkapnya, ikuti Panduan Layanan CA untuk sertifikat workload identity. Pastikan template sertifikat dibuat di region yang sama dengan kumpulan CA. Jika ada beberapa region untuk kumpulan CA, buat template sertifikat per region.
Mengonfigurasi Anthos Service Mesh untuk menggunakan CA Service
GKE
Instal bidang kontrol Anthos Service Mesh yang menggunakan Certificate Authority Service sebagai CA:
./asmcli install \ --project_id PROJECT_ID \ --cluster_name CLUSTER_NAME \ --cluster_location CLUSTER_LOCATION \ --enable_all \ --ca gcp_cas \ --ca_pool projects/CA_POOL_PROJECT_ID/locations/ca_region/caPools/CA_POOL
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
--ca gcp_cas
Gunakan Certificate Authority Service sebagai certificate authority. Mengubah certificate authority selama upgrade menyebabkan periode nonaktif.asmcli
mengonfigurasi Certificate Authority Service untuk menggunakan identitas workload fleet--ca_pool
ID lengkap untuk Kumpulan CA Certificate Authority Service. Jika template sertifikat digunakan, tambahkan ID template yang dipisahkan dengan:
.--ca_pool projects/CA_POOL_PROJECT_ID/locations/ca_region/caPools/CA_POOL:projects/CA_POOL_PROJECT_ID/locations/ca_region/certificateTemplates/CERT_TEMPLATE_ID
Instal gateway masuk untuk menerima koneksi HTTP/TCP masuk atau keluar. Untuk mengetahui detailnya, lihat Menginstal Gateway.
Selesaikan penginstalan Anthos Service Mesh untuk mengaktifkan injeksi proxy sidecar otomatis pada workload Anda. Untuk mengetahui detailnya, lihat Men-deploy dan men-deploy ulang workload.
Lokal
Jalankan perintah berikut di GKE di VMware atau Google Distributed Cloud Virtual for Bare Metal untuk menginstal bidang kontrol dengan fitur default dan Certificate Authority Service. Masukkan nilai Anda di placeholder yang disediakan.
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
:./asmcli install \ --kubeconfig KUBECONFIG_FILE \ --fleet_id FLEET_PROJECT_ID \ --output_dir DIR_PATH \ --enable_all \ --ca gcp_cas \ --platform multicloud \ --ca_pool projects/CA_POOL_PROJECT_ID/locations/ca_region/caPools/CA_POOL
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
--ca gcp_cas
Gunakan Certificate Authority Service sebagai certificate authority. Mengubah certificate authority selama upgrade menyebabkan periode nonaktif.asmcli
mengonfigurasi Certificate Authority Service untuk menggunakan identitas workload fleet--ca_pool
ID lengkap untuk Kumpulan CA Certificate Authority Service. Jika Anda menggunakan template sertifikat, tambahkan ID template yang dipisahkan dengan:
. Contoh:--ca_pool projects/CA_POOL_PROJECT_ID/locations/ca_region/caPools/CA_POOL:projects/CA_POOL_PROJECT_ID/locations/ca_region/certificateTemplates/CERT_TEMPLATE_ID
Untuk melihat SLO dan metrik infrastruktur di UI Anthos Service Mesh, Anda juga harus melakukan tiga langkah pertama di artikel Mengaktifkan logging dan pemantauan aplikasi. Jika logging dan pemantauan tidak diaktifkan dan tidak menerima log serta metrik kustom, dasbor Anthos Service Mesh tidak akan menampilkan SLO, log error, atau metrik CPU dan memori.
Menginstal fitur default dengan Istio CA
Bagian ini menjelaskan cara:
- Buat sertifikat dan kunci untuk Istio CA yang digunakan Anthos Service Mesh untuk menandatangani workload Anda.
- Jalankan
asmcli
untuk menginstal Anthos Service Mesh dengan fitur default dan mengaktifkan Istio CA.
Secara default, yang menginstal Anthos Service Mesh dengan metrik laporan Istio CA ke Prometheus. Jika ingin menggunakan dasbor Anthos Service Mesh, Anda harus mengaktifkan Stackdriver. Untuk informasi selengkapnya, lihat Menginstal dengan fitur opsional.
Untuk keamanan terbaik, sebaiknya pertahankan root CA offline dan gunakan CA subordinat untuk menerbitkan sertifikat bagi setiap cluster. Untuk informasi selengkapnya, lihat Mencolokkan Sertifikat CA. Dalam konfigurasi ini, semua beban kerja di mesh layanan menggunakan root certificate authority (CA) yang sama. Setiap CA Anthos Service Mesh menggunakan sertifikat dan kunci penandatanganan CA perantara, yang ditandatangani oleh root CA. Jika beberapa CA berada dalam mesh, hal ini akan menetapkan hierarki kepercayaan di antara CA. Anda dapat mengulangi langkah-langkah ini untuk menyediakan sertifikat dan kunci bagi sejumlah certificate authority.
Makefile untuk membuat sertifikat terletak di subdirektori istio-1.15.7-asm.23
dalam direktori --output_dir
yang Anda tentukan dalam perintah asmcli validate
. Jika Anda tidak menjalankan asmcli validate
,
atau tidak memiliki direktori yang didownload secara lokal, Anda bisa mendapatkan Makefile dengan
mendownload file penginstalan Anthos Service Mesh
dan mengekstrak isinya.
Ubah ke direktori
istio-1.15.7-asm.23
.Buat direktori untuk sertifikat dan kunci:
mkdir -p certs && \ pushd certs
Buat root certificate dan kunci:
make -f ../tools/certs/Makefile.selfsigned.mk root-ca
Tindakan ini menghasilkan file berikut:
- root-cert.pem: root certificate
- root-key.pem: kunci root
- root-ca.conf: konfigurasi untuk openssl guna membuat root certificate
- root-cert.csr: CSR untuk root certificate
Buat kunci dan sertifikat perantara:
make -f ../tools/certs/Makefile.selfsigned.mk cluster1-cacerts
Tindakan ini menghasilkan file ini dalam direktori bernama
cluster1
:- ca-cert.pem: sertifikat perantara
- ca-key.pem: kunci perantara
- cert-chain.pem: rantai sertifikat yang digunakan
istiod
- root-cert.pem: root certificate
Jika Anda melakukan langkah-langkah ini menggunakan komputer offline, salin direktori yang dihasilkan ke komputer yang memiliki akses ke cluster.
Kembali ke direktori sebelumnya:
popd
Jalankan
asmcli
untuk menginstal mesh menggunakan Istio CA:GKE
Jalankan perintah berikut untuk menginstal bidang kontrol dengan fitur default dan Istio CA. Masukkan nilai Anda di placeholder yang disediakan.
./asmcli install \ --project_id PROJECT_ID \ --cluster_name CLUSTER_NAME \ --cluster_location CLUSTER_LOCATION \ --fleet_id FLEET_PROJECT_ID \ --output_dir DIR_PATH \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
--project_id
,--cluster_name
, dan--cluster_location
Tentukan project ID tempat cluster berada, nama cluster, dan zona atau region cluster.--fleet_id
Project ID untuk project fleet host. Jika Anda tidak menyertakan opsi ini,asmcli
akan menggunakan project tempat cluster dibuat saat mendaftarkan cluster tersebut.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate--ca_key
Kunci untuk intermediate certificate--root_cert
Root certificate--cert_chain
Rantai sertifikat
Lokal
Jalankan perintah berikut di GKE di VMware atau Google Distributed Cloud Virtual for Bare Metal untuk menginstal bidang kontrol dengan fitur default dan Istio CA. Masukkan nilai Anda di placeholder yang disediakan.
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate--ca_key
Kunci untuk intermediate certificate--root_cert
Root certificate--cert_chain
Rantai sertifikat
AWS
Jalankan perintah berikut di GKE di AWS untuk menginstal bidang kontrol dengan fitur default dan Istio CA. Masukkan nilai Anda di placeholder yang disediakan. Anda dapat memilih untuk mengaktifkan Ingress ke subnet publik atau subnet pribadi.
Publik
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate.--ca_key
Kunci untuk intermediate certificate.--root_cert
Root certificate.--cert_chain
Rantai sertifikat.
Pribadi
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Simpan YAML berikut ke file bernama
istio-operator-internal-lb.yaml
:apiVersion: install.istio.io/v1alpha1 kind: IstioOperator spec: components: ingressGateways: - enabled: true k8s: serviceAnnotations: service.beta.kubernetes.io/aws-load-balancer-internal: "true" name: istio-ingressgateway
Jalankan
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert FILE_PATH \ --ca_key FILE_PATH \ --root_cert FILE_PATH \ --cert_chain FILE_PATH \ --custom_overlay istio-operator-internal-lb.yaml
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate.--ca_key
Kunci untuk intermediate certificate.--root_cert
Root certificate.--cert_chain
Rantai sertifikat.--custom_overlay
Nama file overlay yang telah dibuat. Untuk mengetahui informasi selengkapnya tentang file overlay, lihat Mengaktifkan fitur opsional di bidang kontrol dalam cluster
Amazon EKS
Jalankan perintah berikut di Amazon EKS untuk menginstal bidang kontrol dengan fitur default dan Istio CA. Masukkan nilai Anda di placeholder yang disediakan.
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate--ca_key
Kunci untuk intermediate certificate--root_cert
Root certificate--cert_chain
Rantai sertifikat
Microsoft AKS
Jalankan perintah berikut di Microsoft AKS untuk menginstal bidang kontrol dengan fitur default dan Istio CA. Masukkan nilai Anda di placeholder yang disediakan.
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
:HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer ./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer
Mengizinkan pendaftaran dengan GKE Hub.--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate--ca_key
Kunci untuk intermediate certificate--root_cert
Root certificate--cert_chain
Rantai sertifikat
Instal dengan Istio CA yang mengaktifkan Kemampuan Observasi Google Cloud
Jika ingin menggunakan dasbor Anthos Service Mesh, Anda harus mengaktifkan Stackdriver.
GKE
Jalankan perintah berikut untuk menginstal bidang kontrol dengan fitur default dan Istio CA. Masukkan nilai Anda di placeholder yang disediakan.
./asmcli install \
--project_id PROJECT_ID \
--cluster_name CLUSTER_NAME \
--cluster_location CLUSTER_LOCATION \
--fleet_id FLEET_PROJECT_ID \
--output_dir DIR_PATH \
--enable_all \
--ca citadel \
--ca_cert CA_CERT_FILE_PATH \
--ca_key CA_KEY_FILE_PATH \
--root_cert ROOT_CERT_FILE_PATH \
--cert_chain CERT_CHAIN_FILE_PATH
--project_id
,--cluster_name
, dan--cluster_location
Tentukan project ID tempat cluster berada, nama cluster, dan zona atau region cluster.--fleet_id
Project ID untuk project fleet host. Jika Anda tidak menyertakan opsi ini,asmcli
akan menggunakan project tempat cluster dibuat saat mendaftarkan cluster tersebut.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate--ca_key
Kunci untuk intermediate certificate--root_cert
Root certificate--cert_chain
Rantai sertifikat--option stackdriver
Mengaktifkan opsi Stackdriver. Perlu diperhatikan bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan--option prometheus-and-stackdriver
.
Lokal
Jalankan perintah berikut di GKE di VMware atau Google Distributed Cloud Virtual for Bare Metal untuk menginstal bidang kontrol dengan Stackdriver dan fitur opsional lainnya serta Istio CA. Masukkan nilai Anda di placeholder yang disediakan.
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate--ca_key
Kunci untuk intermediate certificate--root_cert
Root certificate--cert_chain
Rantai sertifikat--option stackdriver
Mengaktifkan opsi Stackdriver. Perlu diperhatikan bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan--option prometheus-and-stackdriver
.
Untuk melihat SLO dan metrik infrastruktur di UI Anthos Service Mesh, Anda juga harus melakukan tiga langkah pertama di artikel Mengaktifkan logging dan pemantauan aplikasi. Jika logging dan pemantauan tidak diaktifkan dan tidak menerima log serta metrik kustom, dasbor Anthos Service Mesh tidak akan menampilkan SLO, log error, atau metrik CPU dan memori.
AWS
Jalankan perintah berikut di GKE di AWS untuk menginstal bidang kontrol dengan Stackdriver dan fitur opsional lainnya serta Istio CA. Masukkan nilai Anda di placeholder yang disediakan. Anda dapat memilih untuk mengaktifkan Ingress untuk subnet publik atau subnet pribadi.
Publik
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH \ --option stackdriver
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate.--ca_key
Kunci untuk intermediate certificate.--root_cert
Root certificate.--cert_chain
Rantai sertifikat.--option stackdriver
Mengaktifkan opsi Stackdriver. Perlu diperhatikan bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan--option prometheus-and-stackdriver
.
Pribadi
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Simpan YAML berikut ke file bernama
istio-operator-internal-lb.yaml
:apiVersion: install.istio.io/v1alpha1 kind: IstioOperator spec: components: ingressGateways: - enabled: true k8s: serviceAnnotations: service.beta.kubernetes.io/aws-load-balancer-internal: "true" name: istio-ingressgateway
Jalankan
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert FILE_PATH \ --ca_key FILE_PATH \ --root_cert FILE_PATH \ --cert_chain FILE_PATH --custom_overlay istio-operator-internal-lb.yaml \ --option stackdriver
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate.--ca_key
Kunci untuk intermediate certificate.--root_cert
Root certificate.--cert_chain
Rantai sertifikat.--custom_overlay
Nama file overlay yang telah dibuat. Untuk mengetahui informasi selengkapnya tentang file overlay, lihat Mengaktifkan fitur opsional di bidang kontrol dalam cluster.--option stackdriver
Mengaktifkan opsi Stackdriver. Perlu diperhatikan bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan--option prometheus-and-stackdriver
. Atau, Anda dapat mengaktifkan Stackdriver menggunakan--custom_overlay stackdriver.yaml
. Anda harus Mendownload paket anthos-service-mesh- atau membuatstackdriver.yaml
dari manifes yang disediakan.
Amazon EKS
Jalankan perintah berikut di Amazon EKS untuk menginstal bidang kontrol dengan Stackdriver dan fitur opsional lainnya serta Istio CA. Masukkan nilai Anda di placeholder yang disediakan.
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH \ --option stackdriver
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate--ca_key
Kunci untuk intermediate certificate--root_cert
Root certificate--cert_chain
Rantai sertifikat--option stackdriver
Mengaktifkan opsi Stackdriver. Perlu diperhatikan bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan--option prometheus-and-stackdriver
.
Microsoft AKS
Jalankan perintah berikut di Microsoft AKS untuk menginstal bidang kontrol dengan fitur default dan Istio CA. Masukkan nilai Anda di placeholder yang disediakan.
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
:HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer ./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH \ --option stackdriver
HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer
Mengizinkan pendaftaran dengan GKE Hub.--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
-ca citadel
Gunakan Istio CA sebagai certificate authority.--ca_cert
Intermediate certificate--ca_key
Kunci untuk intermediate certificate--root_cert
Root certificate--cert_chain
Rantai sertifikat--option stackdriver
Mengaktifkan opsi Stackdriver. Perlu diperhatikan bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan--option prometheus-and-stackdriver
.
Menginstal dengan fitur opsional
File overlay adalah file YAML yang berisi resource kustom (CR) IstioOperator
yang Anda teruskan ke asmcli
untuk mengonfigurasi bidang kontrol. Anda dapat mengganti konfigurasi bidang kontrol default dan mengaktifkan fitur opsional dengan meneruskan file YAML ke asmcli
. Anda dapat menambahkan lapisan pada lebih banyak overlay, dan setiap file overlay mengganti konfigurasi pada lapisan sebelumnya. Sebagai praktik terbaik,
sebaiknya simpan file overlay di sistem kontrol versi.
Ada dua opsi untuk mengaktifkan fitur opsional:
--option
dan
--custom_overlay
.
Gunakan --option
jika Anda tidak perlu mengubah file overlay. Dengan metode ini, asmcli
akan mengambil file dari
repositori GitHub
untuk Anda.
Gunakan --custom_overlay
saat Anda perlu menyesuaikan file overlay.
Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan fitur opsional di bidang kontrol dalam cluster.
GKE
Jalankan perintah berikut untuk menginstal bidang kontrol dengan fitur
opsional. Untuk menambahkan beberapa file, tentukan --custom_overlay
dan nama file,
misalnya: --custom_overlay overlay_file1.yaml
--custom_overlay overlay_file2.yaml --custom_overlay overlay_file3.yaml
Masukkan nilai Anda dalam placeholder yang disediakan.
./asmcli install \
--project_id PROJECT_ID \
--cluster_name CLUSTER_NAME \
--cluster_location CLUSTER_LOCATION \
--fleet_id FLEET_PROJECT_ID \
--output_dir DIR_PATH \
--enable_all \
--ca mesh_ca \
--custom_overlay OVERLAY_FILE
--project_id
,--cluster_name
, dan--cluster_location
Tentukan project ID tempat cluster berada, nama cluster, dan zona atau region cluster.--fleet_id
Project ID untuk project fleet host. Jika Anda tidak menyertakan opsi ini,asmcli
akan menggunakan project tempat cluster dibuat saat mendaftarkan cluster tersebut.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
--ca mesh_ca
Gunakan Mesh CA sebagai certificate authority. Perlu diperhatikan bahwaasmcli
mengonfigurasi Mesh CA untuk menggunakan identitas workload fleet--custom_overlay
Tentukan nama file overlay.
Di luar Google Cloud
Jalankan perintah berikut di GKE di VMware, Google Distributed Cloud Virtual for Bare Metal, GKE di AWS, Amazon EKS, atau Microsoft AKS. Masukkan nilai Anda di placeholder yang disediakan.
Setel konteks saat ini ke cluster pengguna Anda:
kubectl config use-context CLUSTER_NAME
Jalankan
asmcli install
untuk menginstal bidang kontrol dengan fitur opsional. Untuk menambahkan beberapa file, tentukan--custom_overlay
dan nama file, misalnya:--custom_overlayoverlay_file1.yaml --custom_overlay overlay_file2.yaml --custom_overlay overlay_file3.yaml
./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca mesh_ca \ --custom_overlay OVERLAY_FILE
--fleet_id
Project ID untuk project fleet host.--kubeconfig
Jalur lengkap ke filekubeconfig
. Variabel lingkungan$PWD
tidak berfungsi di sini. Selain itu, lokasi filekubeconfig
relatif yang menggunakan `~` tidak akan berfungsi.--output_dir
Sertakan opsi ini untuk menentukan direktori tempatasmcli
mendownload paketanthos-service-mesh
dan mengekstrak file penginstalan, yang berisiistioctl
, sampel, dan manifes. Jika tidak,asmcli
akan mendownload file ke direktoritmp
. Anda dapat menentukan jalur relatif atau jalur lengkap. Variabel lingkungan$PWD
tidak berfungsi di sini.--platform multicloud
Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti lokal atau multi-cloud.-
--enable_all
Mengizinkan skrip untuk:- Memberikan izin IAM yang diperlukan.
- Aktifkan Google API yang diperlukan.
- Tetapkan label pada cluster yang mengidentifikasi mesh.
- Daftarkan cluster ke fleet jika belum terdaftar.
--ca mesh_ca
Gunakan Mesh CA sebagai certificate authority. Perlu diperhatikan bahwaasmcli
mengonfigurasi Mesh CA untuk menggunakan identitas workload fleet--custom_overlay
Tentukan nama file overlay.
Menginstal gateway
Anthos Service Mesh memberi Anda opsi untuk men-deploy dan mengelola gateway sebagai bagian dari mesh layanan Anda. Gateway menjelaskan load balancer yang beroperasi di edge mesh yang menerima koneksi HTTP/TCP yang masuk atau keluar. Gateway adalah proxy Envoy yang memberi Anda kontrol terperinci atas traffic yang masuk dan keluar dari mesh.
Buat namespace untuk gateway masuk jika Anda belum memilikinya. Gateway adalah beban kerja pengguna, dan sebagai praktik terbaik, gateway tidak boleh di-deploy di namespace bidang kontrol. Ganti
GATEWAY_NAMESPACE
dengan nama namespace Anda.kubectl create namespace GATEWAY_NAMESPACE
Output yang diharapkan:
namespace/GATEWAY_NAMESPACE created
Mengaktifkan injeksi otomatis pada gateway. Langkah-langkah yang diperlukan bergantung pada apakah Anda ingin menggunakan label injeksi default (misalnya,
istio-injection=enabled
) atau label revisi di namespace gateway. Tag revisi default dan label revisi digunakan oleh webhook injektor bantuan untuk mengaitkan proxy yang dimasukkan dengan revisi bidang kontrol tertentu.Label injeksi default
Terapkan label injeksi default ke namespace.
kubectl label namespace GATEWAY_NAMESPACE istio-injection=enabled istio.io/rev-
Label revisi
Gunakan perintah berikut untuk menemukan label revisi di
istiod
:kubectl get deploy -n istio-system -l app=istiod -o \ "jsonpath={.items[*].metadata.labels['istio\.io/rev']}{'\n'}"
Perintah ini menghasilkan label revisi yang sesuai dengan versi Anthos Service Mesh, misalnya:
asm-1157-23
Terapkan label revisi ke namespace. Dalam perintah berikut,
REVISION
adalah nilai label revisiistiod
yang Anda catat di langkah sebelumnya.kubectl label namespace GATEWAY_NAMESPACE \ istio.io/rev=REVISION --overwrite
Output yang diharapkan:
namespace/GATEWAY_NAMESPACE labeled
Anda dapat mengabaikan pesan
"istio.io/rev" not found
di output. Artinya, namespace sebelumnya tidak memiliki labelistio.io/rev
, yang akan muncul di penginstalan baru Anthos Service Mesh atau deployment baru. Karena injeksi otomatis akan gagal jika namespace memiliki labelistio.io/rev
danistio-injection
, semua perintahkubectl label
dalam dokumentasi Anthos Service Mesh secara eksplisit menentukan kedua label tersebut.Jika namespace gateway tidak diberi label, pod
istio-ingressgateway
akan gagal dengan errorImagePullBackOff
saat gateway mencoba menarik dan imageauto
. Gambar ini harus diganti dengan webhook.Download contoh file konfigurasi .yaml gateway masuk dari
anthos-service-mesh-packages
repository.Terapkan contoh konfigurasi .yaml ingress gateway sebagaimana adanya, atau modifikasi sesuai kebutuhan.
kubectl apply -n GATEWAY_NAMESPACE \ -f CONFIG_PATH/istio-ingressgateway
Output yang diharapkan:
deployment.apps/istio-ingressgateway created poddisruptionbudget.policy/istio-ingressgateway created horizontalpodautoscaler.autoscaling/istio-ingressgateway created role.rbac.authorization.k8s.io/istio-ingressgateway created rolebinding.rbac.authorization.k8s.io/istio-ingressgateway created service/istio-ingressgateway created serviceaccount/istio-ingressgateway created
Pelajari praktik terbaik untuk gateway lebih lanjut.
Men-deploy dan men-deploy ulang workload
Anthos Service Mesh menggunakan proxy file bantuan untuk meningkatkan keamanan, keandalan, dan kemampuan observasi jaringan. Dengan Anthos Service Mesh, fungsi-fungsi ini diabstraksi dari container utama aplikasi dan diimplementasikan dalam proxy di luar proses umum yang dikirim sebagai container terpisah dalam Pod yang sama.
Penginstalan belum selesai sampai Anda mengaktifkan injeksi proxy file bantuan otomatis (injeksi otomatis) dan memulai ulang Pod untuk workload apa pun yang sedang berjalan di cluster sebelum Anda menginstal Anthos Service Mesh.
Untuk mengaktifkan injeksi otomatis, beri label namespace dengan
label injeksi default
jika tag default sudah disiapkan, atau label revisi
yang ditetapkan pada istiod
saat Anda menginstal Anthos Service Mesh. Tag revisi
default dan label revisi digunakan oleh webhook injektor file bantuan untuk mengaitkan
sidecar yang dimasukkan dengan revisi istiod
. Setelah label ditambahkan, semua Pod yang ada dalam namespace harus dimulai ulang agar file bantuan dapat dimasukkan.
Sebelum men-deploy workload baru di namespace baru, pastikan Anda mengonfigurasi injeksi otomatis agar Anthos Service Mesh dapat memantau dan mengamankan traffic.
Langkah-langkah yang diperlukan untuk mengaktifkan injeksi otomatis bergantung pada apakah Anda ingin menggunakan label injeksi default atau label revisi:
Label injeksi default
Dalam perintah berikut,
NAMESPACE
adalah nama namespace tempat Anda ingin mengaktifkan injeksi otomatis.kubectl label namespace NAMESPACE istio-injection=enabled istio.io/rev-
Karena label injeksi default akan memasukkan revisi yang ditunjuk tag default, tidak perlu memberi label ulang namespace.
Label revisi
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-1157-23-5788d57586-bljj4 1/1 Running 0 23h app=istiod,istio.io/rev=asm-1157-23,istio=istiod,pod-template-hash=5788d57586 istiod-asm-1157-23-5788d57586-vsklm 1/1 Running 1 23h app=istiod,istio.io/rev=asm-1157-23,istio=istiod,pod-template-hash=5788d57586
Pada output, di bawah kolom
LABELS
, catat nilai label revisiistiod
, yang mengikuti awalanistio.io/rev=
. Dalam contoh ini, nilainya adalahasm-1157-23
.Terapkan label revisi dan hapus label
istio-injection
jika ada. Dalam perintah berikut,NAMESPACE
adalah nama namespace tempat Anda ingin mengaktifkan injeksi otomatis, danREVISION
adalah label revisi yang Anda catat di langkah sebelumnya.kubectl label namespace NAMESPACE istio-injection- istio.io/rev=REVISION --overwrite
Anda dapat mengabaikan pesan
"istio-injection not found"
di output. Artinya, namespace sebelumnya tidak memiliki labelistio-injection
, yang akan Anda harapkan di penginstalan baru Anthos Service Mesh atau deployment baru. Karena injeksi otomatis gagal jika namespace memilikiistio-injection
dan label revisi, semua perintahkubectl label
dalam dokumentasi Anthos Service Mesh secara eksplisit menentukan kedua label tersebut.
Jika beban kerja berjalan di cluster sebelum Anda menginstal Anthos Service Mesh, mulai ulang Pod untuk memicu injeksi ulang.
Cara memulai ulang Pod bergantung pada aplikasi dan lingkungan tempat cluster berada. Misalnya, di lingkungan staging, Anda dapat menghapus semua Pod, yang menyebabkannya dimulai ulang. Namun, di lingkungan produksi, Anda mungkin memiliki proses yang menerapkan deployment blue-green sehingga Anda dapat memulai ulang Pod dengan aman untuk menghindari gangguan traffic.
Anda dapat menggunakan
kubectl
untuk melakukan mulai ulang berkelanjutan:kubectl rollout restart deployment -n NAMESPACE
Apa langkah selanjutnya?
Pelajari cara menyiapkan mesh multi-cluster:
Jika mesh Anda sepenuhnya terdiri dari cluster GKE, lihat Menyiapkan mesh multi-cluster di GKE.
Jika mesh Anda terdiri dari cluster di luar Google Cloud, lihat Menyiapkan mesh multi-cluster di luar Google Cloud.