Menginstal Cloud Service Mesh

Halaman ini menjelaskan cara menginstal Cloud Service Mesh pada GKE dan platform lokal:

  • Jalankan asmcli untuk melakukan penginstalan baru Cloud Service Mesh 1.20.8-asm.6.
  • Secara opsional, deploy gateway masuk.
  • Deploy atau deploy ulang workload Anda untuk memasukkan proxy file bantuan.

Batasan

Perhatikan batasan berikut:

  • Semua cluster Cloud Service Mesh untuk satu mesh harus didaftarkan ke fleet yang sama setiap saat untuk menggunakan Cloud Service Mesh. Cluster lain dalam proyek sebuah Cluster Cloud Service Mesh tidak boleh didaftarkan ke fleet lain.

  • Alat asmcli harus memiliki akses ke Google Kubernetes Engine (GKE) endpoint. Anda dapat mengonfigurasi akses melalui "lompat" server web, seperti VM Compute Engine dalam Virtual Private Cloud (VPC) yang memberikan akses.

Sebelum memulai

Sebelum memulai, pastikan Anda:

Menginstal Anthos Service Mesh

Berikut adalah penjelasan cara menginstal Cloud Service Mesh:

  1. Jalankan asmcli install untuk menginstal bidang kontrol dalam cluster pada satu . Lihat bagian berikut untuk mengetahui contoh command line. Contoh berisi argumen wajib dan argumen opsional yang mungkin Anda temukan berguna Sebaiknya Anda selalu menentukan argumen output_dir agar agar Anda dapat dengan mudah menemukan gateway dan alat contoh seperti istioctl. Lihat bilah navigasi di sebelah kanan untuk melihat daftar contoh.

  2. Cluster GKE pribadi memerlukan langkah konfigurasi firewall untuk izinkan lalu lintas ke istiod.

  3. Atau, instal gateway masuk. Secara {i>default<i}, asmcli tidak menginstal istio-ingressgateway. Sebaiknya Anda men-deploy dan mengelola gateway dan bidang kontrol secara terpisah. Jika Anda memerlukan istio-ingressgateway default yang diinstal dengan bidang kontrol dalam cluster, menyertakan argumen --option legacy-default-ingressgateway.

  4. Untuk menyelesaikan penyiapan Cloud Service Mesh, Anda harus mengaktifkan file bantuan otomatis injeksi dan men-deploy atau men-deploy ulang workload.

  5. Jika Anda menginstal Cloud Service Mesh di lebih dari satu cluster, jalankan asmcli install pada setiap cluster. Saat Anda menjalankan asmcli install, pastikan pastikan untuk menggunakan FLEET_PROJECT_ID yang sama untuk setiap . Setelah Cloud Service Mesh diinstal, lihat petunjuk untuk menyiapkan mesh multi-cluster di GKE atau di luar Google Cloud.

  6. Jika cluster Anda berada di jaringan yang berbeda (seperti dalam mode pulau) Anda harus meneruskan nama jaringan yang unik ke asmcli menggunakan tanda --network_id.

Menginstal fitur default dan Mesh CA

Bagian ini menunjukkan cara menjalankan asmcli untuk menginstal Cloud Service Mesh dengan fitur yang didukung untuk platform Anda dan mengaktifkan certificate authority Cloud Service Mesh sebagai certificate authority.

GKE

Jalankan perintah berikut untuk menginstal bidang kontrol dengan default dan certificate authority Cloud Service Mesh. Masukkan nilai Anda dalam kolom yang disediakan {i>placeholder<i}.

./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 yang akan digunakan cluster nama cluster, serta zona atau region cluster.
  • --fleet_id Project ID project host fleet. Jika Anda tidak menyertakan opsi ini, asmcli menggunakan project tempat cluster dibuat saat mendaftarkan cluster.
  • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
  • --enable_all Mengizinkan skrip untuk:
    • Memberikan izin IAM yang diperlukan.
    • Aktifkan Google API yang diperlukan.
    • Berikan label pada cluster yang mengidentifikasi mesh.
    • Daftarkan cluster ke fleet jika belum terdaftar.
  • --ca mesh_ca Gunakan certificate authority Cloud Service Mesh sebagai {i>certificate authority<i}. asmclimengonfigurasi Certificate authority Cloud Service Mesh yang akan digunakan fleet workload identity

Lokal

Jalankan perintah berikut di Google Distributed Cloud, atau Google Distributed Cloud akan menginstal bidang kontrol dengan default dan certificate authority Cloud Service Mesh. Masukkan nilai Anda dalam kolom yang disediakan {i>placeholder<i}.

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan label pada cluster yang mengidentifikasi mesh.
      • Daftarkan cluster ke fleet jika belum terdaftar.
    • --ca mesh_ca Gunakan certificate authority Cloud Service Mesh sebagai {i>certificate authority<i}. asmclimengonfigurasi Certificate authority Cloud Service Mesh yang akan digunakan fleet workload identity

