referensi asmcli

Ringkasan

asmcli adalah alat yang disediakan Google yang dapat Anda gunakan untuk menginstal atau upgrade Cloud Service Mesh. Jika Anda mengizinkannya, asmcli akan mengonfigurasi project dan cluster sebagai berikut:

  • Memberi Anda izin Identity and Access Management (IAM) yang diperlukan pada project Google Cloud Anda.
  • Aktifkan Google API yang diperlukan di project Google Cloud Anda.
  • Berikan label pada cluster yang mengidentifikasi mesh.
  • Buat akun layanan yang memungkinkan komponen bidang data, seperti sebagai proxy file bantuan, akses data dan resource project Anda dengan aman.
  • Mendaftarkan cluster ke armada jika belum terdaftar.

Cukup sertakan flag --enable_all saat Anda menjalankan asmcli untuk memungkinkan konfigurasi project dan cluster Anda. Untuk mengetahui informasi selengkapnya tentang opsi dan tanda asmcli, lihat referensi asmcli.

Selanjutnya, asmcli mengonfigurasi file YAML dengan informasi project dan cluster Anda. File konfigurasi ini diperlukan untuk menginstal Cloud Service Mesh bidang kontrol.

Jika Anda baru menggunakan Cloud Service Mesh dan Istio, lanjutkan ke Platform yang didukung. Bagian selanjutnya dimaksudkan untuk membantu Cloud Service Mesh yang ada untuk mengupgrade ke 1.20.

Transisi ke asmcli

asmcli menggantikan istioctl install dan install_asm. Meskipun Anda masih dapat menggunakan alat lama di Cloud Service Mesh 1.11, kami menghentikan dan tidak akan didukung lagi di Cloud Service Mesh 1.12 dan yang lebih baru. Harap update skrip dan alat Anda untuk menggunakan asmcli.

Semua cluster harus terdaftar di fleet. Lihat Persyaratan perangkat untuk mengetahui detailnya.

Bertransisi dari install_asm

Jika Anda sudah terbiasa dengan install_asm, asmcli serupa, tetapi dengan perbedaan penting berikut:

  • Anda menggunakan asmcli install untuk penginstalan dan upgrade baru. Tidak ada Opsi --mode seperti di install_asm. Saat Anda menjalankan asmcli install, sistem akan memeriksa apakah terdapat bidang kontrol yang ada di cluster. Jika tidak ada bidang kontrol, asmcli menginstal Cloud Service Mesh. Jika cluster memiliki bidang kontrol yang ada (baik bidang kontrol Cloud Service Mesh maupun bidang Bidang kontrol Istio):

  • Sebagian besar asmcli opsi dan flag berperilaku sama seperti yang digunakan untuk install_asm.

Bertransisi dari istioctl install

Jika Anda sudah terbiasa dengan istioctl install, jika Anda biasanya meneruskan File YAML IstioOperator melalui argumen command line -f untuk mengonfigurasi bidang kontrol, Anda dapat meneruskan file ke asmcli menggunakan --custom_overlay sebelumnya. Dalam dokumentasi Cloud Service Mesh, kami menyebut file ini sebagai file overlay.

Platform yang didukung

Penginstalan Cloud Service Mesh pada daftar Platform yang didukung dapat dikonfigurasi atau diupgrade oleh asmcli.

Namun, tidak semua fitur tersedia pada platform di luar Google Cloud. Untuk mengetahui detailnya, lihat Fitur yang didukung bidang kontrol dalam cluster.

Referensi asmcli

Bagian ini menjelaskan argumen yang tersedia untuk asmcli.

Opsi

Mengidentifikasi cluster Anda memiliki opsi berikut untuk mengidentifikasi cluster:

Khusus GKE

-p|--project_id CLUSTER_PROJECT_ID
Project ID tempat cluster dibuat.
-n|--cluster_name CLUSTER_NAME
Nama cluster.
-l|--cluster_location CLUSTER_LOCATION
Zona (untuk cluster satu zona) atau region (untuk regional cluster) tempat cluster dibuat.

Semua platform

