Halaman ini memberikan informasi tentang penggunaan IP pribadi dengan Cloud SQL.with Cloud SQL. Untuk mengetahui petunjuk langkah demi langkah dalam mengonfigurasi instance Cloud SQL agar dapat menggunakan IP pribadi, baca bagian Mengonfigurasi IP pribadi.
Untuk solusi Terraform untuk jaringan Cloud SQL, lihat Solusi Konfigurasi Jaringan Cloud yang Disederhanakan.
Ringkasan
Mengonfigurasi instance Cloud SQL agar menggunakan IP pribadi memerlukan akses layanan pribadi. Akses layanan pribadi memungkinkan Anda membuat koneksi pribadi antara jaringan VPC dan jaringan VPC produsen layanan Google yang mendasarinya. Entitas Google yang menawarkan layanan, seperti Cloud SQL, disebut produsen layanan. Setiap layanan Google membuat subnet untuk menyediakan resource. Rentang alamat IP subnet biasanya adalah blok CIDR /24 yang dipilih oleh layanan dan berasal dari rentang alamat IP yang dialokasikan.
Koneksi pribadi membuat layanan dapat dijangkau tanpa melalui internet atau menggunakan alamat IP eksternal. Karena alasan ini, IP pribadi memberikan latensi jaringan yang lebih rendah daripada IP publik.
Anda dapat menggunakan akses layanan pribadi untuk terhubung ke instance Cloud SQL:
Dari sumber internal yang memiliki akses ke jaringan VPC Anda.
Dari sumber eksternal melalui tunnel VPN, tunnel SSH terbalik, atau Cloud Interconnect ke jaringan VPC Anda.
Anda dapat terhubung ke alamat IP pribadi di berbagai region. Anda juga dapat terhubung menggunakan VPC Bersama antar-project.
Rentang alamat IP yang dialokasikan
Untuk menggunakan instance Cloud SQL dalam jaringan VPC dengan IP pribadi, Anda harus mengalokasikan rentang alamat IP untuk menyiapkan akses layanan pribadi bagi VPC ini. Untuk mengatur instance Cloud SQL, Anda dapat mengalokasikan beberapa rentang alamat IP untuk koneksi pribadi. Saat mengonfigurasi instance Cloud SQL untuk IP pribadi, Anda dapat memilih jaringan VPC dan rentang alamat IP yang dialokasikan.
Ukuran rentang yang dialokasikan
Alokasikan rentang IP yang cukup besar untuk Cloud SQL dan layanan terkelola Google lainnya yang ingin Anda gunakan. Masing-masing akan memerlukan blok IP khusus dari rentang yang dialokasikan. Ukuran minimumnya adalah blok /24 tunggal (256 alamat), tetapi ukuran yang direkomendasikan adalah blok /16 (65.536 alamat).
Saat mengalokasikan rentang alamat IP, Anda perlu mempertimbangkan jumlah instance yang akan dibuat.
Subnet mask | Alamat | Instance Cloud SQL yang Dapat Digunakan |
---|---|---|
/24 | 256 | 50 |
/23 | 512 | 100 |
/22 | 1024 | 200 |
/21 | 2048 | 400 |
/20 | 4096 | 800 |
Cloud SQL menggunakan rentang CIDR /24 sebagai unit rentang, dan setiap unit hanya dapat digunakan untuk instance Cloud SQL di satu region. Misalnya, jika Anda membuat dua instance Cloud SQL, tetapi untuk dua region yang berbeda, harus ada setidaknya dua rentang CIDR /24.
Selain itu, jika project mulai menggunakan Cloud SQL sebelum 1 April 2021, instance Postgres tidak dapat berbagi unit rentang yang sama dengan instance MySQL dan SQL Server, dan harus memiliki unit rentang masing-masing di setiap region. Project yang lebih baru tidak tunduk pada batasan ini.
Menyiapkan akses layanan pribadi untuk jaringan Anda
Saat mengonfigurasi konektivitas IP pribadi untuk pertama kalinya di jaringan VPC tertentu, Anda perlu melakukan prosedur satu kali untuk menyiapkan akses layanan pribadi untuk Cloud SQL.
Setelah membuat akses layanan pribadi, Anda dapat membuat instance Cloud SQL yang dikonfigurasi untuk menggunakan IP pribadi atau mengonfigurasi IP pribadi untuk instance Cloud SQL yang ada. Lihat Mengonfigurasi IP pribadi untuk mengetahui petunjuk langkah demi langkah.
Setiap kali mengubah koneksi yang ada, Anda juga perlu
memperbarui vpc-peerings
.
Persyaratan untuk IP Pribadi
Untuk menggunakan IP pribadi, jaringan dan lingkungan aplikasi Anda harus memenuhi persyaratan berikut. Selain itu, penyiapan IP pribadi untuk pertama kalinya memerlukan izin IAM tambahan.
Persyaratan lingkungan aplikasi
- Jika terhubung dari GKE, Anda harus menjalankan GKE 1.8 atau versi yang lebih tinggi pada cluster VPC-native.
Persyaratan API dan IAM
- Anda harus mengaktifkan Service Networking API untuk project Anda.
- Untuk mengelola koneksi akses layanan pribadi, pengguna Anda harus
memiliki izin IAM berikut. Jika pengguna tidak memiliki izin yang diperlukan,
Anda bisa mengalami error izin yang tidak memadai.
compute.networks.list
compute.addresses.create
compute.addresses.list
servicenetworking.services.addPeering
Jika menggunakan Jaringan VPC Bersama, Anda juga perlu menambahkan pengguna yang sama dan menetapkan izin yang sama pada project.
Jika menggunakan Jaringan VPC Bersama, Anda juga harus mengaktifkan Service Networking API untuk project host.
Contoh
Pada contoh berikut, jaringan VPC pelanggan mengalokasikan rentang alamat IP
10.240.0.0/16
untuk layanan Google dan menetapkan koneksi pribadi
yang menggunakan rentang yang dialokasikan. Setiap layanan Google (misalnya,
Cloud SQL), membuat subnet dari blok yang dialokasikan untuk menyediakan resource
baru di region tertentu, seperti instance Cloud SQL.
- Koneksi pribadi diberi rentang
10.240.0.0/16
yang dialokasikan. Dari alokasi ini, layanan Google dapat membuat subnet tempat resource baru disediakan. - Pada sisi layanan Google dari koneksi pribadi, Google membuat project untuk pelanggan. Project ini terisolasi, sehingga tidak ada pelanggan lain yang membagikannya dan pelanggan hanya ditagih untuk resource yang mereka sediakan.
- Setiap layanan Google membuat subnet untuk menyediakan resource. Rentang
alamat IP subnet biasanya adalah blok CIDR
/24
yang dipilih oleh layanan dan berasal dari rentang alamat IP yang dialokasikan. Anda tidak dapat mengubah subnet produsen layanan. Layanan menyediakan resource baru di subnet regional yang ada, yang sebelumnya dibuat oleh layanan tersebut. Jika subnet penuh, layanan akan membuat subnet baru di region yang sama. - Instance VM di jaringan pelanggan dapat mengakses resource layanan di region mana pun jika layanan mendukungnya. Beberapa layanan mungkin tidak mendukung komunikasi lintas region. Lihat dokumentasi layanan yang relevan untuk mengetahui informasi selengkapnya.
- Biaya transfer data keluar untuk traffic lintas regional, tempat instance VM berkomunikasi dengan resource di region berbeda, masih berlaku.
- Instance Cloud SQL diberi alamat IP
10.240.0.2
. Di jaringan VPC Pelanggan, permintaan dengan tujuan10.240.0.2
dirutekan ke koneksi pribadi melalui jaringan produsen layanan. Setelah mencapai jaringan layanan, jaringan layanan berisi rute yang mengarahkan permintaan ke resource yang benar. - Traffic antarjaringan VPC berjalan secara internal dalam jaringan Google, bukan melalui internet publik.
Masalah jaringan
Cloud SQL mengalokasikan subnet /24 dari rentang IP akses layanan pribadi untuk setiap region. Misalnya, menempatkan instance SQL Server di dua region mengharuskan rentang alamat IP yang dialokasikan menyertakan setidaknya dua subnet ukuran /24 yang tersedia.
Koneksi ke instance Cloud SQL yang menggunakan alamat IP pribadi akan otomatis diizinkan untuk rentang alamat RFC 1918. Dengan cara ini, semua klien pribadi dapat mengakses database tanpa melalui Proxy Auth Cloud SQL.
Cloud SQL tidak mempelajari rute subnet Non-RFC 1918 dari VPC Anda secara default. Anda perlu memperbarui peering jaringan ke Cloud SQL untuk mengekspor rute Non-RFC 1918.
Keamanan
Traffic melalui akses layanan pribadi disediakan dengan tingkat enkripsi tertentu. Untuk informasi selengkapnya, lihat Enkripsi dan autentikasi jaringan virtual Google Cloud.
Proxy Auth Cloud SQL dapat dikonfigurasi untuk terhubung menggunakan IP Pribadi dan memberikan autentikasi menggunakan kredensial IAM dan enkripsi end-to-end menggunakan sertifikat SSL/TLS yang berputar.
Jika persyaratan keamanan Anda mewajibkan sertifikat SSL/TLS yang dikelola sendiri, lihat petunjuk di Mengonfigurasi SSL/TLS.
Membuat satu jaringan VPC untuk setiap instance dengan alamat IP pribadi akan memberikan isolasi jaringan yang lebih baik daripada menempatkan semua instance dalam jaringan VPC "default".
Beberapa Konektivitas VPC
Cloud SQL mendukung alamat IP pribadi melalui akses layanan pribadi. Saat Anda membuat instance Cloud SQL, Cloud SQL akan membuat instance tersebut dalam virtual private cloud (VPC)-nya sendiri, yang disebut VPC Cloud SQL. Untuk mengaktifkan IP pribadi, Anda harus menyiapkan koneksi peering antara VPC Cloud SQL dan jaringan VPC. Hal ini memungkinkan resource dalam jaringan VPC Anda untuk mengakses alamat IP internal resource Cloud SQL di jaringan VPC Cloud SQL.
Dengan menggunakan Peering Jaringan VPC, Cloud SQL menerapkan akses layanan pribadi secara internal, yang memungkinkan alamat IP internal terhubung di dua jaringan VPC terlepas dari apakah keduanya berada dalam project atau organisasi yang sama. Namun, karena Peering Jaringan VPC tidak transitif, peering ini hanya menyiarkan rute antara dua VPC yang di-peering langsung. Jika Anda memiliki VPC tambahan, VPC tersebut tidak akan dapat mengakses resource Cloud SQL Anda menggunakan koneksi yang disiapkan dengan VPC asli Anda.
Untuk mengurangi batasan ini dan menghubungkan instance Cloud SQL ke beberapa VPC menggunakan alamat IP pribadi, Anda dapat menggunakan opsi koneksi berikut:
- Terhubung menggunakan rute kustom yang diberitahukan
- Terhubung menggunakan proxy menengah (SOCKS5)
- Menghubungkan menggunakan Proxy Auth Cloud SQL sebagai layanan
Untuk mengetahui informasi selengkapnya tentang cara menghubungkan beberapa VPC, lihat Menghubungkan instance ke beberapa VPC.
Referensi cepat untuk topik IP Pribadi
Saat Anda mengelola instance Cloud SQL menggunakan IP pribadi, beberapa topik berikut mungkin menarik:
Topik | Diskusi |
---|---|
Jaringan VPC Bersama | Anda dapat membuat instance Cloud SQL dengan alamat IP pribadi di Jaringan VPC Bersama. Namun, Anda tidak dapat menetapkan alamat IP pribadi di Jaringan VPC Bersama ke instance Cloud SQL yang sudah ada |
Region | Anda dapat terhubung melalui IP pribadi di seluruh region. |
Jaringan lama | Anda tidak dapat terhubung ke IP pribadi instance Cloud SQL dari jaringan lama. Jaringan lama tidak mendukung peering jaringan VPC atau akses layanan pribadi. |
Menghapus IP pribadi | Setelah mengonfigurasi instance Cloud SQL untuk menggunakan IP pribadi, Anda tidak dapat menghapus kemampuan IP pribadi dari instance tersebut. |
IP publik dan pribadi | Anda dapat menggunakan IP publik dan IP pribadi untuk terhubung ke instance Cloud SQL yang sama. Tidak ada metode koneksi yang mempengaruhi koneksi lainnya. |
Instance Cloud SQL yang ada | Anda dapat mengonfigurasi instance untuk menggunakan IP pribadi pada waktu pembuatan instance. Anda juga dapat mengonfigurasi instance yang ada untuk menggunakan IP pribadi. Dengan mengonfigurasi instance yang ada agar menggunakan IP pribadi, atau mengubah jaringan yang terhubung, akan menyebabkan instance dimulai ulang, dan menyebabkan periode nonaktif selama beberapa menit. |
Alamat IP statis | Untuk alamat IP publik dan pribadi, alamat masuk instance Cloud SQL bersifat statis; tidak berubah. Alamat keluar tidak selalu statis, kecuali untuk alamat IP publik keluar dari replika server eksternal yang selalu statis. |
Replika | Replika mewarisi status IP pribadinya dari instance utamanya. Anda tidak dapat mengonfigurasi IP pribadi secara langsung pada replika. Jika terhubung ke replika menggunakan alamat IP pribadi, Anda tidak perlu membuat koneksi pribadi VPC tambahan untuk replika, karena koneksi tersebut juga diwarisi dari instance utama. |
Proxy Auth Cloud SQL | Untuk terhubung ke instance Cloud SQL menggunakan IP pribadi, Proxy Auth Cloud SQL
harus berada di resource yang memiliki akses ke jaringan VPC yang sama dengan
instance. Jika instance mengaktifkan kedua jenis IP, Proxy Auth Cloud SQL secara default
menggunakan IP publik. Untuk memastikan penggunaan IP pribadi, Anda harus meneruskan
flag -ip_address_types=PRIVATE ke Proxy Auth Cloud SQL.
Pelajari lebih lanjut. |
Akses VPC Serverless | Untuk terhubung dari sumber serverless, seperti Lingkungan standar App Engine, Cloud Run, atau fungsi Cloud Run, aplikasi atau fungsi Anda terhubung langsung ke instance melalui Akses VPC Serverless tanpa Proxy Auth Cloud SQL. |
Peering Jaringan VPC | Koneksi yang menggunakan akses layanan pribadi bergantung pada
Peering Jaringan VPC. Namun, Anda tidak dapat membuat Peering Jaringan VPC
secara eksplisit karena peering bersifat internal untuk Google Cloud. Setelah
membuat koneksi akses layanan pribadi, Anda dapat melihat Peering Jaringan VPC dasarnya
di
halaman Peering Jaringan VPC di
konsol Google Cloud. Namun, jangan menghapusnya kecuali jika Anda ingin
menghapus koneksi pribadi.
Pelajari lebih lanjut tentang Peering Jaringan VPC. |
Kontrol Layanan VPC | Kontrol Layanan VPC meningkatkan kemampuan Anda untuk mengurangi risiko pemindahan data yang tidak sah. Dengan Kontrol Layanan VPC, Anda membuat perimeter di sekitar instance Cloud SQL. Kontrol Layanan VPC membatasi akses ke resource dalam perimeter dari luar. Hanya klien dan resource dalam perimeter yang dapat berinteraksi satu sama lain. Untuk mengetahui informasi selengkapnya, lihat Ringkasan Kontrol Layanan VPC. Tinjau juga batasan Cloud SQL saat menggunakan Kontrol Layanan VPC. Untuk menggunakan Kontrol Layanan VPC dengan Cloud SQL, lihat Mengonfigurasi Kontrol Layanan VPC. |
Peering transitif | Hanya jaringan yang di-peering langsung yang dapat berkomunikasi. Peering transitif tidak
didukung. Dengan kata lain, jika jaringan VPC N1 di-peering dengan N2 dan N3, tetapi
N2 dan N3 tidak terhubung langsung, jaringan VPC N2 tidak dapat berkomunikasi dengan
jaringan VPC N3 melalui
VPC Peering Jaringan.
Klien dalam satu project dapat terhubung ke instance Cloud SQL di beberapa project menggunakan Jaringan VPC Bersama. |
Memindahkan instance Cloud SQL | Instance Cloud SQL hanya dapat dipindahkan antar-jaringan yang dimiliki oleh project tempat instance tersebut berada. Selain itu, instance Cloud SQL tidak dapat dipindahkan antar-project, juga tidak dapat dipindahkan antar-jaringan yang dihosting oleh project yang berbeda. |
Langkah berikutnya
- Lihat cara mengonfigurasi IP pribadi.
- Pelajari akses layanan pribadi lebih lanjut.
- Lihat cara mengonfigurasi akses layanan pribadi untuk instance Cloud SQL.
- Pelajari Cloud VPN lebih lanjut.
- Pelajari jaringan VPC lebih lanjut.
- Pelajari Peering Jaringan VPC lebih lanjut.
- Pelajari VPC Bersama lebih lanjut.
- Pelajari Proxy Auth Cloud SQL lebih lanjut.