Untuk melihat SLO dan metrik infrastruktur di UI Cloud Service Mesh, Anda juga harus melakukan tiga langkah pertama di Mengaktifkan logging dan pemantauan aplikasi. Jika logging dan pemantauan tidak diaktifkan dan tidak menerima log dan metrik kustom, dasbor Cloud Service Mesh tidak akan SLO, log error, atau metrik CPU dan memori.

AWS

Jalankan perintah berikut di GKE di AWS untuk menginstal bidang kontrol dengan fitur default dan certificate authority Cloud Service Mesh. Masukkan nilai Anda di {i>placeholder<i} yang disediakan.

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan label pada cluster yang mengidentifikasi mesh.
      • Daftarkan cluster ke fleet jika belum terdaftar.
    • --ca mesh_ca Gunakan certificate authority Cloud Service Mesh sebagai {i>certificate authority<i}. asmclimengonfigurasi Certificate authority Cloud Service Mesh yang akan digunakan fleet workload identity.

Untuk melihat SLO dan metrik infrastruktur di UI Cloud Service Mesh, Anda juga harus melakukan tiga langkah pertama di Mengaktifkan logging dan pemantauan aplikasi. Jika logging dan pemantauan tidak diaktifkan dan tidak menerima log dan metrik kustom, dasbor Cloud Service Mesh tidak akan SLO, log error, atau metrik CPU dan memori.

Azure

Jalankan perintah berikut di GKE di Azure (pratinjau) untuk menginstal bidang kontrol dengan fitur default dan certificate authority Cloud Service Mesh. Masukkan nilai Anda di placeholder yang disediakan.

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan label pada cluster yang mengidentifikasi mesh.
      • Daftarkan cluster ke fleet jika belum terdaftar.
    • --ca mesh_ca Gunakan certificate authority Cloud Service Mesh sebagai {i>certificate authority<i}. asmclimengonfigurasi Certificate authority Cloud Service Mesh yang akan digunakan fleet workload identity.

Untuk melihat SLO dan metrik infrastruktur di UI Cloud Service Mesh, Anda juga harus melakukan tiga langkah pertama di Mengaktifkan logging dan pemantauan aplikasi. Jika logging dan pemantauan tidak diaktifkan dan tidak menerima log dan metrik kustom, dasbor Cloud Service Mesh tidak akan SLO, log error, atau metrik CPU dan memori.

Amazon EKS

Jalankan perintah berikut di Amazon EKS untuk menginstal bidang kontrol dengan fitur default dan certificate authority Cloud Service Mesh. Masukkan nilai Anda di {i>placeholder<i} yang disediakan.

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. Jalankan asmcli install:

    ./asmcli install \
      --fleet_id FLEET_PROJECT_ID \
      --kubeconfig KUBECONFIG_FILE \
      --output_dir DIR_PATH \
      --platform multicloud \
      --enable_all \
      --option attached-cluster \
      --network_id default \
      --ca mesh_ca
    
    • --fleet_id Project ID project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan label pada cluster yang mengidentifikasi mesh.
      • Daftarkan cluster ke fleet jika belum terdaftar.
    • --option attached-cluster Mengubah penandatanganan default utilitas menjadi istiod.
    • --network_id Jika Anda menyiapkan mesh multi-jaringan, lalu tetapkan --network_id ke nilai yang unik untuk setiap cluster di jala tersebut.
    • --ca mesh_ca Gunakan certificate authority Cloud Service Mesh sebagai {i>certificate authority<i}. asmclimengonfigurasi Certificate authority Cloud Service Mesh yang akan digunakan fleet workload identity.

Untuk melihat SLO dan metrik infrastruktur di UI Cloud Service Mesh, Anda juga harus melakukan tiga langkah pertama di Mengaktifkan logging dan pemantauan aplikasi. Jika logging dan pemantauan tidak diaktifkan dan tidak menerima log dan metrik kustom, dasbor Cloud Service Mesh tidak akan SLO, log error, atau metrik CPU dan memori.

Microsoft AKS

Jalankan perintah berikut di Microsoft AKS untuk menginstal bidang kontrol dengan fitur default dan certificate authority Cloud Service Mesh. Masukkan nilai Anda di {i>placeholder<i} yang disediakan.

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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 \
      --option attached-cluster \
      --network_id default \
      --ca mesh_ca
    
    • HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer Mengizinkan pendaftaran dengan GKE Hub.
    • --fleet_id Project ID project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan label pada cluster yang mengidentifikasi mesh.
      • Daftarkan cluster ke fleet jika belum terdaftar.
    • --option attached-cluster Mengubah penandatanganan default utilitas menjadi istiod.
    • --network_id Jika Anda menyiapkan mesh multi-jaringan, lalu tetapkan --network_id ke nilai yang unik untuk setiap cluster di jala tersebut.
    • --ca mesh_ca Gunakan certificate authority Cloud Service Mesh sebagai {i>certificate authority<i}. asmclimengonfigurasi Certificate authority Cloud Service Mesh yang akan digunakan fleet workload identity.

