Dimulai dengan Apigee Hybrid versi 1.8, Apigee Hybrid menggunakan gateway masuk Apigee untuk menyediakan traffic masuk untuk instalasi hybrid Anda. Jika Anda lebih memilih menggunakan Anthos Service Mesh untuk traffic masuk, ikuti langkah-langkah berikut untuk menginstal Anthos Service Mesh di cluster Anda.
Versi Anthos Service Mesh yang didukung
Lihat Apigee hybrid: platform yang didukung untuk versi Anthos Service Mesh yang didukung dalam hybrid versi 1.8.
Jika Anda mengupgrade penginstalan hybrid, ikuti petunjuk di Upgrade Anthos Service Mesh.
Menginstal Anthos Service Mesh
Lakukan langkah-langkah berikut pada penginstalan hybrid Apigee yang baru hanya jika Anda tidak menggunakan gateway masuk Apigee.
Lakukan prosedur menggunakan dokumentasi Anthos Service Mesh yang sesuai dengan platform Anda:
Petunjuk untuk menginstal dan mengonfigurasi Anthos Service Mesh berbeda-beda bergantung pada platform Anda. Tujuan platform dibagi ke dalam kategori berikut:
- GKE: Cluster Google Kubernetes Engine yang berjalan di Google Cloud.
- Di luar Google Cloud: Cluster Anthos yang dijalankan di:
- Cluster Anthos di VMware (GKE lokal)
- Anthos on bare metal
- Cluster Anthos di AWS
- Amazon EKS
- Platform Kubernetes Lainnya: Cluster yang sesuai dibuat dan dijalankan di:
- AKS
- EKS
- OpenShift
GKE
Urutan untuk menginstal Anthos Service Mesh adalah sebagai berikut:
- Menyiapkan penginstalan.
- Instal Anthos Service Mesh versi baru.
Persiapan untuk menginstal Anthos Service Mesh
- Tinjau persyaratan di Mengupgrade Anthos Mesh Layanan, tetapi belum melakukan upgrade.
- Buat file
overlay.yaml
baru atau verifikasi file yang sudah adaoverlay.yaml
berisi konten berikut:apiVersion: install.istio.io/v1alpha1 kind: IstioOperator spec: components: ingressGateways: - name: istio-ingressgateway enabled: true k8s: nodeSelector: # default node selector, if different or not using node selectors, change accordingly. cloud.google.com/gke-nodepool: apigee-runtime resources: requests: cpu: 1000m service: type: LoadBalancer loadBalancerIP: STATIC_IP # If you do not have a reserved static IP, leave this out. ports: - name: http-status-port port: 15021 - name: http2 port: 80 targetPort: 8080 - name: https port: 443 targetPort: 8443 meshConfig: accessLogFormat: '{"start_time":"%START_TIME%","remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%","user_agent":"%REQ(USER-AGENT)%","host":"%REQ(:AUTHORITY)%","request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%","request_time":"%DURATION%","status":"%RESPONSE_CODE%","status_details":"%RESPONSE_CODE_DETAILS%","bytes_received":"%BYTES_RECEIVED%","bytes_sent":"%BYTES_SENT%","upstream_address":"%UPSTREAM_HOST%","upstream_response_flags":"%RESPONSE_FLAGS%","upstream_response_time":"%RESPONSE_DURATION%","upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%","upstream_cluster":"%UPSTREAM_CLUSTER%","x_forwarded_for":"%REQ(X-FORWARDED-FOR)%","request_method":"%REQ(:METHOD)%","request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","request_protocol":"%PROTOCOL%","tls_protocol":"%DOWNSTREAM_TLS_VERSION%","request_id":"%REQ(X-REQUEST-ID)%","sni_host":"%REQUESTED_SERVER_NAME%","apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}'
- Ikuti petunjuk di bagian berikut dalam dokumentasi Anthos Service Mesh:
- Unduh asmcli
- Berikan izin admin cluster
- Validasi project dan cluster
- Tingkatkan versi dengan fitur opsional. Berhenti sebelum memulai "bagian Upgrade Gateway".
Di luar Google Cloud
Petunjuk ini mencakup cara mengupgrade Anthos Service Mesh di:
- Cluster Anthos di VMware (GKE lokal)
- Anthos on bare metal
- Cluster Anthos di AWS
- Amazon EKS
Urutan untuk menginstal Anthos Service Mesh adalah sebagai berikut:
- Menyiapkan penginstalan.
- Instal Anthos Service Mesh versi baru.
Persiapan untuk menginstal Anthos Service Mesh
- Tinjau persyaratan di Mengupgrade Anthos Mesh Layanan, tetapi belum melakukan upgrade.
- Buat file
overlay.yaml
baru atau verifikasi file yang sudah adaoverlay.yaml
berisi konten berikut:apiVersion: install.istio.io/v1alpha1 kind: IstioOperator spec: components: ingressGateways: - name: istio-ingressgateway enabled: true k8s: nodeSelector: # default node selector, if different or not using node selectors, change accordingly. cloud.google.com/gke-nodepool: apigee-runtime resources: requests: cpu: 1000m service: type: LoadBalancer loadBalancerIP: STATIC_IP # If you do not have a reserved static IP, leave this out. ports: - name: http-status-port port: 15021 - name: http2 port: 80 targetPort: 8080 - name: https port: 443 targetPort: 8443 values: gateways: istio-ingressgateway: runAsRoot: true meshConfig: accessLogFormat: '{"start_time":"%START_TIME%","remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%","user_agent":"%REQ(USER-AGENT)%","host":"%REQ(:AUTHORITY)%","request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%","request_time":"%DURATION%","status":"%RESPONSE_CODE%","status_details":"%RESPONSE_CODE_DETAILS%","bytes_received":"%BYTES_RECEIVED%","bytes_sent":"%BYTES_SENT%","upstream_address":"%UPSTREAM_HOST%","upstream_response_flags":"%RESPONSE_FLAGS%","upstream_response_time":"%RESPONSE_DURATION%","upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%","upstream_cluster":"%UPSTREAM_CLUSTER%","x_forwarded_for":"%REQ(X-FORWARDED-FOR)%","request_method":"%REQ(:METHOD)%","request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","request_protocol":"%PROTOCOL%","tls_protocol":"%DOWNSTREAM_TLS_VERSION%","request_id":"%REQ(X-REQUEST-ID)%","sni_host":"%REQUESTED_SERVER_NAME%","apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}'
- Ikuti petunjuk di bagian berikut dalam dokumentasi Anthos Service Mesh:
- Unduh asmcli
- Berikan izin admin cluster
- Validasi project dan cluster
- Tingkatkan versi dengan fitur opsional. Berhenti sebelum memulai "bagian Upgrade Gateway".
AKS / EKS
Bersiap menginstal Anthos Service Mesh
- Download file penginstalan Anthos Service Mesh ke direktori kerja Anda saat ini:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-linux-amd64.tar.gz
- Download file tanda tangan dan gunakan OpenSSL untuk memverifikasi tanda tangan:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-linux-amd64.tar.gz.1.sig
openssl dgst -verify /dev/stdin -signature istio-1.13.9-asm.10-linux-amd64.tar.gz.1.sig istio-1.13.9-asm.10.tar.gz <<'EOF'
-----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw== -----END PUBLIC KEY----- EOF - Ekstrak konten file ke lokasi mana pun di sistem file Anda. Misalnya,
untuk mengekstrak isi ke direktori kerja saat ini:
tar xzf istio-1.13.9-asm.10-linux-amd64.tar.gz
Perintah tersebut membuat direktori instalasi di direktori kerja Anda saat ini yang bernama
istio-1.13.9-asm.10
yang berisi:- Aplikasi contoh di direktori
samples
. - Alat command line
istioctl
yang Anda gunakan untuk menginstal Layanan Anthos Mesh berada di direktoribin
. - Profil konfigurasi Anthos Service Mesh berada di
Direktori
manifests/profiles
.
- Aplikasi contoh di direktori
- Pastikan Anda berada di direktori utama penginstalan Anthos Service Mesh:
cd istio-1.13.9-asm.10
- Untuk memudahkan, tambahkan alat di direktori
/bin
kePATH
Anda:export PATH=$PWD/bin:$PATH
- Download file penginstalan Anthos Service Mesh ke direktori kerja Anda saat ini:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-osx.tar.gz
- Download file tanda tangan dan gunakan OpenSSL untuk memverifikasi tanda tangan:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-osx.tar.gz.1.sig
openssl dgst -sha256 -verify /dev/stdin -signature istio-1.13.9-asm.10-osx.tar.gz.1.sig istio-1.13.9-asm.10.tar.gz <<'EOF'
-----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw== -----END PUBLIC KEY----- EOF - Ekstrak konten file ke lokasi mana pun di sistem file Anda. Misalnya,
untuk mengekstrak isi ke direktori kerja saat ini:
tar xzf istio-1.13.9-asm.10-osx.tar.gz
Perintah tersebut membuat direktori instalasi di direktori kerja Anda saat ini yang bernama
istio-1.13.9-asm.10
yang berisi:- Aplikasi contoh di direktori
samples
. - Alat command line
istioctl
yang Anda gunakan untuk menginstal Layanan Anthos Mesh berada di direktoribin
. - Profil konfigurasi Anthos Service Mesh berada di
Direktori
manifests/profiles
.
- Aplikasi contoh di direktori
- Pastikan Anda berada di direktori utama penginstalan Anthos Service Mesh:
cd istio-1.13.9-asm.10
- Untuk memudahkan, tambahkan alat di direktori
/bin
kePATH
Anda:export PATH=$PWD/bin:$PATH
- Download file penginstalan Anthos Service Mesh ke direktori kerja Anda saat ini:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-win.zip
- Download file tanda tangan dan gunakan OpenSSL untuk memverifikasi tanda tangan:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-win.zip.1.sig
openssl dgst -verify - -signature istio-1.13.9-asm.10-win.zip.1.sig istio-1.13.9-asm.10.win.zip <<'EOF'
-----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw== -----END PUBLIC KEY----- EOF - Ekstrak konten file ke lokasi mana pun di sistem file Anda. Misalnya,
untuk mengekstrak isi ke direktori kerja saat ini:
tar xzf istio-1.13.9-asm.10-win.zip
Perintah tersebut membuat direktori instalasi di direktori kerja Anda saat ini yang bernama
istio-1.13.9-asm.10
yang berisi:- Aplikasi contoh di direktori
samples
. - Alat command line
istioctl
yang Anda gunakan untuk menginstal Layanan Anthos Mesh berada di direktoribin
. - Profil konfigurasi Anthos Service Mesh berada di
Direktori
manifests\profiles
.
- Aplikasi contoh di direktori
- Pastikan Anda berada di direktori utama penginstalan Anthos Service Mesh:
cd istio-1.13.9-asm.10
- Untuk memudahkan, tambahkan alat dalam direktori \bin ke PATH Anda:
set PATH=%CD%\bin:%PATH%
- Setelah Anthos Service Mesh Istio terinstal, periksa versi
istioctl
:istioctl version
- Buat namespace bernama istio-system untuk komponen bidang kontrol:
kubectl create namespace istio-system
Linux
Mac OS
Windows
Menginstal Anthos Service Mesh
- Edit file
overlay.yaml
Anda atau buat file baru dengan konten berikut:apiVersion: install.istio.io/v1alpha1 kind: IstioOperator spec: meshConfig: accessLogFile: /dev/stdout enableTracing: true accessLogFormat: '{"start_time":"%START_TIME%","remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%","user_agent":"%REQ(USER-AGENT)%","host":"%REQ(:AUTHORITY)%","request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%","request_time":"%DURATION%","status":"%RESPONSE_CODE%","status_details":"%RESPONSE_CODE_DETAILS%","bytes_received":"%BYTES_RECEIVED%","bytes_sent":"%BYTES_SENT%","upstream_address":"%UPSTREAM_HOST%","upstream_response_flags":"%RESPONSE_FLAGS%","upstream_response_time":"%RESPONSE_DURATION%","upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%","upstream_cluster":"%UPSTREAM_CLUSTER%","x_forwarded_for":"%REQ(X-FORWARDED-FOR)%","request_method":"%REQ(:METHOD)%","request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","request_protocol":"%PROTOCOL%","tls_protocol":"%DOWNSTREAM_TLS_VERSION%","request_id":"%REQ(X-REQUEST-ID)%","sni_host":"%REQUESTED_SERVER_NAME%","apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}' components: ingressGateways: - name: istio-ingressgateway enabled: true k8s: service: type: LoadBalancer ports: - name: status-port port: 15021 targetPort: 15021 - name: http2 port: 80 targetPort: 8080 - name: https port: 443 targetPort: 8443
- Instal Anthos Service Mesh dengan
istioctl
menggunakan profilasm-multicloud
:istioctl install \ --set profile=asm-multicloud \ --set revision="asm-1139-10" \ --filename overlay.yaml
Output Anda akan terlihat seperti:
kubectl get pods -n istio-system NAME READY STATUS RESTARTS AGE istio-ingressgateway-88b6fd976-flgp2 1/1 Running 0 3m13s istio-ingressgateway-88b6fd976-p5dl9 1/1 Running 0 2m57s istiod-asm-1139-10-798ffb964-2ls88 1/1 Running 0 3m21s istiod-asm-1139-10-798ffb964-fnj8c 1/1 Running 1 3m21s
Argumen
--set revision
menambahkan label revisi ke dalam formatistio.io/rev=asm-1139-10
untukistiod
. Label revisi digunakan oleh webhook injektor file bantuan otomatis untuk mengaitkan file bantuan yang diinjeksi denganistiod
tertentu revisi. Untuk mengaktifkan injeksi otomatis file bantuan untuk namespace, Anda harus melabelinya dengan revisi yang cocok dengan label diistiod
. - Pastikan penginstalan Anda telah selesai:
kubectl get svc -n istio-system
Output Anda akan terlihat seperti:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE istio-ingressgateway LoadBalancer 172.200.48.52 34.74.177.168 15021:30479/TCP,80:30030/TCP,443:32200/TCP,15012:32297/TCP,15443:30244/TCP 3m35s istiod ClusterIP 172.200.18.133 <none> 15010/TCP,15012/TCP,443/TCP,15014/TCP 4m46s istiod-asm-1139-10 ClusterIP 172.200.63.220 <none> 15010/TCP,15012/TCP,443/TCP,15014/TCP 3m43s
OpenShift
Bersiap menginstal Anthos Service Mesh
- Sebelum menginstal versi baru, tentukan revisi saat ini. Anda akan memerlukan
informasi ini untuk menghapus webhook yang memvalidasi dan memutasikan webhook
dari penginstalan Anthos Service Mesh saat ini. Gunakan perintah berikut untuk menyimpan
Revisi
istiod
untuk variabel lingkungan:export DELETE_REV=$(kubectl get deploy -n istio-system -l app=istiod -o jsonpath={.items[*].metadata.labels.'istio\.io\/rev'}'{"\n"}')
echo $DELETE_REV
Output Anda akan terlihat seperti
1.12.9-asm.2
- Berikan batasan konteks keamanan (SCC)
anyuid
ke istio-system dengan perintah OpenShift CLI (oc
) berikut:oc adm policy add-scc-to-group anyuid system:serviceaccounts:istio-system
- Download file penginstalan Anthos Service Mesh ke direktori kerja Anda saat ini:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-linux-amd64.tar.gz
- Download file tanda tangan dan gunakan OpenSSL untuk memverifikasi tanda tangan:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-linux-amd64.tar.gz.1.sig
openssl dgst -verify /dev/stdin -signature istio-1.13.9-asm.10-linux-amd64.tar.gz.1.sig istio-1.13.9-asm.10.tar.gz <<'EOF'
-----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw== -----END PUBLIC KEY----- EOF - Ekstrak konten file ke lokasi mana pun di sistem file Anda. Misalnya,
untuk mengekstrak isi ke direktori kerja saat ini:
tar xzf istio-1.13.9-asm.10-linux-amd64.tar.gz
Perintah tersebut membuat direktori instalasi di direktori kerja Anda saat ini yang bernama
istio-1.13.9-asm.10
yang berisi:- Aplikasi contoh di direktori
samples
. - Alat command line
istioctl
yang Anda gunakan untuk menginstal Layanan Anthos Mesh berada di direktoribin
. - Profil konfigurasi Anthos Service Mesh berada di
Direktori
manifests/profiles
.
- Aplikasi contoh di direktori
- Pastikan Anda berada di direktori utama penginstalan Anthos Service Mesh:
cd istio-1.13.9-asm.10
- Untuk memudahkan, tambahkan alat di direktori
/bin
kePATH
Anda:export PATH=$PWD/bin:$PATH
- Berikan batasan konteks keamanan (SCC)
anyuid
ke istio-system dengan perintah OpenShift CLI (oc
) berikut:oc adm policy add-scc-to-group anyuid system:serviceaccounts:istio-system
- Download file penginstalan Anthos Service Mesh ke direktori kerja Anda saat ini:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-osx.tar.gz
- Download file tanda tangan dan gunakan OpenSSL untuk memverifikasi tanda tangan:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-osx.tar.gz.1.sig
openssl dgst -sha256 -verify /dev/stdin -signature istio-1.13.9-asm.10-osx.tar.gz.1.sig istio-1.13.9-asm.10.tar.gz <<'EOF'
-----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw== -----END PUBLIC KEY----- EOF - Ekstrak konten file ke lokasi mana pun di sistem file Anda. Misalnya,
untuk mengekstrak isi ke direktori kerja saat ini:
tar xzf istio-1.13.9-asm.10-osx.tar.gz
Perintah tersebut membuat direktori instalasi di direktori kerja Anda saat ini yang bernama
istio-1.13.9-asm.10
yang berisi:- Aplikasi contoh di direktori
samples
. - Alat command line
istioctl
yang Anda gunakan untuk menginstal Layanan Anthos Mesh berada di direktoribin
. - Profil konfigurasi Anthos Service Mesh berada di
Direktori
manifests/profiles
.
- Aplikasi contoh di direktori
- Pastikan Anda berada di direktori utama penginstalan Anthos Service Mesh:
cd istio-1.13.9-asm.10
- Untuk memudahkan, tambahkan alat di direktori
/bin
kePATH
Anda:export PATH=$PWD/bin:$PATH
- Berikan batasan konteks keamanan (SCC)
anyuid
ke istio-system dengan perintah OpenShift CLI (oc
) berikut:oc adm policy add-scc-to-group anyuid system:serviceaccounts:istio-system
- Download file penginstalan Anthos Service Mesh ke direktori kerja Anda saat ini:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-win.zip
- Download file tanda tangan dan gunakan OpenSSL untuk memverifikasi tanda tangan:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.13.9-asm.10-win.zip.1.sig
openssl dgst -verify - -signature istio-1.13.9-asm.10-win.zip.1.sig istio-1.13.9-asm.10.win.zip <<'EOF'
-----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw== -----END PUBLIC KEY----- EOF - Ekstrak konten file ke lokasi mana pun di sistem file Anda. Misalnya,
untuk mengekstrak isi ke direktori kerja saat ini:
tar xzf istio-1.13.9-asm.10-win.zip
Perintah tersebut membuat direktori instalasi di direktori kerja Anda saat ini yang bernama
istio-1.13.9-asm.10
yang berisi:- Aplikasi contoh di direktori
samples
. - Alat command line
istioctl
yang Anda gunakan untuk menginstal Layanan Anthos Mesh berada di direktoribin
. - Profil konfigurasi Anthos Service Mesh berada di
Direktori
manifests\profiles
.
- Aplikasi contoh di direktori
- Pastikan Anda berada di direktori utama penginstalan Anthos Service Mesh:
cd istio-1.13.9-asm.10
- Untuk memudahkan, tambahkan alat dalam direktori \bin ke PATH Anda:
set PATH=%CD%\bin:%PATH%
- Setelah Anthos Service Mesh Istio terinstal, periksa versi
istioctl
:istioctl version
- Buat namespace bernama istio-system untuk komponen bidang kontrol:
kubectl create namespace istio-system
Linux
Mac OS
Windows
Konfigurasi webhook yang memvalidasi
Saat menginstal Anthos Service Mesh, Anda menetapkan label revisi pada istiod
. Anda harus menetapkan
mengenai validasi webhook.
- Buat file bernama
istiod-service.yaml
dengan konten berikut:apiVersion: v1 kind: Service metadata: name: istiod namespace: istio-system labels: istio.io/rev: asm-1139-10 app: istiod istio: pilot release: istio spec: ports: - port: 15010 name: grpc-xds # plaintext protocol: TCP - port: 15012 name: https-dns # mTLS with k8s-signed cert protocol: TCP - port: 443 name: https-webhook # validation and injection targetPort: 15017 protocol: TCP - port: 15014 name: http-monitoring # prometheus stats protocol: TCP selector: app: istiod istio.io/rev: asm-1139-10 meshConfig: accessLogFormat: '{"start_time":"%START_TIME%","remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%","user_agent":"%REQ(USER-AGENT)%","host":"%REQ(:AUTHORITY)%","request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%","request_time":"%DURATION%","status":"%RESPONSE_CODE%","status_details":"%RESPONSE_CODE_DETAILS%","bytes_received":"%BYTES_RECEIVED%","bytes_sent":"%BYTES_SENT%","upstream_address":"%UPSTREAM_HOST%","upstream_response_flags":"%RESPONSE_FLAGS%","upstream_response_time":"%RESPONSE_DURATION%","upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%","upstream_cluster":"%UPSTREAM_CLUSTER%","x_forwarded_for":"%REQ(X-FORWARDED-FOR)%","request_method":"%REQ(:METHOD)%","request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","request_protocol":"%PROTOCOL%","tls_protocol":"%DOWNSTREAM_TLS_VERSION%","request_id":"%REQ(X-REQUEST-ID)%","sni_host":"%REQUESTED_SERVER_NAME%","apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}'
- Gunakan
kubectl
untuk menerapkan konfigurasi webhook yang memvalidasi:kubectl apply -f istiod-service.yaml
- Pastikan konfigurasi telah diterapkan:
kubectl get svc -n istio-system
Responsnya akan terlihat seperti ini:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE istiod ClusterIP 172.200.18.133 <none> 15010/TCP,15012/TCP,443/TCP,15014/TCP 22s
Menginstal Anthos Service Mesh
- Edit file
overlay.yaml
Anda atau buat file baru dengan konten berikut:apiVersion: install.istio.io/v1alpha1 kind: IstioOperator spec: meshConfig: accessLogFile: /dev/stdout enableTracing: true accessLogFormat: '{"start_time":"%START_TIME%","remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%","user_agent":"%REQ(USER-AGENT)%","host":"%REQ(:AUTHORITY)%","request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%","request_time":"%DURATION%","status":"%RESPONSE_CODE%","status_details":"%RESPONSE_CODE_DETAILS%","bytes_received":"%BYTES_RECEIVED%","bytes_sent":"%BYTES_SENT%","upstream_address":"%UPSTREAM_HOST%","upstream_response_flags":"%RESPONSE_FLAGS%","upstream_response_time":"%RESPONSE_DURATION%","upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%","upstream_cluster":"%UPSTREAM_CLUSTER%","x_forwarded_for":"%REQ(X-FORWARDED-FOR)%","request_method":"%REQ(:METHOD)%","request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","request_protocol":"%PROTOCOL%","tls_protocol":"%DOWNSTREAM_TLS_VERSION%","request_id":"%REQ(X-REQUEST-ID)%","sni_host":"%REQUESTED_SERVER_NAME%","apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}' components: ingressGateways: - name: istio-ingressgateway enabled: true k8s: service: type: LoadBalancer ports: - name: status-port port: 15021 targetPort: 15021 - name: http2 port: 80 targetPort: 8080 - name: https port: 443 targetPort: 8443
- Instal Anthos Service Mesh dengan
istioctl
menggunakan profilasm-multicloud
:istioctl install \ --set profile=asm-multicloud \ --set revision="asm-1139-10" \ --filename overlayfile.yaml
Output Anda akan terlihat seperti:
kubectl get pods -n istio-system NAME READY STATUS RESTARTS AGE istio-ingressgateway-88b6fd976-flgp2 1/1 Running 0 3m13s istio-ingressgateway-88b6fd976-p5dl9 1/1 Running 0 2m57s istiod-asm-1139-10-798ffb964-2ls88 1/1 Running 0 3m21s istiod-asm-1139-10-798ffb964-fnj8c 1/1 Running 1 3m21s
Argumen
--set revision
menambahkan label revisi ke dalam formatistio.io/rev=1.6.11-asm.1
untukistiod
. Label revisi digunakan oleh webhook injektor file bantuan otomatis untuk mengaitkan file bantuan yang diinjeksi denganistiod
tertentu revisi. Untuk mengaktifkan injeksi otomatis file bantuan untuk namespace, Anda harus melabelinya dengan revisi yang cocok dengan label diistiod
. - Pastikan penginstalan Anda telah selesai:
kubectl get svc -n istio-system
Output Anda akan terlihat seperti:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE istio-ingressgateway LoadBalancer 172.200.48.52 34.74.177.168 15021:30479/TCP,80:30030/TCP,443:32200/TCP,15012:32297/TCP,15443:30244/TCP 3m35s istiod ClusterIP 172.200.18.133 <none> 15010/TCP,15012/TCP,443/TCP,15014/TCP 4m46s istiod-asm-1139-10 ClusterIP 172.200.63.220 <none> 15010/TCP,15012/TCP,443/TCP,15014/TCP 3m43s