Buat IP outbound tunggal untuk jaringan tertentu

12

Saya mencoba menentukan cara terbaik dalam GCP untuk menetapkan satu alamat IP eksternal untuk lalu lintas OUTBOUND. Kasus penggunaan saya: Saya perlu memberikan IP statis kepada pihak ke-3 sehingga mereka dapat memasukkannya dalam daftar putih, sehingga mesin virtual saya dapat mengakses API mereka. Karena saya dapat menambah atau mengurangi instance GCE di masa depan, saya tidak ingin memberi mereka beberapa IP statis yang dapat berubah.

Saya menemukan pertanyaan serupa di sini, tetapi tidak yakin ini membahas kasus penggunaan saya.

Saya memiliki pengaturan jaringan GCP standar; tidak ada VPN dan semua VM memiliki IP eksternal yang unik. Saya sebenarnya suka dengan cara ini karena saya harus dapat SSH ke VM. Tetapi dari VMs saya ke internet, saya ingin lalu lintas muncul bahwa itu semua berasal dari satu IP. Pikiran langsung yang muncul di kepala saya dan bahwa petunjuk dokumen adalah membuat contoh NAT, kemudian rute lalu lintas keluar melalui itu. Beberapa masalah dengan pendekatan itu:

  1. Saya harus mengatur dan memelihara kotak semata-mata untuk tujuan NAT
  2. Itu bukan HA; jika instance atau zona ketersediaan itu mati, instance saya yang lain tidak akan dapat merutekan lalu lintas secara eksternal
  3. Sepertinya tidak terlalu berulang jika saya harus membuat ulang konfigurasi di masa depan

Secara khusus, saya menggunakan GKE / Kubernetes untuk proyek ini. Apakah ada praktik terbaik untuk menyelesaikan kasus penggunaan ini yaitu HA, pemeliharaan rendah dan dapat diulang?

merampok
sumber
Saya percaya opsi terbaik untuk Anda adalah mengatur VPN, yang akan membantu saat menggunakan GKE juga. Sebagai contoh: serverfault.com/questions/750389/gke-pod-connecting-via-vpn , dan itu hemat biaya.
George
@ George Saya tidak berpikir VPN akan bekerja untuk ini, karena saya tidak mengontrol pihak lain. Seperti pada, saya tidak akan membuat VPN dengan pihak ke-3; Saya perlu mengarahkan lalu lintas melalui internet.
merampok
1
Jadi memiliki NAT Gateway harus melakukannya, tetapi ini akan menyebabkan satu titik kegagalan. Satu hal yang terlintas dalam pikiran juga, memiliki IP statis untuk mesin virtual Anda dan meminta pihak lain untuk membuat daftar putih mereka. Jika Anda ingin menghapus salah satu instance, IP masih akan dicadangkan yang dapat Anda lampirkan pada instance yang baru dibuat. Dan selama IP sedang digunakan (terpasang pada sebuah instance), itu gratis.
George
Ya, saya pikir kita harus menyelesaikan ini sampai GCP keluar dengan NAT sebagai layanan yang mirip dengan AWS. Terima kasih
merampok
1
Apakah Anda pernah bisa menyelesaikan masalah ini? Jika demikian, harap pertimbangkan untuk memposting jawaban sendiri sehingga komunitas dapat memperoleh manfaat
Faizan

Jawaban:

3

Google Cloud sekarang menyediakan layanan NAT Gateway yang dikelola - Cloud NAT .

Gateway ini dapat digunakan dengan kluster GKE, yang menyediakan IP jalan keluar publik yang stabil ke semua pod di dalamnya, yang memungkinkan mereka untuk masuk daftar putih oleh penyedia layanan pihak ketiga.

Contoh implementasi untuk menggunakan Cloud NAT dengan GKE disediakan di sini - https://cloud.google.com/nat/docs/gke-example

Juga, karena ini adalah perangkat lunak berbasis NAT yang dikelola, bandwidth dan ketersediaan tidak akan terpengaruh.

Ini masih membutuhkan host benteng untuk dapat ssh ke instance Anda sekalipun.

Parag
sumber