Untuk melihat SLO dan metrik infrastruktur di UI Cloud Service Mesh, Anda juga harus melakukan tiga langkah pertama di Mengaktifkan logging dan pemantauan aplikasi. Jika logging dan pemantauan tidak diaktifkan dan tidak menerima log dan metrik kustom, dasbor Cloud Service Mesh tidak akan SLO, log error, atau metrik CPU dan memori.

Instal fitur default dan Layanan Certificate Authority (CA)

Bagian ini menunjukkan cara menjalankan asmcli untuk menginstal Cloud Service Mesh dengan fitur yang didukung untuk platform Anda dan mengaktifkan CA Service sebagai otoritas sertifikat.

Selain Mesh CA, Anda dapat mengonfigurasi Cloud Service Mesh agar Certificate Authority Service. Ini ini memberi Anda peluang untuk berintegrasi dengan CA Service, yang direkomendasikan untuk kasus penggunaan berikut:

  • Jika Anda memerlukan certificate authority lain untuk menandatangani sertifikat workload pada cluster yang berbeda.
  • Jika Anda ingin menggunakan istiod Sertifikat plugin CA Kustom.
  • Jika Anda perlu mendukung kunci penandatanganan di HSM terkelola.
  • Jika Anda berada di industri yang diatur dengan regulasi ketat dan harus mematuhi kebijakan.
  • Jika Anda ingin menggabungkan Cloud Service Mesh CA ke root perusahaan kustom untuk menandatangani sertifikat workload.

Biaya Mesh CA disertakan dalam Harga Cloud Service Mesh. Tujuan CA Service tidak termasuk dalam harga dasar Cloud Service Mesh dan diisi daya secara terpisah. Selain itu, CA Service dilengkapi dengan SLA eksplisit, tetapi Mesh CA tidak.

Untuk integrasi ini, semua workload di Cloud Service Mesh diberikan Peran IAM:

  • privateca.workloadCertificateRequester
  • privateca.auditor
  • privateca.template (wajib jika menggunakan template sertifikat)

Mengonfigurasi CA Service

  1. Membuat kumpulan CA di tingkat DevOps dan di region yang sama dengan cluster yang dilayaninya untuk menghindari masalah latensi atau potensi pemadaman layanan lintas region. Untuk informasi selengkapnya, lihat Tingkatan yang dioptimalkan untuk beban kerja.
  2. Membuat CA memiliki setidaknya satu otoritas sertifikat aktif dalam kumpulan CA di project yang sama dengan cluster GKE. Menggunakan CA subordinate untuk menandatangani Sertifikat workload Cloud Service Mesh. Catat kumpulan CA yang sesuai dengan subordinate CA.
  3. Jika layanan itu hanya ditujukan untuk menyervis sertifikat untuk workload Cloud Service Mesh, tetapkan 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/") )
    
  4. Untuk memperbarui kebijakan penerbitan kumpulan CA, gunakan perintah berikut:

    gcloud privateca pools update CA_POOL --location ca_region --issuance-policy policy.yaml
    

    Untuk informasi tentang cara menetapkan kebijakan pada kumpulan, lihat Menggunakan kebijakan penerbitan sertifikat.

  5. Jika Anda menggunakan template sertifikat, konfigurasi sekarang. Untuk 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 sertifikat template per wilayah.

Mengonfigurasi Cloud Service Mesh untuk menggunakan CA Service

GKE

  1. Instal bidang kontrol Cloud Service Mesh yang menggunakan {i>Certificate Authority Service<i} 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan label pada cluster yang mengidentifikasi mesh.
      • Daftarkan cluster ke fleet jika belum terdaftar.
    • --ca gcp_cas Gunakan Certificate Authority Service sebagai {i>certificate authority<i}. Mengubah certificate authority selama upgrade menyebabkan periode nonaktif. asmclikonfigurasi Certificate Authority Service yang akan digunakan fleet workload identity
    • --ca_pool ID lengkap untuk {i>Certificate Authority Service<i} Kumpulan CA. 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
      
  2. Instal gateway masuk untuk menerima koneksi HTTP/TCP masuk atau keluar. Untuk mengetahui detailnya, lihat Menginstal Gateway.

  3. Selesaikan penginstalan Cloud Service Mesh untuk mengaktifkan proxy file bantuan otomatis tambahan pada workload Anda. Untuk mengetahui detailnya, lihat Deploy dan deploy ulang workload.

Lokal

