Praktik terbaik untuk jaringan Cloud Run

Halaman ini menguraikan praktik terbaik untuk mengonfigurasi opsi jaringan untuk resource Cloud Run. Sebelum membuat resource, sebaiknya Anda meninjau semua bagian di halaman ini untuk memahami opsi jaringan yang didukung Cloud Run, serta implikasinya.

Memantau penggunaan alamat IP

Jika Anda menggunakan egress Direct VPC, pastikan Anda memiliki alamat IP yang cukup untuk subnet Anda. Jumlah alamat IP yang Anda gunakan bergantung pada jumlah instance container yang dijalankan workload Anda, jadi sebaiknya pantau penggunaan alamat IP Anda. Pastikan penggunaan IP Anda dari waktu ke waktu tetap berada dalam batas yang didukung oleh subnet.

Untuk memperkirakan penggunaan alamat IP Anda:

  1. Di konsol Google Cloud , buka halaman Cloud Monitoring Metrics Explorer:

    Buka Metrics Explorer Cloud Monitoring

  2. Cari jumlah instance container di project Anda menggunakan jenis metrik run.googleapis.com/container/instance_count. Cloud Monitoring memungkinkan Anda melihat nilai metrik ini dari waktu ke waktu.

  3. Kalikan nilai metrik jumlah instance dengan 2 untuk mendapatkan perkiraan jumlah alamat IP yang digunakan.

Strategi kehabisan alamat IP

Memiliki workload Cloud Run dalam jumlah besar dapat menyebabkan tantangan kehabisan IP saat menggunakan ruang alamat IP pribadi RFC 1918 dengan egress Direct VPC. Strategi berikut dapat membantu Anda mengelola kehabisan alamat IP dengan menggunakan rentang alamat IP alternatif.

Menggunakan alamat IPv4 non-RFC 1918

Selain rentang alamat IPv4 RFC 1918, Cloud Run juga mendukung rentang RFC 6598 dan Class E/RFC 5735. Semua layanan dan fiturGoogle Cloud berfungsi dengan rentang non-RFC 1918 ini, termasuk jaringan VPC, Cloud Load Balancing, dan Private Service Connect.

Untuk kompatibilitas terbaik, sebaiknya mulai dengan rentang RFC 6598 (100.64.0.0/10). Jika Anda sudah menggunakan rentang ini di tempat lain, pertimbangkan untuk menggunakan Class E/RFC 5735 (240.0.0.0/4). Class E adalah ruang yang sangat besar dengan lebih dari 268 juta alamat IP yang tersedia, sehingga akan mendukung pertumbuhan Anda dalam waktu yang lama. Namun, Class E memiliki beberapa batasan. Misalnya, fitur ini tidak didukung di Windows dan di beberapa hardware lokal. Baca cara memanfaatkan ruang Alamat IPv4 Class E untuk mengurangi masalah kehabisan IPv4 di GKE.

Menggunakan Cloud NAT atau Private Service Connect

Jika workload Cloud Run Anda yang menggunakan rentang non-RFC 1918 perlu menjangkau tujuan lokal yang hanya menerima RFC 1918, gunakan salah satu solusi berikut:

  • Gunakan NAT Hybrid untuk melakukan penerjemahan alamat dan egress menggunakan rentang RFC 1918 yang kecil.
  • Mengekspos layanan lokal sebagai layanan hybrid Private Service Connect.

Menggunakan subnet IPv4 dan IPv6 (dual-stack)

Meskipun tidak akan mengurangi kehabisan IPv4, memindahkan aplikasi Anda ke IPv6 adalah langkah awal yang baik. Siapkan resource stack ganda untuk menghindari masalah kehabisan IPv4 di masa mendatang.

Strategi pengurangan kehabisan port

Bagian berikut menjelaskan strategi untuk mengurangi kehabisan port dengan Cloud Run.

Menggunakan penggabungan koneksi dan menggunakan kembali koneksi

Saat mengirim permintaan dalam jumlah besar ke satu alamat IP tujuan, gunakan penggabungan koneksi untuk mempertahankan dan menggunakan kembali koneksi ke tujuan. Tingkat koneksi yang tinggi ke satu alamat IP dapat menghabiskan port keluar dan menyebabkan error koneksi ditolak.

Mengisolasi traffic internet keluar

Secara default, Cloud Run mengirim traffic internet keluar melalui kumpulan alamat IP dinamis regional yang digunakan bersama di seluruh workload serverless. Jangan gunakan pool bersama default ini untuk workload yang bergantung pada reputasi IP atau menghasilkan traffic pemeriksaan bervolume tinggi.

