Menginstal Anthos Service Mesh di cluster baru

Anthos Service Mesh adalah framework yang kompatibel dengan Istio untuk menghubungkan, memantau, dan mengamankan layanan yang berjalan di Google Kubernetes Engine (GKE) dan GKE di VMware. Solusi ini memungkinkan Anda membuat jaringan layanan yang di-deploy dengan load balancing, autentikasi layanan ke layanan, pemantauan, dan lainnya, tanpa memerlukan perubahan pada kode layanan. Anthos Service Mesh secara otomatis memasukkan proxy file bantuan untuk setiap pod aplikasi Anda. Proxy file bantuan mencegat semua traffic jaringan ke dan dari pod. Anthos Service Mesh juga mengonfigurasi gateway masuk untuk mengelola traffic masuk ke mesh. Anda dapat menggunakan Istio API open source untuk mengonfigurasi kebijakan yang diterapkan pada file bantuan dan gateway.

Panduan ini menjelaskan cara menginstal Anthos Service Mesh versi 1.5.10 di cluster GKE Google Cloud yang baru. Penginstalan ini mengaktifkan fitur berikut:

Panduan ini juga menjelaskan cara mendaftarkan cluster Anda di fleet yang berada dalam project Google Cloud yang sama dengan cluster tersebut. Armada memungkinkan Anda mengatur cluster untuk mempermudah pengelolaan multi-cluster. Dengan mendaftarkan cluster dalam suatu fleet, Anda dapat mengelompokkan layanan dan infrastruktur lainnya sesuai kebutuhan untuk menerapkan kebijakan yang konsisten.

Sebelum memulai

Panduan ini mengasumsikan bahwa Anda sudah:

Sebelum memulai penginstalan:

Persyaratan

  • Anda harus memiliki lisensi atau langganan uji coba GKE Enterprise. Lihat panduan Harga GKE Enterprise untuk mengetahui detailnya.

  • Cluster GKE Anda harus memenuhi persyaratan berikut:

    • Minimal empat node.
    • Jenis mesin minimum adalah e2-standard-4, yang memiliki empat vCPU.
    • Gunakan saluran rilis, bukan versi statis GKE
  • Agar dapat disertakan dalam mesh layanan, port layanan harus diberi nama, dan namanya harus menyertakan protokol port dalam sintaksis berikut: name: protocol[-suffix] dengan tanda kurung siku menunjukkan akhiran opsional yang harus diawali dengan tanda pisah. Untuk mengetahui informasi selengkapnya, Penamaan port layanan.

  • Jika menginstal Anthos Service Mesh di cluster pribadi, Anda harus menambahkan aturan firewall untuk membuka port 15017 jika ingin menggunakan injeksi file bantuan otomatis. Jika tidak menambahkan aturan firewall dan injeksi file bantuan otomatis diaktifkan, Anda akan mendapatkan error saat men-deploy workload. Untuk mengetahui detail tentang cara menambahkan aturan firewall, lihat Menambahkan aturan firewall untuk kasus penggunaan tertentu.

  • Jika telah membuat perimeter layanan di organisasi, Anda mungkin perlu menambahkan layanan Mesh CA ke perimeter. Lihat Menambahkan Mesh CA ke perimeter layanan untuk mengetahui informasi selengkapnya.

Pembatasan

Hanya satu penginstalan Anthos Service Mesh per project Google Cloud yang didukung. Beberapa deployment mesh dalam satu project tidak didukung.

Data sertifikat

Sertifikat dari Mesh CA mencakup data berikut tentang layanan aplikasi Anda:

  • Project ID Google Cloud
  • Namespace GKE
  • Nama akun layanan GKE