Jalankan perintah berikut di Google Distributed Cloud, atau Google Distributed Cloud akan menginstal bidang kontrol dengan default dan Certificate Authority Service. Masukkan nilai Anda dalam kolom yang disediakan {i>placeholder<i}.

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan label pada cluster yang mengidentifikasi mesh.
      • Daftarkan cluster ke fleet jika belum terdaftar.
    • --ca gcp_cas Gunakan Certificate Authority Service sebagai {i>certificate authority<i}. Mengubah certificate authority selama upgrade menyebabkan periode nonaktif. asmclikonfigurasi Certificate Authority Service yang akan digunakan fleet workload identity
    • --ca_pool ID lengkap untuk {i>Certificate Authority Service<i} Kumpulan CA. 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 Cloud Service Mesh, Anda juga harus melakukan tiga langkah pertama di Mengaktifkan logging dan pemantauan aplikasi. Jika logging dan pemantauan tidak diaktifkan dan tidak menerima log dan metrik kustom, dasbor Cloud Service Mesh tidak akan SLO, log error, atau metrik CPU dan memori.

Menginstal fitur default dengan Istio CA

Bagian ini menjelaskan cara:

  • Membuat sertifikat dan kunci untuk Istio CA yang digunakan Cloud Service Mesh untuk menandatangani workload Anda.
  • Jalankan asmcli untuk menginstal Cloud Service Mesh dengan fitur default dan aktifkan Istio CA.

Secara default lingkungan yang menginstal Cloud Service Mesh dengan metrik laporan Istio CA ke Prometheus. Jika ingin menggunakan dasbor Cloud Service Mesh, Anda harus mengaktifkan oleh Stackdriver. Untuk mengetahui informasi selengkapnya, lihat Menginstal dengan fitur opsional.

Untuk keamanan terbaik, sebaiknya Anda mempertahankan root CA offline dan menggunakan CA subordinate untuk menerbitkan sertifikat bagi setiap cluster. Untuk selengkapnya informasi selengkapnya, lihat Colokkan Sertifikat CA. Dalam konfigurasi ini, semua workload dalam mesh layanan menggunakan root yang sama {i>certificate authority<i} (CA). Setiap Cloud Service Mesh CA menggunakan CA perantara kunci penandatanganan dan sertifikat, yang ditandatangani oleh CA {i>root<i}. Jika terdapat beberapa CA dalam jala, hal ini membangun hierarki kepercayaan di antara CA. Anda dapat ulangi langkah-langkah ini untuk menyediakan sertifikat dan kunci untuk sejumlah {i>certificate authority<i}.