--kubeconfig KUBECONFIG_FILE Jalur lengkap ke file kubeconfig. Lingkungan variabel $PWD tidak berfungsi di sini.

--ctx|--context KUBE_CONTEXT Konteks kubeconfig yang akan digunakan. Jika tidak ditentukan, asmcli menggunakan konteks default.

-c|--ca {mesh_ca|gcp_cas|citadel}

{i>Certificate authority <i}(CA) yang akan digunakan untuk mengelola TLS bersama. Menentukan mesh_ca untuk menggunakan certificate authority Cloud Service Mesh (certificate authority Cloud Service Mesh), gcp_cas untuk menggunakan Certificate Authority Service, atau citadel untuk menggunakan Istio CA. Mesh Layanan Cloud Terkelola tidak mendukung Istio Kanada. Lihat informasi tambahan berikut:

--channel CLOUD_SERVICE_MESH_CHANNEL

Menggunakan --channel dengan Saluran rilis Cloud Service Mesh untuk menyediakan revisi Bidang Kontrol yang terkait dengan saluran rilis tersebut. Misalnya, --channel rapid, --channel regular, dan --channel stable. Tanda ini diperlukan saat mengonfigurasi fitur Cloud Service Mesh tertentu pada Cluster Autopilot GKE.

Opsi --channel tidak lagi didukung untuk Managed Cloud Service Mesh karena yang disebutkan dalam Catatan Rilis CSM. Saluran rilis ditentukan berdasarkan saluran rilis cluster GKE Anda. Untuk mengetahui informasi selengkapnya, lihat Saluran rilis Managed Cloud Service Mesh.

--co|--custom_overlay OVERLAY_FILE
Gunakan --custom_overly dengan nama file YAML (disebut sebagai file overlay) yang berisi resource khusus IstioOperator yang akan dikonfigurasi bidang kontrol dalam cluster. Anda menetapkan file overlay untuk mengaktifkan fitur yang tidak diaktifkan secara {i>default<i}. Mesh Layanan Cloud Terkelola tidak mendukung IstioOperator API, sehingga Anda tidak dapat menggunakan --custom_overlay untuk mengonfigurasi dalam bidang kontrol terkelola. asmcli harus dapat menemukan file overlay, sehingga harus berada di direktori yang sama dengan asmcli, atau Anda dapat menentukan jalur relatif. Untuk menambahkan beberapa file, tentukan --co|--custom_overlay dan nama file, misalnya: --co overlay_file1.yaml --co overlay_file2.yaml --co overlay_file3.yaml
--hub-registration-extra-flags HUB_REGISTRATION_EXTRA_FLAGS
Jika menggunakan cluster Amazon EKS terlampir, gunakan --hub-registration-extra-flags untuk mendaftarkan cluster ke fleet jika belum terdaftar.
-k|--key_file FILE_PATH
File kunci untuk akun layanan. Abaikan opsi ini jika Anda tidak menggunakan akun layanan.
--network_id NETWORK_ID
Gunakan --network_id untuk menetapkan label topology.istio.io/network yang diterapkan ke Namespace istio-system. Untuk GKE, --network_id secara default disetel ke nama jaringan untuk cluster tersebut. Untuk lingkungan lain, default akan digunakan.
-o|--option OVERLAY_FILE

Nama file overlay (tanpa ekstensi .yaml) yang asmcli download dari Repositori anthos-service-mesh untuk mengaktifkan fitur opsional. Anda memerlukan konektivitas internet untuk menggunakan --option. Tujuan Opsi --option dan --custom_overlay serupa, tetapi memiliki sedikit perilaku yang berbeda:

Untuk menambahkan beberapa file, tentukan -o|--option dan nama file, misalnya: -o option_file1 -o option_file2 -o option_file3

-D|--output_dir DIR_PATH