Menyiapkan project

  1. Dapatkan project ID project tempat cluster akan dibuat:

    gcloud

    gcloud projects list

    Konsol

    1. Di konsol Google Cloud, buka halaman Dashboard:

      Buka halaman Dasbor

    2. Klik menu drop-down Select from di bagian atas halaman. Di jendela Select from yang muncul, pilih project Anda.

      Project ID ditampilkan di kartu Project info Dasbor project.

  2. Buat variabel lingkungan untuk project ID:
    export PROJECT_ID=YOUR_PROJECT_ID
    
  3. Tetapkan project ID default untuk alat command line gcloud:
    gcloud config set project ${PROJECT_ID}
  4. Buat variabel lingkungan untuk nomor project:
    export PROJECT_NUMBER=$(gcloud projects describe ${PROJECT_ID} --format="value(projectNumber)")

  5. Tetapkan peran Identity and Access Management (IAM) yang diperlukan. Jika menjadi Project Owner, Anda memiliki semua izin yang diperlukan untuk menyelesaikan penginstalan dan mendaftarkan cluster dengan environ Anda. Jika Anda bukan Project Owner, Anda memerlukan seseorang yang memberi Anda peran IAM khusus berikut. Dengan perintah berikut, ubah GCP_EMAIL_ADDRESS ke akun yang Anda gunakan untuk login ke Google Cloud.
    gcloud projects add-iam-policy-binding ${PROJECT_ID} \
         --member user:GCP_EMAIL_ADDRESS \
         --role=roles/editor \
         --role=roles/compute.admin \
         --role=roles/container.admin \
         --role=roles/resourcemanager.projectIamAdmin \
         --role=roles/iam.serviceAccountAdmin \
         --role=roles/iam.serviceAccountKeyAdmin \
         --role=roles/gkehub.admin

    Untuk mempelajari lebih lanjut cara memberikan peran IAM, baca artikel Memberikan, mengubah, dan mencabut akses ke resource. Untuk deskripsi peran ini, lihat Izin yang diperlukan untuk menginstal Anthos Service Mesh

  6. Mengaktifkan API berikut:
    gcloud services enable \
        container.googleapis.com \
        compute.googleapis.com \
        monitoring.googleapis.com \
        logging.googleapis.com \
        cloudtrace.googleapis.com \
        meshca.googleapis.com \
        meshtelemetry.googleapis.com \
        meshconfig.googleapis.com \
        iamcredentials.googleapis.com \
        anthos.googleapis.com \
        gkeconnect.googleapis.com \
        gkehub.googleapis.com \
        cloudresourcemanager.googleapis.com

    Pengaktifan API dapat memerlukan waktu satu menit atau lebih. Saat API diaktifkan, Anda akan melihat output yang mirip dengan berikut ini:

    Operation "operations/acf.601db672-88e6-4f98-8ceb-aa3b5725533c" finished
    successfully.
    

Menyiapkan cluster GKE baru

Bagian ini menjelaskan dasar-dasar pembuatan cluster GKE dengan opsi yang diperlukan untuk Anthos Service Mesh. Untuk mengetahui informasi selengkapnya, lihat Membuat cluster.