Makefile untuk membuat sertifikat terletak di Subdirektori istio-1.20.8-asm.6 di direktori --output_dir yang Anda yang ditentukan dalam perintah asmcli validate. Jika Anda tidak menjalankan asmcli validate, atau Anda tidak memiliki direktori yang diunduh secara lokal, Anda bisa mendapatkan {i>Makefile<i} dengan mendownload file penginstalan Cloud Service Mesh dan mengekstrak isinya.

  1. Ubah ke direktori istio-1.20.8-asm.6.

  2. Buat direktori untuk sertifikat dan kunci:

    mkdir -p certs && \
    pushd certs
  3. Buat kunci dan root certificate:

    make -f ../tools/certs/Makefile.selfsigned.mk root-ca
    

    Tindakan ini akan 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
  4. Buat intermediate certificate dan kunci:

    make -f ../tools/certs/Makefile.selfsigned.mk cluster1-cacerts

    Tindakan ini akan menghasilkan file ini di 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 {i>offline<i}, salin kode yang dibuat ke komputer dengan akses ke cluster.

  5. Kembali ke direktori sebelumnya:

    popd
  6. Jalankan asmcli untuk menginstal mesh menggunakan Istio CA:

    GKE

    Jalankan perintah berikut untuk menginstal bidang kontrol dengan 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 yang akan digunakan cluster nama cluster, serta zona atau region cluster.
    • --fleet_id Project ID project host fleet. Jika Anda tidak menyertakan opsi ini, asmcli menggunakan project tempat cluster dibuat saat mendaftarkan cluster.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan 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 Google Distributed Cloud, atau Google Distributed Cloud untuk menginstal bidang kontrol dengan dan Istio CA. Masukkan nilai Anda dalam kolom yang disediakan {i>placeholder<i}.

    1. Tetapkan konteks saat ini ke cluster pengguna Anda:

      kubectl config use-context CLUSTER_NAME
      
    2. 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 project host fleet.
      • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
      • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
      • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
      • --enable_all Mengizinkan skrip untuk:
        • Memberikan izin IAM yang diperlukan.
        • Aktifkan Google API yang diperlukan.
        • Berikan 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 pada AWS untuk menginstal kontrol dengan fitur default dan Istio CA. Masukkan nilai Anda di {i>placeholder<i} yang disediakan. Anda dapat memilih untuk mengaktifkan Ingress untuk publik atau subnet pribadi.

    Publik

    1. Tetapkan konteks saat ini ke cluster pengguna Anda:

      kubectl config use-context CLUSTER_NAME
      
    2. 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 project host fleet.
      • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
      • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
      • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
      • --enable_all Mengizinkan skrip untuk:
        • Memberikan izin IAM yang diperlukan.
        • Aktifkan Google API yang diperlukan.
        • Berikan 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

    1. Tetapkan konteks saat ini ke cluster pengguna Anda:

      kubectl config use-context CLUSTER_NAME
      
    2. 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
      
    3. 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 project host fleet.
      • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
      • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
      • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
      • --enable_all Mengizinkan skrip untuk:
        • Memberikan izin IAM yang diperlukan.
        • Aktifkan Google API yang diperlukan.
        • Berikan 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 dibuat. Untuk informasi selengkapnya tentang file overlay, lihat Mengaktifkan opsional fitur pada bidang kontrol dalam cluster

    Azure

    Jalankan perintah berikut di GKE di Azure (pratinjau) untuk menginstal bidang kontrol dengan fitur default dan Istio CA. Masukkan nilai pada {i>placeholder <i}yang disediakan. Anda dapat memilih untuk mengaktifkan Ingress untuk yaitu subnet publik atau subnet pribadi.

    Publik

    1. Tetapkan konteks saat ini ke cluster pengguna Anda:

      kubectl config use-context CLUSTER_NAME
      
    2. Jalankan asmcli install:

      ./asmcli install \
        --fleet_id FLEET_PROJECT_ID \
        --kubeconfig KUBECONFIG_FILE \
        --output_dir DIR_PATH \
        --platform multicloud \
        --enable_all \
        --option attached-cluster \
        --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 project host fleet.
      • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
      • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
      • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
      • --enable_all Mengizinkan skrip untuk:
        • Memberikan izin IAM yang diperlukan.
        • Aktifkan Google API yang diperlukan.
        • Berikan label pada cluster yang mengidentifikasi mesh.
        • Daftarkan cluster ke fleet jika belum terdaftar.
      • --option attached-cluster Mengubah default menandatangani utilitas.
      • -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

    1. Tetapkan konteks saat ini ke cluster pengguna Anda:

      kubectl config use-context CLUSTER_NAME
      
    2. 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
      
    3. Jalankan asmcli install:

      ./asmcli install \
        --fleet_id FLEET_PROJECT_ID \
        --kubeconfig KUBECONFIG_FILE \
        --output_dir DIR_PATH \
        --platform multicloud \
        --enable_all \
        --option attached-cluster \
        --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 project host fleet.
      • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
      • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
      • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
      • --enable_all Mengizinkan skrip untuk:
        • Memberikan izin IAM yang diperlukan.
        • Aktifkan Google API yang diperlukan.
        • Berikan label pada cluster yang mengidentifikasi mesh.
        • Daftarkan cluster ke fleet jika belum terdaftar.
      • --option attached-cluster Mengubah default menandatangani utilitas.
      • -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 dibuat. Untuk informasi selengkapnya tentang file overlay, lihat Mengaktifkan opsional fitur pada bidang kontrol dalam cluster

    Amazon EKS

    Jalankan perintah berikut di Amazon EKS untuk menginstal bidang kontrol dengan dan Istio CA. Masukkan nilai Anda dalam kolom yang disediakan {i>placeholder<i}.

    1. Tetapkan konteks saat ini ke cluster pengguna Anda:

      kubectl config use-context CLUSTER_NAME
      
    2. Jalankan asmcli install:

      ./asmcli install \
        --fleet_id FLEET_PROJECT_ID \
        --kubeconfig KUBECONFIG_FILE \
        --output_dir DIR_PATH \
        --platform multicloud \
        --enable_all \
        --option attached-cluster \
        --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 \
        --network_id default
      
      • --fleet_id Project ID project host fleet.
      • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
      • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
      • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
      • --enable_all Mengizinkan skrip untuk:
        • Memberikan izin IAM yang diperlukan.
        • Aktifkan Google API yang diperlukan.
        • Berikan label pada cluster yang mengidentifikasi mesh.
        • Daftarkan cluster ke fleet jika belum terdaftar.
      • --option attached-cluster Mengubah penandatanganan default utilitas menjadi istiod.
      • -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
      • --network_id Jika Anda menyiapkan jaringan multi-jaringan mesh, lalu tetapkan --network_id ke nilai yang unik untuk setiap cluster di mesh.

    Microsoft AKS

    Jalankan perintah berikut di Microsoft AKS untuk menginstal bidang kontrol dengan fitur default dan Istio CA. Masukkan nilai Anda dalam kolom yang disediakan {i>placeholder<i}.

    1. Tetapkan konteks saat ini ke cluster pengguna Anda:

      kubectl config use-context CLUSTER_NAME
      
    2. 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 \
        --option attached-cluster \
        --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 \
        --network_id default
      
      • HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer Mengizinkan pendaftaran dengan GKE Hub.
      • --fleet_id Project ID project host fleet.
      • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
      • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
      • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
      • --enable_all Mengizinkan skrip untuk:
        • Memberikan izin IAM yang diperlukan.
        • Aktifkan Google API yang diperlukan.
        • Berikan label pada cluster yang mengidentifikasi mesh.
        • Daftarkan cluster ke fleet jika belum terdaftar.
      • --option attached-cluster Mengubah penandatanganan default utilitas menjadi istiod.
      • -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
      • --network_id Jika Anda menyiapkan jaringan multi-jaringan mesh, lalu tetapkan --network_id ke nilai yang unik untuk setiap cluster di mesh.