Jika tidak ditentukan, asmcli akan membuat direktori sementara tempatnya mendownload file dan konfigurasi yang diperlukan untuk menginstal Cloud Service Mesh. Tentukan flag --output-dir untuk menentukan jalur relatif ke direktori yang akan digunakan sebagai gantinya. Setelah selesai, direktori yang ditentukan akan berisi asm dan subdirektori istio-1.20.4-asm.0. Direktori asm berisi konfigurasi untuk penginstalan. Tujuan Direktori istio-1.20.4-asm.0 berisi konten yang diekstrak dari file penginstalan, yang berisi istioctl, contoh, dan manifes. Jika Anda tentukan --output-dir dan direktori sudah berisi semua file, asmcli menggunakan file tersebut, bukan mendownloadnya lagi.

--platform PLATFORM {gcp|multicloud}

Platform atau penyedia cluster Kubernetes. Default-nya adalah gcp (untuk cluster GKE). Untuk semua lainnya yang digunakan platform ini, multicloud.

-r|--revision_name REVISION NAME

Label revisi adalah pasangan nilai kunci yang yang ditetapkan di bidang kontrol. Kunci label revisi selalu istio.io/rev. Menurut secara default, asmcli akan menetapkan nilai untuk label revisi berdasarkan Versi Cloud Service Mesh, misalnya: asm-1204-0. Sertakan ini jika Anda ingin mengganti nilai default dan menentukan nilai sendiri. Tujuan Argumen REVISION NAME harus berupa Label DNS-1035. Artinya, nama tersebut harus:

  • berisi maksimal 63 karakter
  • hanya berisi karakter alfanumerik huruf kecil atau '-'
  • diawali dengan karakter alfabet
  • diakhiri dengan karakter alfanumerik

Ekspresi reguler yang digunakan untuk validasi adalah: '[a-z]([-a-z0-9]*[a-z0-9])?'

-s|--service_account ACCOUNT
Nama akun layanan yang digunakan untuk menginstal Cloud Service Mesh. Jika tidak yang ditentukan, akun pengguna aktif di konfigurasi gcloud saat ini data Jika Anda perlu mengubah akun pengguna aktif, jalankan gcloud auth login.

Opsi untuk sertifikat kustom Istio CA

Jika Anda menentukan --ca citadel dan menggunakan CA kustom, sertakan opsi berikut:

  • --ca_cert FILE_PATH: Intermediate certificate
  • --ca_key FILE_PATH: Kunci untuk intermediate certificate
  • --root_cert FILE_PATH: Root certificate
  • --cert_chain FILE_PATH: Rantai sertifikat

Untuk informasi selengkapnya, lihat Menyertakan Sertifikat CA yang ada.

Tanda pengaktifan

Tanda yang dimulai dengan --enable memungkinkan asmcli mengaktifkan API, disetel izin Identity and Access Management (IAM) yang diperlukan, dan mengupdate cluster Anda. Jika mau, Anda dapat memperbarui project dan cluster sendiri sebelum menjalankan asmcli. Semua tanda pengaktifan tidak kompatibel dengan asmcli validate. Jika Anda menentukan flag pengaktifan saat menjalankan asmcli validate, perintah ini dihentikan dengan error.

-e|--enable_all
Izinkan asmcli untuk melakukan semua tindakan pengaktifan individual yang dijelaskan di bawah.
--enable_cluster_roles
Izinkan asmcli untuk mencoba mengikat pengguna atau layanan Google Cloud akun yang menjalankan asmcli ke cluster-admin di cluster Anda. asmcli menentukan akun pengguna dari gcloud config get core/account perintah. Jika Anda menjalankan asmcli secara lokal dengan akun pengguna, pastikan Anda memanggil gcloud auth login sebelum menjalankan asmcli. Jika Anda perlu mengubah akun pengguna, jalankan gcloud config set core/account GCP_EMAIL_ADDRESS perintah dengan GCP_EMAIL_ADDRESS adalah akun yang Anda gunakan untuk login ke Google Cloud.
--enable_cluster_labels
Izinkan asmcli menyetel sebagai wajib label cluster.
--enable_gcp_components

Izinkan asmcli untuk mengaktifkan hal-hal berikut yang diperlukan dan dikelola Google Cloud komponen dan layanan:

--enable_gcp_apis

Izinkan asmcli untuk mengaktifkan semua Google API yang diperlukan.