Untuk menyiapkan cluster baru:

  1. Pilih zona atau region, jenis mesin, dan saluran rilis GKE untuk cluster baru. Jenis mesin minimum yang diperlukan oleh Anthos Service Mesh adalah e2-standard-4. Anda dapat menggunakan opsi saluran rilis apa pun.

    • Jika Anda akan membuat cluster zona tunggal, jalankan perintah berikut untuk mendapatkan daftar zona GCP yang tersedia:

      gcloud compute zones list
      
    • Jika Anda akan membuat cluster regional, jalankan perintah berikut untuk mendapatkan daftar region yang tersedia:

      gcloud compute regions list
      
    • Untuk mendapatkan daftar jenis mesin:

      gcloud compute machine-types list | more
      
  2. Buat variabel lingkungan berikut:

    • Tetapkan nama cluster:

      export CLUSTER_NAME=YOUR_CLUSTER_NAME

      Nama cluster hanya boleh berisi karakter alfanumerik dengan huruf kecil dan '-', harus diawali dengan huruf dan diakhiri dengan alfanumerik, serta tidak boleh lebih dari 40 karakter.

    • Tetapkan CLUSTER_LOCATION ke zona cluster atau region cluster Anda:

      export CLUSTER_LOCATION=YOUR_ZONE_OR_REGION
    • Tetapkan kumpulan beban kerja:

      export WORKLOAD_POOL=${PROJECT_ID}.svc.id.goog
    • Setel ID mesh:

      export MESH_ID="proj-${PROJECT_NUMBER}"
    • Tetapkan saluran rilis. Ganti YOUR_CHANNEL dengan salah satu dari hal berikut:regular, stable, atau rapid.

      export CHANNEL=YOUR_CHANNEL

      Untuk deskripsi setiap saluran, lihat Saluran yang tersedia.

  3. Tetapkan zona atau region default untuk Google Cloud CLI.

    • Untuk cluster zona tunggal, tetapkan zona default:

      gcloud config set compute/zone ${CLUSTER_LOCATION}
    • Untuk cluster regional, tetapkan region default:

      gcloud config set compute/region ${CLUSTER_LOCATION}

    Tips: Agar penyiapan lingkungan shell Anda di masa mendatang lebih mudah, Anda dapat menyalin dan menempelkan pernyataan export untuk setiap variabel lingkungan ke skrip shell sederhana yang Anda source saat memulai shell baru. Anda juga dapat menambahkan perintah gcloud yang menetapkan nilai default ke skrip. Atau, Anda dapat menggunakan gcloud init untuk membuat dan mengaktifkan konfigurasi gcloud yang telah diberi nama.

  4. Buat cluster dengan opsi yang diperlukan oleh Anthos Service Mesh. Perintah berikut akan membuat cluster yang berisi 4 node jenis mesin e2-standard-4, yang memiliki 4 vCPU. Ini adalah jenis mesin minimum dan jumlah node yang diperlukan untuk Anthos Service Mesh. Anda dapat menentukan jenis mesin lain asalkan memiliki setidaknya 4 vCPU, dan Anda dapat meningkatkan jumlah node sesuai kebutuhan untuk persyaratan sistem Anda.

    gcloud beta container clusters create ${CLUSTER_NAME} \
        --machine-type=e2-standard-4 \
        --num-nodes=4 \
        --workload-pool=${WORKLOAD_POOL} \
        --enable-stackdriver-kubernetes \
        --subnetwork=default \
        --labels=mesh_id=${MESH_ID} \
        --release-channel=${CHANNEL}

    Perintah clusters create mencakup:

    • workload-pool=${WORKLOAD_POOL}: Mengaktifkan Workload Identity, yang merupakan cara yang direkomendasikan untuk mengakses layanan Google Cloud dengan aman dari aplikasi GKE.

    • enable-stackdriver-kubernetes: Mengaktifkan Cloud Monitoring dan Cloud Logging di GKE.

    • subnetwork=default: Membuat subnetwork default.

    • labels mesh_id=${MESH_ID}: Menetapkan label mesh_id di cluster, yang diperlukan agar metrik ditampilkan di halaman Anthos Service Mesh di Konsol Google Cloud.

    • release-channel ${CHANNEL}: Mendaftarkan cluster di saluran rilis yang ditentukan.

Menetapkan kredensial dan izin

Sebelum melanjutkan, pastikan Anda telah mengaktifkan semua API yang diperlukan. Jika Anda ragu, tidak ada salahnya menjalankan kembali perintah gcloud services enable.

  1. Lakukan inisialisasi project Anda agar siap untuk diinstal. Di antaranya, perintah ini akan membuat akun layanan agar komponen Istio, seperti proxy sidecar, mengakses dengan aman data dan resource project Anda:
    curl --request POST \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --data '' \
      https://meshconfig.googleapis.com/v1alpha1/projects/${PROJECT_ID}:initialize

    Perintah ini merespons dengan tanda kurung kurawal kosong: {}

    Jika di masa mendatang Anda menginstal Anthos Service Mesh versi baru di cluster ini, Anda tidak perlu menjalankan kembali perintah tersebut, tetapi menjalankan perintah lagi tidak akan memengaruhi penginstalan Anda.

  2. Dapatkan kredensial autentikasi untuk berinteraksi dengan cluster:
    gcloud container clusters get-credentials ${CLUSTER_NAME}
  3. Berikan izin admin cluster kepada pengguna saat ini. Anda memerlukan izin berikut agar dapat membuat aturan role-based access control (RBAC) yang diperlukan untuk Anthos Service Mesh:
    kubectl create clusterrolebinding cluster-admin-binding \
      --clusterrole=cluster-admin \
      --user="$(gcloud config get-value core/account)"

    Jika melihat error "cluster-admin-binding" already exists, Anda dapat mengabaikannya dengan aman dan melanjutkan dengan binding admin cluster yang ada.