Menginstal dengan Istio CA dengan Google Cloud Observability diaktifkan

Jika ingin menggunakan dasbor Cloud Service Mesh, Anda harus mengaktifkan Stackdriver.

GKE

Jalankan perintah berikut untuk menginstal bidang kontrol dengan 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 yang akan digunakan cluster nama cluster, serta zona atau region cluster.
  • --fleet_id Project ID project host fleet. Jika Anda tidak menyertakan opsi ini, asmcli menggunakan project tempat cluster dibuat saat mendaftarkan cluster.
  • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
  • --enable_all Mengizinkan skrip untuk:
    • Memberikan izin IAM yang diperlukan.
    • Aktifkan Google API yang diperlukan.
    • Berikan 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 diketahui bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan --option prometheus-and-stackdriver.

Lokal

Jalankan perintah berikut di Google Distributed Cloud, atau Google Distributed Cloud untuk menginstal bidang kontrol dengan Stackdriver serta fitur opsional lainnya dan Istio CA. Masukkan nilai Anda di {i>placeholder<i} yang disediakan.

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan 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 diketahui bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan --option prometheus-and-stackdriver.

    Untuk melihat SLO dan metrik infrastruktur di UI Cloud Service Mesh, Anda juga harus melakukan tiga langkah pertama di Mengaktifkan logging dan pemantauan aplikasi. Jika logging dan pemantauan tidak diaktifkan dan tidak menerima log dan metrik kustom, dasbor Cloud Service Mesh tidak akan SLO, log error, atau metrik CPU dan memori.

AWS

Jalankan perintah berikut di GKE pada AWS untuk menginstal kontrol dengan Stackdriver dan fitur opsional lainnya serta Istio CA. Masukkan nilai pada {i>placeholder <i}yang disediakan. Anda dapat memilih untuk mengaktifkan Ingress untuk yaitu subnet publik atau subnet pribadi.

Publik

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan 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 diketahui bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan --option prometheus-and-stackdriver.

Pribadi

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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
    
  3. 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan 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 dibuat. Untuk informasi selengkapnya tentang file overlay, lihat Mengaktifkan opsional fitur pada bidang kontrol dalam cluster
    • --option stackdriver Mengaktifkan opsi Stackdriver. Perlu diketahui 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 Download paket anthos-service-mesh atau buat stackdriver.yaml dari manifes yang diberikan.

Azure

Jalankan perintah berikut di GKE di Azure (pratinjau) 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

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan 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 diketahui bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan --option prometheus-and-stackdriver.

Pribadi

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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
    
  3. 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan 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 dibuat. Untuk informasi selengkapnya tentang file overlay, lihat Mengaktifkan opsional fitur pada bidang kontrol dalam cluster
    • --option stackdriver Mengaktifkan opsi Stackdriver. Perlu diketahui 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 Download paket anthos-service-mesh atau buat stackdriver.yaml dari manifes yang diberikan.

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 {i>placeholder<i} yang disediakan.

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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 \
      --option attached-cluster
    
    • --fleet_id Project ID project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan 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 diketahui bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan --option prometheus-and-stackdriver.
    • --option stackdriver Mengubah utilitas penandatanganan default menjadi istiod.

Microsoft AKS

Jalankan perintah berikut di Microsoft AKS untuk menginstal bidang kontrol dengan fitur default dan Istio CA. Masukkan nilai Anda dalam kolom yang disediakan {i>placeholder<i}.

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. 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 \
      --option attached-cluster
    
    • HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer Mengizinkan pendaftaran dengan GKE Hub.
    • --fleet_id Project ID project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan 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 diketahui bahwa Anda juga dapat mengaktifkan Stackdriver dan Prometheus menggunakan --option prometheus-and-stackdriver.
    • --option stackdriver Mengubah utilitas penandatanganan default menjadi istiod.

Instal dengan fitur opsional

