Menyiapkan referensi lintas project
Dokumen ini hanya berlaku untuk Cloud Service Mesh dengan API pemilihan rute layanan Google Cloud. Jangan gunakan dokumen ini jika Anda mengonfigurasi Cloud Service Mesh dengan Istio API.
Dalam beberapa skenario, konfigurasi mesh layanan mencakup layanan yang berada di project yang berbeda. Misalnya, dalam deployment VPC Bersama atau VPC peer, setiap pemilik project dapat menentukan kumpulan layanannya sendiri untuk menyediakan layanan ini bagi semua project lainnya.
Mesh (klik untuk memperbesar)Konfigurasi ini disebut konfigurasi lintas project karena beberapa resource yang ditentukan dalam project yang berbeda digabungkan untuk membentuk satu konfigurasi yang dapat ditayangkan ke proxy Envoy atau klien gRPC tanpa proxy.
Petunjuk berikut menggunakan resource Mesh dan HTTPRoute, tetapi
dapat diterapkan ke resource Gateway dan ke
resource GRPCRoute dan TCPRoute.
Mengonfigurasi resource Mesh
Tetapkan project sebagai project host tempat Anda mengelola resource Mesh. Setiap akun layanan dengan izin untuk membuat,
memperbarui, atau menghapus resource Mesh dalam project ini dapat mengontrol konfigurasi
rute yang terpasang ke resource Mesh dalam project ini.
Di file
shared-mesh.yaml, buat spesifikasiMesh.name: shared-mesh interceptionPort: 15001
Tentukan resource
Meshdalam project ini.gcloud network-services meshes import shared-mesh \ --source=shared-mesh.yaml \ --location=global
Tuliskan URI lengkap resource
Mesh, karena pemilik layanan memerlukan URI untuk melampirkan rute mereka keMeshini./projects/HOST_PROJECT_NUMBER/locations/global/meshes/shared-mesh
Berikan izin IAM
networkservices.meshes.useuntukMeshini ke akun layanan lintas project yang seharusnya dapat melampirkan informasi layanannya keMeshini.gcloud projects add-iam-policy-binding HOST_PROJECT_NUMBER --member='HTTP_ROUTE_SERVICE_OWNER_ACCOUNT' --role='roles/compute.networkAdmin'
Semua pemilik layanan yang memiliki izinnetworkservices.meshes.use
yang diberikan kepada mereka dapat menambahkan aturan pemilihan rute ke resource
Mesh ini.
Menyiapkan pemilihan rute di project layanan
Setiap pemilik layanan perlu membuat satu atau beberapa layanan backend dan resource Route
dalam project mereka, mirip dengan contoh dalam
panduan konfigurasi proxy sidecar.
Satu-satunya perbedaan adalah setiap resource HTTPRoute, GRPCRoute, atau TCPRoute harus memiliki URI resource Mesh project host di kolom meshes.
Gunakan kode berikut untuk mengisi kolom
meshes. Anda dapat menggunakan project ID atau nomor project.echo "name: sharedvpc-http-route hostnames: - helloworld-gce meshes: - /projects/HOST_PROJECT_NUMBER/locations/global/meshes/shared-mesh rules: - action: destinations: - serviceName: \"url/of/the/service\"" | \ gcloud network-services http-routes import sharedvpc-http-route \ --source=- \ --location=global
Membuat layanan klien di project layanan
Saat Anda mengonfigurasi klien Cloud Service Mesh yang berada di project layanan, konfigurasi bootstrap harus menentukan nomor project tempat resource Mesh berada dan nama Mesh. Persyaratan ini berlaku untuk
proxy Envoy dan
deployment gRPC tanpa proxy.
Dengan deployment Envoy, gunakan opsi --service-proxy:project-number.
Langkah berikutnya
- Untuk informasi tentang cara mencantumkan resource rute yang terkait dengan resource 
MeshatauGateway, lihat Mencantumkan resourceRoute.