Sebagai gantinya, konfigurasikan egress VPC Langsung dengan --vpc-egress=all-traffic, dan rutekan traffic melalui Cloud NAT dengan alamat IP keluar statis khusus dalam kasus berikut:

  • Workload Anda terhubung ke endpoint eksternal yang sensitif terhadap reputasi, seperti gateway pembayaran, database yang dihosting, atau API partner di balik firewall aplikasi web (WAF) pihak ketiga. Alamat IP statis khusus mencegah traffic yang mengganggu dari tenant lain di kumpulan bersama memicu pemblokiran WAF eksternal atau error HTTP 403.
  • Workload Anda menjalankan pemindaian jaringan yang diizinkan, enumerasi port, sidik jari host, pemeriksaan kerentanan, scraping web, atau pengujian beban. Menjalankan workload ini melalui kumpulan IP bersama default akan menurunkan reputasi IP, dapat mengganggu layanan bagi pelanggan lain yang melanggar Google Cloud Kebijakan Penggunaan yang Dapat Diterima, dan dapat menyebabkan Google membatasi atau menangguhkan workload Anda.

Saat Anda menjalankan pemindaian yang diizinkan atau workload koneksi tinggi melalui Cloud NAT, alokasikan alamat IP statis yang cukup dan konfigurasikan reservasi port untuk mencegah kehabisan port.

Strategi performa dan throughput

Bagian ini membahas opsi skalabel untuk meningkatkan performa jaringan dan throughput ke layanan internet dan Google.

Menggunakan lingkungan eksekusi generasi kedua

Untuk performa jaringan terbaik untuk layanan Cloud Run, gunakan lingkungan eksekusi generasi kedua saat merutekan traffic dengan egress VPC Langsung. Lingkungan generasi kedua memberikan performa jaringan yang lebih cepat, terutama dengan hadirnya paket yang hilang.

Anda dapat memilih lingkungan eksekusi menggunakan konsol Google Cloud , gcloud CLI, YAML, atau Terraform.

Menggunakan egress VPC Langsung untuk throughput egress jaringan yang lebih cepat

Untuk mencapai throughput yang lebih cepat di seluruh koneksi egress jaringan, gunakan egress VPC Langsung untuk merutekan traffic melalui jaringan VPC Anda. Sebaiknya gunakan ini bersama dengan lingkungan eksekusi generasi kedua seperti yang disebutkan sebelumnya.

Contoh 1: Traffic eksternal ke internet

Jika Anda mengirim traffic eksternal ke internet publik, rutekan semua traffic melalui jaringan VPC dengan menetapkan --vpc-egress=all-traffic. Dengan pendekatan ini, Anda harus menyiapkan Cloud NAT untuk menjangkau internet publik.

Agar Cloud Run dapat menggunakan gateway Cloud NAT untuk Public NAT atau Private NAT, lihat Interaksi egress VPC Langsung Cloud NAT.

Contoh 2: Traffic internal ke Google API

Jika Anda menggunakan traffic egress VPC Langsung untuk mengirim traffic ke Google API, seperti Cloud Storage, pilih salah satu opsi berikut:

Menggunakan setelan MTU default untuk Cloud Run

Jangan mengubah setelan unit transmisi maksimum (MTU) jaringan VPC saat menggunakannya dengan Cloud Run. Gunakan MTU default 1.460 byte.

Pertimbangan biaya

Saat mengonfigurasi opsi jaringan untuk resource Anda, pertimbangkan hal berikut:

  • Tempatkan resource Anda di lokasi yang sama: Coba deploy resource Cloud Run Anda di region yang sama dengan database backend (seperti Cloud SQL atau Firestore) dan bucket Cloud Storage Anda. Transfer data antara resource Google Cloud dalam region yang sama tidak dikenai biaya.
  • Beralih ke traffic keluar VPC Langsung: Jika Anda merutekan traffic dengan aman ke resource jaringan VPC internal, pertimbangkan untuk beralih ke traffic keluar VPC Langsung dari konektor Akses VPC Serverless. Traffic keluar VPC langsung diskalakan ke nol, sehingga menghilangkan overhead komputasi dasar dan biaya tidak ada aktivitas yang terkait dengan instance konektor.
  • Gunakan Cloud CDN: Kurangi beban aset statis dan konten yang sangat mudah di-cache dengan menempatkan Cloud CDN di depan resource Cloud Run Anda. Menyajikan data dari edge jauh lebih murah daripada membayar traffic egress internet standar langsung dari Cloud Run.
  • Pantau traffic egress internet: Traffic masuk (ingress) selalu gratis, dan Anda menerima transfer data internet keluar gratis sebesar 1 GiB per bulan di Amerika Utara. Fokuskan upaya pemantauan Anda pada traffic keluar yang melintasi batas region atau melebihi paket gratis.

Tinjau harga Cloud Run atau perkirakan biaya dengan kalkulator harga untuk mengetahui informasi selengkapnya.

Langkah berikutnya