File overlay adalah file YAML yang berisi resource kustom IstioOperator (CR) yang Anda teruskan ke asmcli untuk mengonfigurasi bidang kontrol. Anda dapat mengganti konfigurasi bidang kontrol {i>default<i} dan mengaktifkan fitur opsional dengan meneruskan file YAML menjadi asmcli. Anda dapat menambahkan lapisan di lebih banyak overlay, dan setiap overlay mengganti konfigurasi pada lapisan sebelumnya. Sebagai praktik terbaik, sebaiknya simpan file overlay di sistem kontrol versi Anda.

Ada dua opsi untuk mengaktifkan fitur opsional: --option dan --custom_overlay

Gunakan --option untuk jika Anda tidak perlu mengubah overlay . Dengan metode ini, asmclimengambil file dari Repositori GitHub keamanan untuk Anda.

Gunakan --custom_overlay saat Anda perlu menyesuaikan file overlay.

Untuk informasi selengkapnya, lihat Mengaktifkan fitur opsional pada bidang kontrol dalam cluster.

GKE

Jalankan perintah berikut untuk menginstal bidang kontrol dengan kolom aplikasi baru. 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 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 \
  --custom_overlay OVERLAY_FILE
  • --project_id, --cluster_name, dan --cluster_location Tentukan project ID yang akan digunakan cluster nama cluster, serta zona atau region cluster.
  • --fleet_id Project ID project host fleet. Jika Anda tidak menyertakan opsi ini, asmcli menggunakan project tempat cluster dibuat saat mendaftarkan cluster.
  • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
  • --enable_all Mengizinkan skrip untuk:
    • Memberikan izin IAM yang diperlukan.
    • Aktifkan Google API yang diperlukan.
    • Berikan label pada cluster yang mengidentifikasi mesh.
    • Daftarkan cluster ke fleet jika belum terdaftar.
  • --ca mesh_ca Gunakan certificate authority Cloud Service Mesh sebagai {i>certificate authority<i}. Perhatikan bahwa asmclimengonfigurasi Certificate authority Cloud Service Mesh yang akan digunakan fleet workload identity
  • --custom_overlay Tetapkan nama file overlay.

Di luar Google Cloud

Jalankan perintah berikut di Google Distributed Cloud, Google Distributed Cloud, GKE di AWS, Amazon EKS, atau Microsoft AK. Masukkan nilai Anda di placeholder yang disediakan.

  1. Tetapkan konteks saat ini ke cluster pengguna Anda:

    kubectl config use-context CLUSTER_NAME
    
  2. Jalankan asmcli install untuk menginstal bidang kontrol dengan aplikasi baru. 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 project host fleet.
    • --kubeconfig Jalur lengkap menuju File kubeconfig. Variabel lingkungan $PWD tidak berfungsi di sini. Selain itu, lokasi file kubeconfig relatif yang menggunakan `~` tidak akan berfungsi.
    • --output_dir Sertakan opsi ini untuk menentukan direktori tempat asmcli mendownload anthos-service-mesh mengemas dan mengekstrak file instalasi, yang berisi istioctl, sampel, dan manifes. Sebaliknya asmcli akan mendownload file ke direktori tmp. Anda dapat menentukan jalur relatif atau jalur lengkap. Lingkungan variabel $PWD tidak berfungsi di sini.
    • --platform multicloud Menentukan bahwa platform adalah sesuatu selain Google Cloud, seperti infrastruktur lokal atau multi-cloud.
    • --enable_all Mengizinkan skrip untuk:
      • Memberikan izin IAM yang diperlukan.
      • Aktifkan Google API yang diperlukan.
      • Berikan label pada cluster yang mengidentifikasi mesh.
      • Daftarkan cluster ke fleet jika belum terdaftar.
    • --ca mesh_ca Gunakan certificate authority Cloud Service Mesh sebagai {i>certificate authority<i}. Perhatikan bahwa asmclimengonfigurasi Certificate authority Cloud Service Mesh yang akan digunakan fleet workload identity
    • --custom_overlay Tetapkan nama file overlay.

Instal gateway