Mendaftarkan cluster Anda

Anda harus mendaftarkan cluster ke fleet project untuk mendapatkan akses ke antarmuka pengguna terpadu di Konsol Google Cloud. Armada menyediakan cara terpadu untuk melihat dan mengelola cluster dan workload-nya, termasuk cluster di luar Google Cloud.

Membuat akun layanan dan file kunci Google Cloud

File JSON yang berisi kredensial akun layanan diperlukan untuk mendaftarkan cluster. Untuk mengikuti prinsip hak istimewa terendah, sebaiknya buat akun layanan yang berbeda untuk setiap cluster yang Anda daftarkan.

Untuk membuat akun layanan dan file kunci:

  1. Pilih nama untuk akun layanan dan buat variabel lingkungan untuk akun tersebut:

    export SERVICE_ACCOUNT_NAME=SERVICE_ACCOUNT_NAME
    
  2. Buat akun layanan:

    gcloud iam service-accounts create ${SERVICE_ACCOUNT_NAME}
  3. Tampilkan daftar semua akun layanan project untuk mengonfirmasi bahwa akun layanan telah dibuat:

    gcloud iam service-accounts list
  4. Ikat peran IAM gkehub.connect ke akun layanan:

    gcloud projects add-iam-policy-binding ${PROJECT_ID} \
       --member="serviceAccount:${SERVICE_ACCOUNT_NAME}@${PROJECT_ID}.iam.gserviceaccount.com" \
       --role="roles/gkehub.connect"
  5. Buat variabel lingkungan untuk jalur file lokal tempat Anda ingin menyimpan file JSON. Sebaiknya beri nama file menggunakan nama akun layanan dan project ID Anda, seperti: /tmp/creds/${SERVICE_ACCOUNT_NAME}-${PROJECT_ID}.json

    export SERVICE_ACCOUNT_KEY_PATH=LOCAL_KEY_PATH
  6. Download file JSON kunci pribadi akun layanan:

    gcloud iam service-accounts keys create ${SERVICE_ACCOUNT_KEY_PATH} \
       --iam-account=${SERVICE_ACCOUNT_NAME}@${PROJECT_ID}.iam.gserviceaccount.com

Mendaftarkan cluster

Dalam perintah berikut, ganti MEMBERSHIP_NAME dengan nama yang secara unik mewakili cluster yang terdaftar di Hub.

gcloud container hub memberships register MEMBERSHIP_NAME \
    --gke-cluster=${CLUSTER_LOCATION}/${CLUSTER_NAME} \
    --service-account-key-file=${SERVICE_ACCOUNT_KEY_PATH}

Perintah ini merespons dengan output yang mirip dengan berikut ini:

kubeconfig entry generated for CLUSTER_NAME.
Waiting for membership to be created...done.
Created a new membership [projects/PROJECT_ID/locations/global/memberships/MEMBERSHIP_NAME] for the cluster [MEMBERSHIP_NAME]
Generating the Connect Agent manifest...
Deploying the Connect Agent on cluster [MEMBERSHIP_NAME] in namespace [gke-connect]...
Deployed the Connect Agent on cluster [MEMBERSHIP_NAME] in namespace [gke-connect].
Finished registering the cluster [MEMBERSHIP_NAME] with the Hub.

Kunci akun layanan ini disimpan sebagai rahasia bernama creds-gcp di namespace gke-connect.

Untuk mengetahui informasi lebih lanjut tentang pendaftaran cluster, baca Mendaftarkan cluster dalam dokumentasi Connect.

Mendownload file penginstalan

