Tentang layanan yang dipublikasikan
Dokumen ini memberikan ringkasan tentang penggunaan Private Service Connect untuk menyediakan layanan bagi konsumen layanan.
Sebagai produsen layanan, Anda dapat menggunakan Private Service Connect untuk memublikasikan layanan menggunakan alamat IP internal di jaringan VPC Anda. Layanan yang Anda publikasikan dapat diakses oleh konsumen layanan dengan menggunakan alamat IP internal di jaringan VPC mereka.
Untuk menyediakan layanan kepada konsumen, Anda membuat satu atau beberapa subnet khusus. Selanjutnya, buat lampiran layanan yang merujuk ke subnet tersebut. Lampiran layanan dapat memiliki preferensi koneksi yang berbeda.
Jenis konsumen layanan
Ada dua jenis konsumen yang dapat terhubung ke layanan Private Service Connect:
Endpoint didasarkan pada aturan penerusan.
Backend didasarkan pada load balancer.
Konfigurasi keamanan Private Service Connect
Saat membuat layanan Private Service Connect, Anda mengonfigurasi subnet, lampiran layanan, dan preferensi koneksi. Anda juga dapat mengonfigurasi domain DNS untuk layanan secara opsional. Konfigurasi ini dijelaskan di bagian berikut.
Subnet NAT
Lampiran layanan Private Service Connect dikonfigurasi dengan satu atau beberapa subnet NAT (juga disebut sebagai subnet Private Service Connect). Paket dari jaringan VPC konsumen diterjemahkan menggunakan NAT sumber (SNAT) sumber sehingga alamat IP sumber aslinya dikonversi menjadi alamat IP sumber dari subnet NAT di jaringan VPC produsen.
Lampiran layanan dapat memiliki beberapa subnet NAT. Selain itu, subnet NAT dapat ditambahkan ke lampiran layanan kapan saja tanpa mengganggu traffic.
Meskipun lampiran layanan dapat memiliki beberapa subnet NAT yang dikonfigurasi, subnet NAT tidak dapat digunakan di lebih dari satu lampiran layanan.
Subnet NAT Private Service Connect tidak dapat digunakan untuk resource seperti instance VM atau aturan penerusan. Subnet hanya digunakan untuk menyediakan alamat IP untuk SNAT koneksi konsumen yang masuk.
Pengukuran subnet NAT
Saat memublikasikan layanan, buat subnet NAT dan pilih rentang alamat IP. Ukuran subnet menentukan jumlah endpoint atau backend Private Service Connect serentak yang dapat terhubung ke lampiran layanan. Alamat IP digunakan dari subnet NAT sesuai dengan jumlah koneksi Private Service Connect. Jika semua alamat IP di subnet NAT digunakan, koneksi Private Service Connect tambahan akan gagal. Inilah sebabnya mengapa penting untuk mengukur subnet NAT dengan tepat.
Saat Anda memilih ukuran subnet, pertimbangkan hal berikut:
Ada empat alamat IP yang tidak dapat digunakan dalam subnet NAT, sehingga jumlah alamat IP yang tersedia adalah 2(32 - PREFIX_LENGTH) - 4. Misalnya, jika Anda membuat subnet NAT dengan panjang awalan
/24
, Private Service Connect dapat menggunakan 252 dari alamat IP untuk SNAT. Subnet/29
dengan empat alamat IP yang tersedia adalah ukuran subnet terkecil yang didukung di jaringan VPC.Satu alamat IP digunakan dari subnet NAT untuk setiap endpoint atau backend yang terhubung ke lampiran layanan.
Saat Anda memperkirakan jumlah alamat IP yang diperlukan untuk endpoint dan backend, perhitungkan layanan multi-tenant atau konsumen yang menggunakan akses multi-titik untuk setelan Pribadi Service Connect.
Jumlah koneksi TCP atau UDP, klien, atau jaringan VPC konsumen tidak memengaruhi pemakaian alamat IP dari subnet NAT.
Misalnya, jika ada dua endpoint yang terhubung ke satu lampiran layanan, dua alamat IP akan digunakan dari subnet NAT. Jika jumlah endpoint tidak berubah, Anda dapat menggunakan subnet /29
dengan empat alamat IP yang dapat digunakan untuk lampiran layanan ini.
Pemantauan subnet NAT
Untuk membantu memastikan bahwa koneksi Private Service Connect tidak gagal karena alamat IP yang tidak tersedia di subnet NAT, kami merekomendasikan hal berikut:
- Pantau metrik lampiran layanan
private_service_connect/producer/used_nat_ip_addresses
. Pastikan jumlah alamat IP NAT yang digunakan tidak melebihi kapasitas subnet NAT lampiran layanan. - Pantau status koneksi dari koneksi lampiran layanan. Jika koneksi memiliki status Needs attention, mungkin tidak ada alamat IP lain yang tersedia di subnet NAT lampiran.
- Untuk layanan multi-tenant, Anda dapat menggunakan Batas koneksi untuk membantu memastikan bahwa satu konsumen tidak menghabiskan kapasitas subnet NAT lampiran layanan.
Jika diperlukan, subnet NAT dapat ditambahkan ke lampiran layanan kapan saja tanpa mengganggu traffic.
Koneksi maksimum
VM produsen tunggal dapat menerima maksimum 65.536 koneksi TCP serentak dan 65.536 koneksi UDP dari satu endpoint Private Service Connect. Tidak ada batasan jumlah total koneksi TCP dan UDP yang dapat diterima endpoint Private Service Connect secara gabungan di semua backend produsen. VM konsumen dapat menggunakan ke-65.536 port saat memulai koneksi TCP atau UDP ke endpoint Private Service Connect. Semua penafsiran alamat jaringan (NAT) dilakukan secara lokal di host produsen, yang tidak memerlukan kumpulan port NAT yang dialokasikan secara terpusat.
Pertimbangan lainnya
Pertimbangan lain untuk subnet NAT mencakup hal berikut:
Waktu Tunggu Tidak Ada Aktivitas Pemetaan UDP adalah 30 detik dan tidak dapat dikonfigurasi.
Waktu Tunggu Tidak Ada Aktivitas Koneksi yang Dibuat TCP adalah 20 menit dan tidak dapat dikonfigurasi.
Waktu Tunggu Tidak Ada Aktivitas Koneksi Transitori TCP adalah 30 detik dan tidak dapat dikonfigurasi.
Ada penundaan dua menit sebelum 5 tuple apa pun (alamat IP sumber subnet NAT dan port sumber ditambah protokol tujuan, alamat IP, dan port tujuan) dapat digunakan kembali.
SNAT untuk Private Service Connect tidak mendukung fragmen IP.
Lampiran layanan
Produsen layanan mengekspos layanan mereka melalui lampiran layanan.
Untuk mengekspos layanan, produsen layanan membuat lampiran layanan yang merujuk pada aturan penerusan load balancer layanan.
Untuk mengakses layanan, konsumen layanan membuat endpoint yang merujuk ke lampiran layanan.
URI lampiran layanan memiliki format ini: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME
Setiap load balancer hanya dapat direferensikan oleh satu lampiran layanan. Anda tidak dapat mengonfigurasi beberapa lampiran layanan yang menggunakan load balancer yang sama.
Preferensi koneksi
Setiap lampiran layanan memiliki preferensi koneksi yang menentukan apakah permintaan koneksi akan diterima secara otomatis. Ada tiga opsi:
- Terima semua koneksi secara otomatis. Lampiran layanan otomatis menerima semua permintaan koneksi masuk dari pelanggan mana pun. Persetujuan otomatis dapat diganti dengan kebijakan organisasi yang memblokir koneksi masuk.
- Terima koneksi untuk jaringan yang dipilih. Lampiran layanan hanya menerima permintaan koneksi masuk jika jaringan VPC konsumen ada dalam daftar penerimaan konsumen lampiran layanan.
- Terima koneksi untuk project yang dipilih. Lampiran layanan hanya menerima permintaan koneksi masuk jika project konsumen tercantum dalam daftar penerimaan konsumen lampiran layanan.
Sebaiknya terima koneksi untuk project atau jaringan yang dipilih. Menerima semua koneksi secara otomatis mungkin sesuai jika Anda mengontrol akses konsumen melalui cara lain dan ingin mengaktifkan akses permisif ke layanan Anda.
Status koneksi
Lampiran layanan memiliki status koneksi yang mendeskripsikan status koneksinya. Untuk informasi selengkapnya, lihat Status koneksi.
Daftar yang disetujui dan ditolak konsumen
Daftar yang disetujui konsumen dan daftar yang ditolak konsumen adalah fitur keamanan lampiran layanan. Dengan daftar penerimaan dan penolakan, produsen layanan dapat menentukan konsumen mana yang dapat membuat koneksi Private Service Connect ke layanan mereka. Daftar penerimaan konsumen menentukan apakah koneksi diterima, dan daftar penolakan konsumen menentukan apakah koneksi ditolak. Kedua daftar tersebut memungkinkan Anda menentukan konsumen berdasarkan jaringan VPC atau project resource yang terhubung. Jika Anda menambahkan project atau jaringan ke daftar penerimaan dan penolakan, permintaan koneksi dari project atau jaringan tersebut akan ditolak. Menentukan konsumen berdasarkan folder tidak didukung.
Daftar penerimaan konsumen dan daftar penolakan konsumen memungkinkan Anda menentukan project atau jaringan VPC, tetapi tidak keduanya secara bersamaan. Anda dapat mengubah daftar dari satu jenis ke jenis lainnya tanpa mengganggu koneksi, tetapi Anda harus melakukan perubahan dalam satu update. Jika tidak, beberapa koneksi mungkin berubah ke status tertunda untuk sementara.
Untuk informasi tentang bagaimana daftar yang disetujui konsumen berinteraksi dengan kebijakan organisasi, lihat Interaksi antara daftar yang disetujui konsumen dan kebijakan organisasi.
Rekonsiliasi koneksi
Rekonsiliasi koneksi menentukan apakah update pada daftar yang disetujui atau yang ditolak lampiran layanan dapat memengaruhi koneksi Private Service Connect yang ada. Jika rekonsiliasi koneksi diaktifkan, memperbarui daftar yang disetujui atau ditolak dapat menghentikan koneksi yang ada. Koneksi yang sebelumnya ditolak dapat diterima. Jika rekonsiliasi koneksi dinonaktifkan, mengupdate daftar yang disetujui atau ditolak hanya akan memengaruhi koneksi baru dan yang tertunda.
Misalnya, pertimbangkan lampiran layanan yang memiliki beberapa koneksi yang diterima dari Project-A
. Project-A
ada dalam daftar yang disetujui lampiran layanan. Lampiran layanan diupdate dengan menghapus Project-A
dari daftar penerimaan.
Jika rekonsiliasi koneksi diaktifkan, semua koneksi yang ada dari Project-A
akan bertransisi ke PENDING
, yang menghentikan konektivitas jaringan antara kedua jaringan VPC dan segera menghentikan traffic jaringan.
Jika rekonsiliasi koneksi dinonaktifkan, koneksi yang ada dari Project-A
tidak akan terpengaruh. Traffic jaringan masih dapat mengalir di seluruh koneksi Private Service Connect yang ada. Namun, koneksi Private Service Connect baru tidak diizinkan.
Untuk informasi tentang cara mengonfigurasi rekonsiliasi koneksi untuk lampiran layanan baru, lihat Memublikasikan layanan dengan persetujuan eksplisit.
Untuk informasi tentang cara mengonfigurasi rekonsiliasi koneksi untuk lampiran layanan yang ada, lihat Mengonfigurasi rekonsiliasi koneksi.
Batas koneksi
Daftar penerimaan konsumen memiliki batas koneksi. Batas ini menetapkan jumlah total koneksi yang dapat diterima lampiran layanan dari project konsumen atau jaringan VPC yang ditentukan. Produsen dapat menggunakan batas ini agar konsumen perorangan tidak kehabisan alamat IP atau kuota resource di jaringan VPC produsen. Setiap koneksi Private Service Connect yang diterima mengurangi batas yang dikonfigurasi untuk project konsumen atau jaringan VPC. Batas ditetapkan saat Anda membuat atau mengupdate daftar penerimaan konsumen. Anda dapat melihat koneksi lampiran layanan saat describe lampiran layanan.
Misalnya, pertimbangkan kasus saat lampiran layanan memiliki daftar penerimaan konsumen yang menyertakan project-1
dan project-2
, keduanya dengan batas satu koneksi. Project project-1
meminta dua koneksi, project-2
meminta satu koneksi, dan project-3
meminta satu koneksi. Karena project-1
memiliki batas satu koneksi, koneksi pertama diterima, dan koneksi kedua tetap tertunda.
Koneksi dari project-2
diterima, dan koneksi dari project-3
tetap tertunda. Koneksi kedua dari project-1
dapat diterima dengan meningkatkan batas untuk project-1
. Jika project-3
ditambahkan ke daftar penerimaan konsumen, koneksi tersebut akan bertransisi dari menunggu keputusan menjadi diterima.
Konfigurasi DNS
Untuk informasi tentang konfigurasi DNS untuk layanan dan endpoint yang dipublikasikan yang terhubung ke layanan yang dipublikasikan, lihat Konfigurasi DNS untuk layanan.
Konfigurasi beberapa region
Anda dapat menyediakan layanan di beberapa region dengan membuat konfigurasi berikut.
Konfigurasi produsen:
Deploy layanan di setiap region. Setiap instance layanan regional harus dikonfigurasi pada load balancer yang mendukung akses oleh backend.
Buat lampiran layanan untuk memublikasikan setiap instance regional dari layanan.
Konfigurasi konsumen:
Buat backend untuk mengakses layanan yang dipublikasikan. Backend didasarkan pada Load Balancer Aplikasi eksternal global dan mencakup konfigurasi berikut:
NEG Private Service Connect di setiap region yang mengarah ke lampiran layanan region tersebut.
Layanan backend yang berisi backend NEG.
Dalam konfigurasi ini, endpoint merutekan traffic menggunakan kebijakan load balancing global default, pertama berdasarkan respons, lalu berdasarkan lokasi terdekat dengan klien.
Fitur dan kompatibilitas
Dalam tabel berikut, tanda centang menunjukkan bahwa fitur didukung, dan simbol tidak ada menunjukkan bahwa fitur tidak didukung.
Bergantung pada load balancer produsen yang dipilih, layanan produsen dapat mendukung akses melalui endpoint, backend, atau keduanya.
Dukungan untuk endpoint
Tabel ini merangkum opsi konfigurasi yang didukung dan kemampuan endpoint yang mengakses layanan yang dipublikasikan.
Konfigurasi konsumen (endpoint) | Load balancer produsen | |||
---|---|---|---|---|
Load Balancer Network passthrough internal | Load Balancer Aplikasi internal regional | Load Balancer Jaringan proxy internal regional | Penerusan protokol internal (instance target) | |
Akses global konsumen |
Tidak bergantung setelan akses global pada load balancer |
Hanya jika akses global diaktifkan pada load balancer |
Hanya jika akses global diaktifkan pada load balancer |
Tidak bergantung setelan akses global pada load balancer |
Traffic Cloud VPN | ||||
Konfigurasi DNS otomatis | ||||
Stack IP | IPv4 | IPv4 | IPv4 | IPv4 |
Tabel ini merangkum opsi konfigurasi yang didukung dan kemampuan layanan yang dipublikasikan yang diakses oleh endpoint.
Konfigurasi produsen (layanan yang dipublikasikan) | Load balancer produsen | |||
---|---|---|---|---|
Load Balancer Network passthrough internal | Load Balancer Aplikasi internal regional | Load Balancer Jaringan proxy internal regional | Penerusan protokol internal (instance target) | |
Backend produsen yang didukung |
|
|
|
Tidak berlaku |
Protokol PROXY | Hanya traffic TCP | Hanya traffic TCP | ||
Mode afinitas sesi | TIDAK ADA (5 tuple) CLIENT_IP_PORT_PROTO |
Tidak berlaku | Tidak berlaku | Tidak berlaku |
Load balancer yang berbeda mendukung konfigurasi port yang berbeda pula; beberapa load balancer mendukung port tunggal, beberapa mendukung berbagai port, dan beberapa mendukung semua port. Untuk informasi selengkapnya, lihat spesifikasi port.
Dukungan untuk backend
Backend Private Service Connect untuk layanan yang dipublikasikan memerlukan dua load balancer, yaitu load balancer konsumen dan satu load balancer produsen. Tabel ini menjelaskan kompatibilitas antara berbagai jenis load balancer konsumen dan produsen, termasuk protokol layanan backend yang dapat digunakan dengan setiap load balancer konsumen. Setiap baris merepresentasikan jenis load balancer konsumen, dan setiap kolom mewakili jenis load balancer produsen.
Load balancer konsumen dan protokol layanan backend konsumen yang didukung | Load balancer produsen | ||
---|---|---|---|
Load Balancer Network passthrough internal | Load Balancer Aplikasi internal regional | Load Balancer Jaringan proxy internal regional | |
Load Balancer Aplikasi eksternal global (mendukung beberapa region) Protokol: HTTPS, HTTP2 Catatan: Load Balancer Aplikasi Klasik tidak didukung. |
|||
Load Balancer Aplikasi eksternal regional Protokol: HTTP, HTTPS, HTTP2 |
|||
Load Balancer Aplikasi internal regional Protokol: HTTP, HTTPS, HTTP2 |
|||
Load Balancer Aplikasi internal lintas region (Pratinjau) Protokol: HTTPS, HTTP2 |
|||
Load Balancer Jaringan proxy internal regional Protokol: TCP |
|||
Load Balancer Jaringan proxy lintas region Protokol: TCP |
|||
Load Balancer Jaringan proxy eksternal regional Protokol: TCP |
|||
Load Balancer Jaringan proxy eksternal global (Pratinjau) Protokol: TCP/SSL Catatan: Load Balancer Jaringan proxy klasik tidak didukung. |
Tabel ini menjelaskan konfigurasi untuk load balancer produsen yang didukung oleh backend Private Service Connect.
Konfigurasi | Load balancer produsen | ||
---|---|---|---|
Load Balancer Network passthrough internal | Load Balancer Aplikasi internal regional | Load Balancer Jaringan proxy internal regional | |
Backend produsen yang didukung |
|
|
|
Protokol aturan penerusan |
|
|
|
Port aturan penerusan | Aturan penerusan harus merujuk ke port tunggal. | Aturan penerusan harus merujuk ke port tunggal. | Aturan penerusan harus merujuk ke port tunggal. |
Protokol PROXY |
VPC Bersama
Admin Project Layanan dapat membuat lampiran layanan di project layanan VPC Bersama yang terhubung ke resource dalam Jaringan VPC Bersama.
Konfigurasinya sama seperti lampiran layanan reguler, kecuali berikut ini:
- Aturan penerusan load balancer produsen dikaitkan dengan alamat IP dari jaringan VPC Bersama. Subnet aturan penerusan harus dibagikan dengan project layanan.
- Lampiran layanan menggunakan subnet Private Service Connect dari jaringan VPC Bersama. Subnet ini harus dibagikan ke project layanan.
Logging
Anda dapat mengaktifkan Log Aliran VPC di subnet yang berisi VM backend. Log ini menampilkan alur antara VM backend dan alamat IP di subnet Private Service Connect.
Kontrol Layanan VPC
Kontrol Layanan VPC dan Private Service Connect itu kompatibel satu sama lain. Jika jaringan VPC tempat endpoint Private Service Connect diterapkan berada dalam perimeter Kontrol Layanan VPC, endpoint tersebut merupakan bagian dari perimeter yang sama. Setiap layanan yang didukung Kontrol Layanan VPC yang diakses melalui endpoint tunduk pada kebijakan perimeter Kontrol Layanan VPC tersebut.
Saat Anda membuat endpoint, panggilan API bidang kontrol akan dilakukan antara project konsumen dan produsen untuk membuat koneksi Private Service Connect. Membuat koneksi Private Service Connect antara project konsumen dan produsen yang tidak berada dalam perimeter Kontrol Layanan VPC yang sama tidak memerlukan otorisasi eksplisit dengan kebijakan keluar. Komunikasi ke layanan yang didukung Kontrol Layanan VPC melalui endpoint dilindungi oleh perimeter Kontrol Layanan VPC.
Harga
Harga untuk Private Service Connect dijelaskan di halaman harga VPC.
Kuota
Jumlah endpoint yang dapat Anda buat untuk mengakses layanan yang dipublikasikan dikontrol oleh kuota PSC Internal LB Forwarding Rules
.
Untuk informasi selengkapnya, lihat quotas.
Akses lokal
Layanan Private Service Connect disediakan menggunakan endpoint. Endpoint ini dapat diakses dari host lokal yang terhubung dan didukung. Untuk informasi selengkapnya, lihat Mengakses endpoint dari host lokal.
Batasan
Layanan yang dipublikasikan memiliki batasan berikut:
- Load balancer produsen tidak mendukung fitur berikut:
- Beberapa aturan penerusan yang menggunakan alamat IP bersama (
SHARED_LOADBALANCER_VIP
) - Sub-setelan backend
- Duplikasi Paket tidak dapat menduplikasi paket untuk traffic layanan yang dipublikasikan Private Service Connect.
- Anda harus menggunakan Google Cloud CLI atau API untuk membuat lampiran layanan yang mengarah ke aturan penerusan yang digunakan untuk penerusan protokol internal.
- Jenis load balancer berikut tidak memberikan nilai untuk metrik
BETA
—nilainya adalah0
atau tidak ada:- Load Balancer Aplikasi internal regional
- Load Balancer Jaringan proxy internal regional
- Untuk masalah dan solusinya, lihat Masalah umum.