Jaringan ambient menghadirkan pengalaman jaringan resource yang disederhanakan dan terintegrasi ke dalam Cloud Run. Fitur ini memberi resource Anda bidang data yang terkelola sepenuhnya untuk menghilangkan beban operasional dalam membangun dan memelihara proxy kustom. Gateway API juga mengabstraksi konsep mesh layanan, sehingga Anda mendapatkan fitur jaringan lanjutan tanpa perlu mempelajari atau mengonfigurasi mesh.
Saat Anda mengaktifkan Ambient Networking, traffic akan diteruskan tanpa perubahan secara default sehingga traffic HTTP dan TCP yang ada akan terus berfungsi. Mengaktifkan jaringan ambien saja tidak akan mengubah perilaku resource Anda. Sebagai fondasi, jaringan ambien memungkinkan Anda memilih kemampuan yang dijelaskan di bagian berikut.
Kasus penggunaan
Ambient networking adalah fondasi untuk kemampuan jaringan lanjutan di Cloud Run. Setelah mengaktifkan jaringan ambien, Anda dapat memilih untuk menggunakan Agent Gateway di Cloud Run. Fitur ini mengatur traffic agen dengan kebijakan akses dan keamanan yang dikelola organisasi Anda secara terpusat.
Arsitektur
Jaringan ambient menjalankan container sidecar Envoy yang terkelola sepenuhnya di dalam setiap instance container resource Cloud Run, bersama dengan container aplikasi Anda. Sidecar mencegat traffic jaringan instance dan menerapkan kebijakan pemilihan rute dan keamanan yang didistribusikan Cloud Run ke instance tersebut.
Cakupan Ambient Networking
Jaringan ambient mendukung cakupan global dan cakupan regional. Cakupan menentukan apakah sidecar terhubung ke bidang perutean global atau regional:
- Regional (default): Cloud Run menghubungkan sidecar ke bidang pemilihan rute regional, sehingga membatasi kebijakan pemilihan rute dan keamanan ke tujuan dalam region layanan Anda. Cakupan ini mendukung persyaratan residensi data (DRZ) untuk data dalam penyimpanan, dalam penggunaan, dan dalam pengiriman. Jika Anda tidak menentukan cakupan, jaringan ambien akan menggunakan cakupan regional.
- Global: Cloud Run menghubungkan file bantuan ke bidang perutean global, sehingga dapat merutekan traffic ke tujuan di region mana pun.
Setiap fitur yang menggunakan jaringan ambien memerlukan cakupan tertentu:
| Fitur | Cakupan global | Cakupan regional |
|---|---|---|
| Agent Gateway di Cloud Run | Tidak didukung | Didukung |
Batasan
Batasan berikut berlaku untuk jaringan ambient:
- Traffic UDP tidak didukung. Jaringan ambient hanya mendukung traffic HTTP dan TCP.
- Permintaan masuk tidak mendukung HTTP/2 end-to-end. Untuk mengetahui detailnya, lihat Masalah umum.
- Cakupan regional tidak mendukung jaringan VPC yang me-resolve
*.googleapis.comke alamat IP Akses Google Pribadi. Untuk mengetahui detailnya, lihat Masalah umum. - Lingkungan eksekusi generasi pertama tidak didukung. Jika Anda tidak menentukan lingkungan eksekusi, Cloud Run akan menggunakan generasi kedua.
- Instance container memerlukan waktu lebih lama untuk dimulai. Untuk mengetahui detailnya, lihat Masalah umum.
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Aktifkan Cloud Run API, Network Services API, dan Traffic Director API, jika belum diaktifkan.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin
serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Service Usage Admin (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran.-
Tingkatkan batas CPU resource Cloud Run Anda sebesar 1 vCPU dan batas memorinya sebesar 1 GiB. Jika batas CPU baru bukan nilai yang didukung, gunakan nilai berikutnya yang lebih tinggi yang didukung. Sidecar ambient berbagi CPU dan memori instance container Anda, sehingga peningkatan ini memastikan aplikasi Anda tetap memiliki resource yang diperlukan.
-
Baca halaman harga Cloud Run untuk mengetahui penggunaan sidecar Ambient Networking. Penagihan untuk fitur standby tidak diberlakukan selama Pratinjau.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk mengonfigurasi dan men-deploy layanan Cloud Run, minta administrator untuk memberi Anda peran IAM berikut:
- Developer Cloud Run (
roles/run.developer) di layanan Cloud Run - Pengguna Akun Layanan (
roles/iam.serviceAccountUser) pada identitas layanan
Jika Anda men-deploy layanan atau fungsi dari kode sumber, Anda juga harus memiliki peran tambahan yang diberikan kepada Anda di project dan akun layanan Cloud Build.
Identitas layanan resource Cloud Run juga harus memiliki peran berikut:
- Klien Traffic Director (
roles/trafficdirector.client) - Cloud Trace Agent (
roles/cloudtrace.agent)
Untuk memberikan peran ini ke identitas layanan, gunakan gcloud:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:RUN_CLIENT_SA@PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/trafficdirector.client" gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:RUN_CLIENT_SA@PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/cloudtrace.agent"
Ganti kode berikut:
- PROJECT_ID: Project ID Google Cloud Anda.
- RUN_CLIENT_SA: nama akun layanan yang dilampirkan ke layanan Cloud Run Anda.
Jika identitas layanan tidak memiliki peran ini, resource Cloud Run tetap di-deploy, tetapi fitur yang menggunakan ambient networking tidak akan berfungsi.
Untuk mengetahui daftar peran dan izin IAM yang terkait dengan Cloud Run, lihat Peran IAM Cloud Run dan Izin IAM Cloud Run. Jika layanan Cloud Run Anda berinteraksi dengan APIGoogle Cloud , seperti Library Klien Cloud, lihat panduan konfigurasi identitas layanan. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat izin deployment dan mengelola akses.
Mengonfigurasi jaringan ambien
Konfigurasikan ambient networking menggunakan gcloud atau file YAML.
gcloud
Untuk mengaktifkan ambient networking di layanan baru, teruskan flag
--ambient-networkingdan, secara opsional, flag--ambient-scope:gcloud beta run deploy SERVICE \ --image=IMAGE_URL \ --ambient-networking \ --ambient-scope=SCOPE \ --region=REGION
Untuk mengaktifkan ambient networking pada layanan yang ada, teruskan flag yang sama ke perintah
gcloud beta run services update, yang men-deploy revisi baru dengan ambient networking diaktifkan:gcloud beta run services update SERVICE \ --ambient-networking \ --ambient-scope=SCOPE \ --region=REGION
Untuk menonaktifkan jaringan ambient, teruskan flag
--no-ambient-networking:gcloud beta run services update SERVICE \ --no-ambient-networking \ --region=REGION
Ganti kode berikut:
- SERVICE: nama layanan Cloud Run Anda.
IMAGE_URL: referensi ke image container, misalnya,us-docker.pkg.dev/cloudrun/container/hello:latest. Jika Anda menggunakan Artifact Registry, repositori REPO_NAME harus sudah dibuat. URL mengikuti formatLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.- SCOPE: cakupan jaringan ambien,
globalatauregional. - REGION: region untuk layanan Anda.
YAML
Jika Anda membuat layanan baru, lewati langkah ini. Jika Anda mengupdate layanan yang sudah ada, download konfigurasi YAML-nya:
gcloud run services describe SERVICE --format export > service.yaml
Tambahkan anotasi
run.googleapis.com/ambient-networkingdan, opsional, anotasirun.googleapis.com/ambient-scope:spec: template: metadata: annotations: run.googleapis.com/ambient-networking: 'true' run.googleapis.com/ambient-scope: SCOPE
Ganti SCOPE dengan cakupan jaringan ambient, baik
globalmaupunregional. Untuk menonaktifkan ambient networking, tetapkanrun.googleapis.com/ambient-networkingke'false'dan hapus anotasirun.googleapis.com/ambient-scope.Buat atau update layanan menggunakan perintah berikut:
gcloud run services replace service.yaml
Perintah
gcloud run services replacesecara default menggunakan fileservice.yamljika ada.
Melihat setelan jaringan ambien
Untuk melihat setelan ambient networking saat ini untuk layanan Cloud Run Anda:
Konsol
Di konsol Google Cloud , buka halaman Services Cloud Run:
Klik layanan untuk membuka halaman Service details.
Klik tab Networking.
Di kartu Ambient networking, lihat setelan Scope.
gcloud
Gunakan perintah berikut:
gcloud beta run services describe SERVICE \ --region=REGION
Temukan anotasi
run.googleapis.com/ambient-networkingdanrun.googleapis.com/ambient-scopedalam konfigurasi yang ditampilkan.
Langkah berikutnya
- Pelajari tentang Agent Gateway di Cloud Run.
- Pelajari cara mengonfigurasi fitur Agent Platform untuk Cloud Run.
- Pelajari autentikasi service-to-service di Cloud Run.
- Pelajari cara melacak permintaan dengan Cloud Trace.