Sebelum melanjutkan, verifikasi bahwa ASM Mesh Data Plane Service Account adalah anggota project:

gcloud projects get-iam-policy ${PROJECT_ID} | grep -B 1 'roles/meshdataplane.serviceAgent'

Jika perintah sebelumnya tidak menghasilkan apa pun, kembali ke bagian Tetapkan kredensial dan izin, lalu jalankan perintah curl.

    Linux

  1. Download file penginstalan Anthos Service Mesh ke direktori kerja Anda saat ini:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-linux.tar.gz
  2. Download file tanda tangan dan gunakan openssl untuk memverifikasi tanda tangan:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-linux.tar.gz.1.sig
    openssl dgst -verify - -signature istio-1.5.10-asm.2-linux.tar.gz.1.sig istio-1.5.10-asm.2-linux.tar.gz <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF

    Output yang diharapkan adalah: Verified OK

  3. Ekstrak konten file ke lokasi mana saja di sistem file Anda. Misalnya, untuk mengekstrak konten ke direktori kerja saat ini:
    tar xzf istio-1.5.10-asm.2-linux.tar.gz

    Perintah ini membuat direktori penginstalan di direktori kerja saat ini bernama istio-1.5.10-asm.2 yang berisi:

    • Aplikasi contoh di samples
    • Alat berikut di direktori bin:
      • istioctl: Anda menggunakan istioctl untuk menginstal Anthos Service Mesh.
      • asmctl: Anda menggunakan asmctl untuk membantu memvalidasi konfigurasi keamanan setelah menginstal Anthos Service Mesh. (Saat ini, asmctl tidak didukung di GKE di VMware.)

  4. Mac OS

  5. Download file penginstalan Anthos Service Mesh ke direktori kerja Anda saat ini:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-osx.tar.gz
  6. Download file tanda tangan dan gunakan openssl untuk memverifikasi tanda tangan:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-osx.tar.gz.1.sig
    openssl dgst -sha256 -verify /dev/stdin -signature istio-1.5.10-asm.2-osx.tar.gz.1.sig istio-1.5.10-asm.2-osx.tar.gz <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF

    Output yang diharapkan adalah: Verified OK

  7. Ekstrak konten file ke lokasi mana saja di sistem file Anda. Misalnya, untuk mengekstrak konten ke direktori kerja saat ini:
    tar xzf istio-1.5.10-asm.2-osx.tar.gz

    Perintah ini membuat direktori penginstalan di direktori kerja saat ini bernama istio-1.5.10-asm.2 yang berisi:

    • Aplikasi contoh di samples
    • Alat berikut di direktori bin:
      • istioctl: Anda menggunakan istioctl untuk menginstal Anthos Service Mesh.
      • asmctl: Anda menggunakan asmctl untuk membantu memvalidasi konfigurasi keamanan setelah menginstal Anthos Service Mesh. (Saat ini, asmctl tidak didukung di GKE di VMware.)

  8. Windows

  9. Download file penginstalan Anthos Service Mesh ke direktori kerja Anda saat ini:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-win.zip
  10. Download file tanda tangan dan gunakan openssl untuk memverifikasi tanda tangan:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-win.zip.1.sig
    openssl dgst -verify - -signature istio-1.5.10-asm.2-win.zip.1.sig istio-1.5.10-asm.2-win.zip <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF

    Output yang diharapkan adalah: Verified OK

  11. Ekstrak konten file ke lokasi mana saja di sistem file Anda. Misalnya, untuk mengekstrak konten ke direktori kerja saat ini:
    tar xzf istio-1.5.10-asm.2-win.zip

    Perintah ini membuat direktori penginstalan di direktori kerja saat ini bernama istio-1.5.10-asm.2 yang berisi:

    • Aplikasi contoh di samples
    • Alat berikut di direktori bin:
      • istioctl: Anda menggunakan istioctl untuk menginstal Anthos Service Mesh.
      • asmctl: Anda menggunakan asmctl untuk membantu memvalidasi konfigurasi keamanan setelah menginstal Anthos Service Mesh. (Saat ini, asmctl tidak didukung di GKE di VMware.)

  12. Pastikan Anda berada di direktori utama penginstalan Anthos Service Mesh.
    cd istio-1.5.10-asm.2
  13. Untuk memudahkan, tambahkan alat di direktori /bin ke PATH Anda:
    export PATH=$PWD/bin:$PATH