Cloud Service Mesh memberi Anda opsi untuk men-deploy dan mengelola gateway sebagai bagian dari jaringan layanan. Gateway menjelaskan load balancer yang beroperasi di tepi yang menerima koneksi HTTP/TCP masuk atau keluar. Gateway adalah Envoy {i>proxy<i} yang memberi Anda kontrol mendetail atas lalu lintas yang masuk dan meninggalkan {i>mesh<i}.

  1. Buat namespace untuk gateway masuk jika Anda belum memilikinya. Gateway adalah beban kerja pengguna, dan sebagai praktik terbaik, mereka tidak boleh yang 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
    
  2. Aktifkan injeksi otomatis di gateway. Langkah-langkah yang diperlukan bergantung pada apakah yang ingin Anda gunakan label injeksi default (misalnya, istio-injection=enabled) atau label revisi di gateway namespace. Tag revisi dan label revisi default digunakan oleh webhook injektor file bantuan untuk mengaitkan proxy yang diinjeksikan dengan revisi bidang kontrol.

    Label injeksi default

    Terapkan label injeksi default ke namespace.

    kubectl label namespace GATEWAY_NAMESPACE istio-injection=enabled istio.io/rev-
    

    Label revisi

    1. 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 tersebut menghasilkan label revisi yang sesuai dengan Versi Cloud Service Mesh, misalnya: asm-1208-6

    2. Terapkan label revisi ke namespace. Dalam perintah berikut ini, REVISION adalah nilai revisi istiod label yang Anda catat pada 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 {i>output<i} tersebut. Itu berarti bahwa namespace sebelumnya tidak memiliki Label istio.io/rev, yang akan Anda dapatkan dalam penginstalan baru Cloud Service Mesh atau deployment baru. Karena injeksi otomatis akan gagal jika namespace memiliki istio.io/rev dan istio-injection label, semua perintah kubectl label di Cloud Service Mesh dokumentasi secara eksplisit menentukan kedua label.

    Jika namespace gateway tidak diberi label, pod istio-ingressgateway akan gagal dengan pesan error ImagePullBackOff saat gateway mencoba menarik dan gambar auto. Gambar ini harus diganti dengan webhook.

  3. Download contoh file konfigurasi .yaml gateway masuk dari Repositori anthos-service-mesh-packages.

  4. Terapkan contoh konfigurasi .yaml gateway masuk apa adanya, atau modifikasi sesuai diperlukan.

    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 lebih lanjut praktik terbaik untuk gateway.

Men-deploy dan men-deploy ulang workload

Cloud Service Mesh menggunakan proxy file bantuan untuk meningkatkan keamanan, keandalan, dan kemampuan observasi. Dengan Cloud Service Mesh, fungsi-fungsi ini diabstraksi dari container utama aplikasi dan diimplementasikan dalam proxy di luar proses umum dikirimkan sebagai container terpisah dalam Pod yang sama.

Penginstalan belum selesai hingga Anda mengaktifkan proxy file bantuan otomatis injeksi (injeksi otomatis) dan memulai ulang Pod untuk workload apa pun yang yang berjalan di cluster Anda sebelum Anda menginstal Cloud Service Mesh.

Untuk mengaktifkan injeksi otomatis, beri label namespace Anda dengan label injeksi default jika tag default sudah disiapkan, atau label revisi yang ditetapkan pada istiod saat Anda menginstal Cloud Service Mesh. Revisi default dan label revisi digunakan oleh webhook injektor file sespan untuk mengaitkan memasukkan file bantuan dengan revisi istiod. Setelah menambahkan label, setiap Pod yang ada dalam namespace harus dimulai ulang agar file bantuan dapat diinjeksi.

Sebelum men-deploy workload baru di namespace baru, pastikan untuk mengonfigurasi injeksi otomatis sehingga Cloud Service Mesh dapat memantau dan mengamankan traffic.

  1. 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 tag default pada revisi maksudnya, tidak perlu memberi label ulang namespace.

    Label revisi

    1. 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-1208-6-5788d57586-bljj4   1/1     Running   0          23h   app=istiod,istio.io/rev=asm-1208-6,istio=istiod,pod-template-hash=5788d57586
      istiod-asm-1208-6-5788d57586-vsklm   1/1     Running   1          23h   app=istiod,istio.io/rev=asm-1208-6,istio=istiod,pod-template-hash=5788d57586

      Pada output, di bawah kolom LABELS, perhatikan nilai istiod label revisi, yang mengikuti awalan istio.io/rev=. Dalam contoh ini, nilainya adalah asm-1208-6.

    2. Terapkan label revisi dan hapus label istio-injection jika sudah ada. Dalam perintah berikut, NAMESPACE adalah nama namespace tempat Anda ingin mengaktifkan injeksi otomatis, dan REVISION 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 {i>output<i} tersebut. Itu berarti bahwa namespace sebelumnya tidak memiliki Label istio-injection, yang akan Anda dapatkan di jendela baru penginstalan Cloud Service Mesh atau deployment baru. Karena injeksi otomatis perilaku tidak ditentukan jika namespace memiliki istio-injection dan label revisi, semua perintah kubectl label di Dokumentasi Cloud Service Mesh secara eksplisit memastikan bahwa hanya satu yang ditetapkan.

  2. Jika workload berjalan di cluster sebelum Anda menginstal Cloud Service Mesh, mulai ulang Pod untuk memicu injeksi ulang.

    Cara Anda memulai ulang Pod bergantung pada aplikasi dan lingkungan yang digunakan cluster sudah masuk. Misalnya, di lingkungan staging, Anda mungkin hanya menghapus semua Pod, sehingga Pod akan dimulai ulang. Namun dalam produksi Anda mungkin memiliki proses yang mengimplementasikan sebuah blue-green deployment 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?