Halaman ini menjelaskan dukungan multi-jaringan untuk Pod, termasuk kasus penggunaan, konsep, istilah, dan manfaat yang relevan.
Ringkasan
Google Cloud mendukung beberapa antarmuka jaringan di tingkat instance mesin virtual (VM). Anda dapat menghubungkan VM ke maksimal 8 jaringan dengan beberapa antarmuka jaringan, termasuk jaringan default dan 7 jaringan tambahan.
Jaringan Google Kubernetes Engine (GKE) memperluas kemampuan multi-jaringan ke Pod yang berjalan di node. Dengan dukungan multi-jaringan untuk Pod, Anda dapat mengaktifkan beberapa antarmuka pada node dan Pod di cluster GKE. Dukungan multi-jaringan untuk Pod menghilangkan satu batasan antarmuka untuk node pool, yang membatasi node ke satu VPC untuk jaringan.
Network Function Optimizer (NFO) adalah layanan jaringan yang tersedia untuk GKE yang menyediakan dukungan multi-jaringan dan dataplane berbasis Kubernetes berperforma tinggi. NFO memungkinkan fungsi jaringan dalam container di GKE. Multi-jaringan adalah salah satu pilar dasar NFO.
Untuk menggunakan dukungan multijaringan untuk Pod dan node, lihat Menyiapkan dukungan multijaringan untuk Pod.
Terminologi dan konsep
Halaman ini menggunakan konsep berikut:
VPC Utama: VPC utama adalah VPC yang telah dikonfigurasi sebelumnya dan dilengkapi dengan serangkaian setelan dan resource default. Cluster GKE dibuat dalam VPC ini. Jika Anda menghapus VPC yang telah dikonfigurasi sebelumnya, maka cluster GKE akan dibuat di VPC utama.
Subnet: Di Google Cloud, subnet adalah cara untuk membuat Classless Inter-Domain Routing (CIDR) dengan netmask di VPC. Subnet memiliki satu rentang alamat IP primer yang ditetapkan ke node dan dapat memiliki beberapa rentang sekunder yang dapat menjadi bagian dari Pod dan Layanan.
Node-network: Jaringan node mengacu pada kombinasi khusus pasangan VPC dan subnet. Dalam jaringan node ini, node yang termasuk dalam node pool mendapatkan alamat IP yang dialokasikan dari rentang alamat IP utama.
Rentang sekunder: Rentang sekunder Google Cloud adalah CIDR dan netmask yang berada di dalam subnet. GKE menggunakannya sebagai jaringan Pod Lapisan 3. Satu Pod dapat terhubung ke beberapa jaringan Pod.
Jaringan Pod: Objek Jaringan yang berfungsi sebagai titik koneksi untuk Pod.
Jenis koneksi dapat berupa Layer 3
atau Device
. Anda dapat mengonfigurasi Jaringan jenis Device
dalam mode netdevice
atau Data Plane Development Kit (DPDK).
Layer 3
jaringan sesuai dengan rentang sekunder di subnet. Jaringan Device
sesuai dengan satu subnet di VPC. Model data untuk jaringan Pod di multi-jaringan GKE adalah sebagai berikut:
Untuk Jaringan
Layer 3
: VPC -> Subnet Name -> Secondary Range NameUntuk Jaringan
Device
: VPC -> Subnet Name
Jaringan Pod default: Google Cloud membuat jaringan Pod default selama pembuatan cluster. Jaringan Pod default menggunakan VPC utama sebagai jaringan node. Jaringan Pod default tersedia di semua node cluster dan Pod, secara default.
Pod dengan beberapa antarmuka: Beberapa antarmuka di Pod tidak dapat terhubung ke jaringan Pod yang sama.
Diagram berikut menunjukkan arsitektur cluster GKE standar dengan Jaringan Layer 3
:
Untuk Jaringan berjenis Device
, yang dapat dikonfigurasi dalam mode netdevice
atau DPDK
, vNIC VM dikelola sebagai resource dan diteruskan ke Pod. Dalam hal ini, jaringan Pod dipetakan langsung ke jaringan Node. Rentang sekunder tidak diperlukan untuk Jaringan yang memiliki jenis Device
.
Kasus penggunaan
Dukungan multi-jaringan untuk Pod menangani kasus penggunaan berikut:
- Men-deploy Fungsi Jaringan Container: Jika Anda menjalankan Fungsi Jaringan di Container, yang memiliki bidang pengelolaan dan data terpisah. Multi-jaringan untuk Pod mengisolasi jaringan untuk berbagai paket pengguna, performa tinggi atau latensi rendah dari antarmuka tertentu, atau multi-tenancy tingkat jaringan. Hal ini diperlukan untuk kepatuhan, QoS, dan keamanan.
- Menghubungkan VPC dalam organisasi dan project yang sama: Anda ingin membuat cluster GKE di VPC dan perlu terhubung ke layanan di VPC lain. Anda dapat menggunakan opsi node multi-NIC untuk konektivitas langsung. Hal ini mungkin disebabkan oleh model hub-dan-spoke, yang memungkinkan layanan terpusat (logging, autentikasi) beroperasi dalam VPC Hub, dan spoke-nya memerlukan konektivitas pribadi untuk mengaksesnya. Anda dapat menggunakan dukungan multi-jaringan untuk Pod agar dapat menghubungkan Pod yang berjalan di cluster GKE ke VPC hub secara langsung.
- Jalankan aplikasi DPDK dengan VFIO: Anda ingin menjalankan aplikasi DPDK yang memerlukan akses ke NIC pada node melalui driver VFIO. Anda dapat mencapai kecepatan paket yang optimal dengan mengabaikan kernel, Kubernetes, dan GKE Dataplane V2 sepenuhnya.
- Aktifkan akses langsung ke vNIC yang melewati Kubernetes dan GKE Dataplane V2: Anda menjalankan Fungsi Jaringan di Container yang memerlukan akses langsung ke Kartu Antarmuka Jaringan (NIC) pada node. Misalnya, aplikasi Komputasi Berperforma Tinggi (HPC) yang ingin mengabaikan Kubernetes dan GKE Dataplane V2 untuk mencapai latensi terendah. Beberapa aplikasi juga ingin akses ke informasi topologi PCIe dari NIC untuk ditempatkan dengan perangkat lain seperti GPU.
Manfaat
Dukungan multi-jaringan untuk Pod memberikan manfaat berikut:
- Isolasi traffic: Dukungan multi-jaringan untuk Pod memungkinkan Anda mengisolasi traffic dalam cluster GKE. Anda dapat membuat Pod dengan beberapa antarmuka jaringan, untuk memisahkan traffic berdasarkan kemampuan, seperti pengelolaan dan dataplane, dalam Pod yang menjalankan Cloud Native Function (CNF) tertentu.
- homing ganda: Dengan homing ganda, Pod dapat memiliki beberapa antarmuka dan mengarahkan traffic ke VPC yang berbeda, sehingga Pod dapat membuat koneksi dengan VPC primer dan sekunder. Jika satu VPC mengalami masalah, aplikasi dapat kembali ke VPC sekunder.
- Segmentasi jaringan: Pod dapat terhubung ke jaringan internal atau eksternal berdasarkan kebutuhan workload. Bergantung pada persyaratan khusus workload, Anda dapat memilih Pod atau grup Pod mana yang terhubung ke setiap jaringan. Misalnya, Anda dapat menggunakan jaringan internal untuk komunikasi timur-barat dan jaringan eksternal untuk akses internet. Dengan demikian, Anda dapat menyesuaikan konektivitas jaringan workload berdasarkan kebutuhan spesifiknya.
- Performa yang optimal dengan DPDK: Dukungan multijaringan untuk Pod di GKE memungkinkan aplikasi DPDK berjalan di Pod GKE, yang memberikan performa pemrosesan paket yang optimal.
- NIC Host yang tersedia langsung di Pod: Dukungan NIC mode
netdevice
dengan multi-jaringan meneruskan NIC VM langsung ke Pod, mengabaikan Kubernetes dan GKE Dataplane V2. Hal ini dapat mencapai latensi terendah untuk kolaborasi antar-perangkat. - Performa: Untuk meningkatkan performa aplikasi, Anda dapat menghubungkan aplikasi ke jaringan yang paling sesuai dengan kebutuhan aplikasi.