Mempersiapkan file konfigurasi resource

Saat menjalankan istioctl apply command untuk menginstal Anthos Service Mesh, tentukan -f istio-operator.yaml pada command line. File ini berisi informasi tentang project dan cluster Anda yang diperlukan untuk mengaktifkan fitur keamanan Mesh dan telemetri Mesh. Anda harus mendownload istio-operator.yaml dan file konfigurasi resource lainnya serta menetapkan informasi project dan cluster.

Untuk menyiapkan file konfigurasi resource:

  1. Jika Anda belum melakukannya, instal kpt:

    gcloud components install kpt
    
  2. Jika ingin, buat direktori baru untuk file konfigurasi resource paket Anthos Service Mesh. Jika ingin menyiapkan lebih dari satu cluster, Anda dapat menggunakan nama cluster tersebut sebagai nama direktori.

  3. Ubah ke direktori tempat Anda ingin mendownload paket Anthos Service Mesh.

  4. Download paket Anthos Service Mesh ke direktori kerja saat ini:

    kpt pkg get \
    https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@release-1.5-asm .
    

  5. Tetapkan nama cluster:

      kpt cfg set asm gcloud.container.cluster ${CLUSTER_NAME}

  6. Secara opsional, sesuaikan file konfigurasi resource menggunakan penyetel kpt. Secara default, penyetel ini menggunakan default untuk gcloud config. Jika Anda menetapkan default gcloud config, atau jika ingin mengubah nilainya, jalankan penyetel berikut:

    • Tetapkan ID project:

      kpt cfg set asm gcloud.core.project ${PROJECT_ID}
    • Tetapkan zona atau region default:

      kpt cfg set asm gcloud.compute.location ${CLUSTER_LOCATION}
  7. Secara opsional, Anda dapat memeriksa file konfigurasi resource ke sistem kontrol sumber Anda sendiri, seperti Cloud Source Repositories, sehingga Anda dapat melacak perubahan pada file tersebut.

Menginstal Anthos Service Mesh

Bagian ini menjelaskan cara menginstal Anthos Service Mesh dan mengaktifkan:

  • Fitur Default yang didukung tercantum di halaman Fitur yang didukung.
  • Certificate authority Anthos Service Mesh (Mesh CA).
  • Pipeline data telemetri yang mendukung dasbor Anthos Service Mesh di Konsol Google Cloud.

Untuk mengetahui informasi tentang cara mengaktifkan fitur Opsional yang didukung, lihat Mengaktifkan fitur opsional.

Untuk menginstal Anthos Service Mesh:

Pilih salah satu perintah berikut untuk mengonfigurasi Anthos Service Mesh dalam mode autentikasi PERMISSIVE mutual TLS (mTLS) atau mode mTLS STRICT.

mTLS PERMISSIF

istioctl manifest apply --set profile=asm \
  -f asm/cluster/istio-operator.yaml

mTLS KETAT

istioctl manifest apply --set profile=asm \
  -f asm/cluster/istio-operator.yaml \
  --set values.global.mtls.enabled=true

Memvalidasi penginstalan

Sebaiknya gunakan alat analisis asmctl untuk memvalidasi konfigurasi dasar project, cluster, dan workload Anda. Jika pengujian asmctl gagal, asmctl akan merekomendasikan solusi, jika memungkinkan. Perintah asmctl validate menjalankan pengujian dasar yang memeriksa:

  1. Bahwa API yang diperlukan oleh Anthos Service Mesh diaktifkan di project.
  2. Bahwa Istio-Ingressgateway dikonfigurasi dengan benar untuk memanggil Mesh CA.
  3. Kondisi umum Istiod dan Istio-Ingressgateway.

