Model jaringan mode datar vs. pulau

Kubernetes tidak menjamin bahwa apa pun di luar cluster dapat berkomunikasi dengan cluster dan hanya berjanji untuk menyediakan fungsi berikut:

  • Semua pod dalam cluster dapat berkomunikasi langsung satu sama lain tanpa harus menggunakan Network Address Translation (NAT). Bahkan pod yang berada di node yang berbeda dapat saling berkomunikasi secara langsung.

  • Agen di node, seperti daemon sistem atau kubelet, dapat berkomunikasi dengan semua pod di node tersebut.

Jadi, saat jaringan menghosting dua cluster, seperti yang digambarkan di bawah, pertanyaan yang harus diajukan adalah bagaimana pod di cluster 1 berkomunikasi dengan pod di cluster 2? Demikian pula, bagaimana cara klien atau server di luar cluster, yang ditandai sebagai "Klien lain" dan "Server lain" dalam diagram, berkomunikasi dengan pod di dalam cluster?

Diagram yang menunjukkan tanda tanya pada jalur ke jaringan yang tidak dijamin oleh Kubernetes

Dokumen ini menjelaskan cara model jaringan mode datar dan model jaringan mode pulau menjawab pertanyaan ini secara berbeda.

Model jaringan mode datar

Dalam jaringan yang terintegrasi sepenuhnya atau mode datar, pod memiliki alamat IP unik di semua cluster. Misalnya, Pod-A di cluster 1 memiliki alamat IP yang tidak akan Anda lihat di tempat lain di cluster 1 atau cluster 2. Demikian pula, Pod-G di cluster 2 memiliki alamat unik di kedua cluster. Artinya, pod dari cluster 1 dapat berkomunikasi langsung dengan pod mana pun di cluster 2 (dengan asumsi tidak ada firewall atau kebijakan lain yang akan memblokir traffic). Tidak diperlukan terjemahan gateway atau alamat untuk komunikasi pod ke pod.

Demikian pula, klien dan server di luar cluster dapat berkomunikasi secara langsung dengan pod di dalam cluster melalui alamat IP unik pod jika, misalnya, perutean dikonfigurasi secara statis di perangkat jaringan atau Border Gateway Protocol (BGP) digunakan oleh node untuk mengiklankan bahwa node tersebut dapat menangani traffic untuk rentang IP tertentu.

Dengan demikian, dalam jaringan datar, komunikasi menjadi mudah dan langsung: tidak ada alamat IP yang tumpang-tindih, dan Anda tidak perlu menggunakan jaringan overlay atau NAT.

Diagram yang menunjukkan model jaringan mode datar

Model jaringan mode pulau

Model jaringan mode datar adalah opsi jika Anda memiliki ruang alamat IP yang besar, dan Anda dapat menetapkan alamat IP unik ke setiap pod. Namun, jika ruang alamat IP yang besar bukan opsi bagi Anda, model jaringan mode pulau adalah pilihan yang baik.

Dalam jaringan mode pulau, node memiliki alamat IP unik, tetapi agar hemat dengan alamat IP yang langka, pod tidak memiliki alamat unik di seluruh cluster. Hal ini tidak menyebabkan masalah karena pod di satu cluster tidak pernah berkomunikasi secara langsung dengan pod di cluster lain. Sebagai gantinya, seperti yang ditunjukkan diagram berikut, ada gateway yang memediasi antara pod di satu cluster dan pod di cluster lain.

Diagram yang menunjukkan model jaringan mode Pulau

Demikian pula, traffic (masuk) dari klien yang masuk ke cluster dan traffic (keluar) yang keluar dari cluster ditangani oleh gateway serupa. Gateway dapat diterapkan dengan berbagai cara. Misalnya, NAT, alamat IP Virtual (VIP), dan proxy adalah beberapa contoh gateway. Pod tersebut melakukan terjemahan alamat IP yang memiliki efek menjaga IP pod tetap bersifat pribadi.

Dalam model jaringan mode pulau, alamat IP pod yang sama dapat digunakan di setiap cluster. Artinya, alamat IP pod tidak harus unik di seluruh cluster. Seperti yang ditunjukkan diagram berikut, Anda dapat menggunakan alamat IP pod yang sama di setiap cluster karena pod di satu cluster tidak pernah berkomunikasi langsung dengan pod di cluster lain.

Diagram yang menunjukkan model jaringan mode Pulau

Keuntungan utama model jaringan mode pulau adalah alamat IP pod dapat digunakan kembali dengan cara ini.

Kelebihan dan kekurangan kedua model

Beberapa kelebihan dan kekurangan dari kedua model tersebut tercantum di sini:

  • Jaringan datar lebih cepat daripada jaringan pulau karena gateway dalam mode pulau melakukan terjemahan alamat, dan terjemahan ini menimbulkan biaya performa.

  • Men-debug masalah cluster lebih mudah di jaringan datar karena semua yang ada di jaringan memiliki alamat IP yang unik sehingga lebih mudah untuk menentukan tempat terjadinya masalah. Misalnya, IP pod tidak disamarkan di balik alamat IP node sehingga lebih mudah untuk menentukan pod mana yang menyebabkan masalah. Demikian pula, IP klien tidak disamarkan dalam mode datar seperti dalam modeเกาะ dan hal ini juga membantu proses debug.

  • Anda mungkin tidak dapat menggunakan model jaringan datar jika memiliki alamat IP yang terbatas atau jika ruang IP Anda terfragmentasi (yaitu, jika Anda tidak memiliki kumpulan alamat IP yang besar). Dalam hal ini, jaringan pulau adalah opsi yang lebih baik.

Perlu diperhatikan bahwa model jaringan datar dan pulau hanyalah dua dari kemungkinan model jaringan, dan ada banyak variasi bahkan dalam model ini.