--enable_gcp_iam_roles

Izinkan asmcli untuk menyetel hal yang diperlukan Izin IAM.

--enable_meshconfig_init

Izinkan skrip untuk melakukan inisialisasi endpoint meshconfig atas nama Anda. Tersirat oleh --enable_gcp_components dan --managed.

--enable_namespace_creation

Izinkan asmcli untuk membuat namespace istio-system root.

--enable_registration

Izinkan asmcli untuk mendaftarkan cluster ke project tempat cluster tersebut berada inc. Jika Anda tidak menyertakan penanda ini, ikuti langkah-langkah di Mendaftarkan cluster untuk mendaftarkan cluster secara manual. Perhatikan bahwa tidak seperti penanda pengaktifan lainnya, --enable_registration hanya disertakan dalam --enable_all jika Anda menentukan opsi (seperti --option hub-meshca) yang memerlukan pendaftaran cluster. Jika tidak, Anda perlu menentukan tanda ini secara terpisah.

Tanda lainnya

--dry_run
Mencetak perintah, tetapi tidak menjalankannya.
--fleet_id
Daftarkan cluster ke fleet menggunakan project ID host fleet. Penanda ini yang diperlukan untuk cluster non-Google Cloud. Jika tidak disediakan untuk cluster Google Cloud, setelan defaultnya adalah project ID cluster. Anda dapat menjalankan asmcli install bersama dengan --fleet_id sebelum penginstalan, atau sebagai bagian dari penginstalan dengan meneruskan --enable-registration dan --fleet-id penanda. Setelan ini tidak dapat diubah setelah dikonfigurasi.
--managed
Tidak digunakan lagi. Menyediakan bidang kontrol jarak jauh yang terkelola, bukan menginstal satu dalam cluster.
--offline
Lakukan penginstalan offline menggunakan paket yang sudah diunduh dalam direktori {i>output<i}. Jika direktori tersebut tidak ditentukan atau tidak berisi file yang diperlukan, skrip akan keluar mengalami error.
--only_enable
Melakukan langkah-langkah yang ditentukan untuk menyiapkan pengguna/cluster saat ini, tetapi tidak menginstal apa pun.
--only_validate
Jalankan validasi, tetapi jangan update project atau cluster dan jangan instal dan Cloud Service Mesh. Tanda ini tidak kompatibel dengan flag pengaktifan. asmcli diakhiri dengan error jika Anda menentukan --only_validate dengan flag pengaktifan.
--print_config
Alih-alih menginstal Cloud Service Mesh, cetak semua YAML yang dikompilasi ke {i>standard output<i} (stdout). Semua output lainnya ditulis ke error standar (stderr), meskipun biasanya akan masuk ke {i>stdout<i}. asmcli melewati semua validasi dan penyiapan saat Anda menentukan tanda ini.
--disable_canonical_service
Secara default, asmcli men-deploy Pengontrol Layanan Kanonis ke cluster Anda. Jika Anda tidak ingin asmcli men-deploy pengontrol, menentukan --disable_canonical_service. Untuk informasi selengkapnya, lihat Mengaktifkan dan menonaktifkan pengontrol Layanan Kanonis.
-h|--help
Tampilkan pesan bantuan yang menjelaskan opsi serta tanda dan keluar.
--use_managed_cni
Menggunakan CNI terkelola. Jika penanda ini tidak diteruskan, asmcli akan menerapkan manifes CNI statis.
--use_vpcsc
Jika organisasi Anda menerapkan Kontrol Layanan VPC untuk project, Anda harus mengonfigurasi Cloud Service Mesh terkelola dengan flag --use_vpcsc. Jika tidak, penginstalan akan gagal dalam kontrol keamanan.
-v|--verbose
Saat asmcli berjalan, ia mencetak perintah yang akan dijalankan berikutnya. Dengan --verbose, asmcli juga akan mencetak perintah setelah dieksekusi.
--version
Cetak versi asmcli dan keluar. Jika Anda tidak memiliki versi version, Anda dapat download versi terbaru dari asmcli_1.20.