Jika Anda menjalankan perintah asmctl validate dengan flag --with-testing-workloads opsional, selain pengujian dasar, asmctl akan menjalankan pengujian keamanan yang memeriksa:

  1. Komunikasi TLS (mTLS) dikonfigurasi dengan benar.
  2. Mesh CA dapat menerbitkan sertifikat.

Untuk menjalankan pengujian keamanan, asmctl men-deploy beban kerja pada cluster Anda dalam namespace pengujian, menjalankan pengujian komunikasi mTLS, menampilkan hasilnya, dan menghapus namespace pengujian.

Untuk menjalankan asmctl:

  1. Pastikan kredensial gcloud application-default ditetapkan:

     gcloud auth application-default login
    
  2. Jika Anda belum melakukannya, dapatkan kredensial autentikasi untuk berinteraksi dengan cluster:

     gcloud container clusters get-credentials ${CLUSTER_NAME}
    
  3. Untuk menjalankan pengujian dasar dan keamanan (dengan asumsi istio-1.5.10-asm.2/bin) ada di PATH Anda):

    asmctl validate --with-testing-workloads
    

    Jika berhasil, perintah akan merespons dengan output yang mirip dengan berikut ini:

    [asmctl version 0.3.0]
    Using Kubernetes context: example-project_us-central1-example-cluster
    To change the context, use the --context flag
    Validating enabled APIs
    OK
    Validating ingressgateway configuration
    OK
    Validating istio system
    OK
    Validating sample traffic
    Launching example services...
    Sent traffic to example service http code: 200
    verified mTLS configuration
    OK
    Validating issued certs
    OK
    

Memasukkan proxy file bantuan

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

Sebelum men-deploy workload, pastikan untuk mengonfigurasi injeksi proxy sidecar sehingga Anthos Service Mesh dapat memantau dan mengamankan traffic.

Anda dapat mengaktifkan injeksi file bantuan otomatis dengan satu perintah, misalnya:

kubectl label namespace NAMESPACE istio-injection=enabled --overwrite

dengan NAMESPACE adalah nama namespace untuk layanan aplikasi Anda, atau default jika Anda tidak membuat namespace secara eksplisit.

Untuk mengetahui informasi selengkapnya, lihat Memasukkan proxy file bantuan.

Melihat dasbor Anthos Service Mesh

Setelah workload di-deploy di cluster dengan proxy file bantuan dimasukkan, Anda dapat menjelajahi halaman Anthos Service Mesh di Konsol Google Cloud untuk melihat semua fitur kemampuan observasi yang ditawarkan Anthos Service Mesh. Perlu diperhatikan bahwa perlu waktu sekitar satu atau dua menit agar data telemetri ditampilkan di konsol Google Cloud setelah Anda men-deploy workload.

Akses ke Anthos Service Mesh di Konsol Google Cloud dikontrol oleh Identity and Access Management (IAM). Untuk mengakses halaman Anthos Service Mesh, Pemilik Project harus memberi pengguna peran Project Editor atau Viewer, atau peran yang lebih ketat yang dijelaskan dalam Mengontrol akses ke Anthos Service Mesh di Konsol Google Cloud.

  1. Di konsol Google Cloud, buka Anthos Service Mesh.

    Buka Anthos Service Mesh

  2. Pilih project Google Cloud dari menu drop-down di panel menu.

  3. Jika Anda memiliki lebih dari satu mesh layanan, pilih mesh dari menu drop-down Service Mesh.

Untuk mempelajari lebih lanjut, lihat Menjelajahi Anthos Service Mesh di Konsol Google Cloud.

Selain halaman Anthos Service Mesh, metrik yang terkait dengan layanan Anda (seperti jumlah permintaan yang diterima oleh layanan tertentu) dikirim ke Cloud Monitoring, yang akan muncul di Metrics Explorer.

Untuk melihat metrik:

  1. Di konsol Google Cloud, buka halaman Monitoring:

    Buka Monitoring

  2. Pilih Resource > Metrics Explorer.

Untuk mengetahui daftar lengkap metrik, lihat Metrik Istio dalam dokumentasi Cloud Monitoring.

Langkah selanjutnya