Aktifkan akses internet keluar untuk pods - Amazon EKS

Bantu tingkatkan halaman ini

Ingin berkontribusi pada panduan pengguna ini? Gulir ke bagian bawah halaman ini dan pilih Edit halaman ini GitHub. Kontribusi Anda akan membantu membuat panduan pengguna kami lebih baik untuk semua orang.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Aktifkan akses internet keluar untuk pods

Berlaku untuk: Linux IPv4Simpul Fargate, Linux node dengan EC2 instance Amazon

Jika Anda menerapkan klaster menggunakan IPv6 keluarga, maka informasi dalam topik ini tidak berlaku untuk klaster Anda, karena IPv6 alamat tidak diterjemahkan jaringan. Untuk informasi selengkapnya tentang penggunaan IPv6 dengan cluster Anda, lihatTetapkan IPv6 alamat ke cluster, pods, dan layanan.

Secara default, masing-masing Pod di klaster Anda diberikan IPv4 alamat pribadi dari blok routing (CIDR) antar-domain tanpa kelas yang terkait dengan VPC Pod dikerahkan di. Pods dalam VPC komunikasi yang sama satu sama lain menggunakan alamat IP pribadi ini sebagai titik akhir. Ketika a Pod berkomunikasi ke IPv4 alamat apa pun yang tidak berada dalam CIDR blok yang terkait dengan VPC CNI plugin Amazon Anda VPC (untuk keduanya Linux atau Windows) menerjemahkan Pod's IPv4alamat ke IPv4 alamat pribadi utama dari antarmuka elastis network primer dari node yang Pod berjalan, secara default*.

catatan

Untuk Windows node, ada detail tambahan yang perlu dipertimbangkan. Secara default, VPC CNI plugin untuk Windowsdidefinisikan dengan konfigurasi jaringan di mana lalu lintas ke tujuan dalam hal yang sama VPC dikecualikan untukSNAT. Ini berarti bahwa VPC komunikasi internal telah SNAT dinonaktifkan dan alamat IP dialokasikan ke Pod dapat dirutekan di dalam. VPC Tetapi lalu lintas ke tujuan di luar VPC memiliki sumbernya Pod IP SNAT 'ed ke alamat IP utama instansENI. Konfigurasi default ini untuk Windows memastikan bahwa pod dapat mengakses jaringan di luar Anda VPC dengan cara yang sama seperti instance host.

Karena perilaku ini:

  • Klaster Pods dapat berkomunikasi dengan sumber daya internet hanya jika node yang mereka jalankan memiliki alamat IP publik atau elastis yang ditetapkan untuk itu dan berada di subnet publik. Tabel rute terkait subnet publik memiliki rute ke gateway internet. Kami merekomendasikan untuk menyebarkan node ke subnet pribadi, bila memungkinkan.

  • Untuk versi plugin sebelumnya1.8.0, sumber daya yang ada di jaringan atau VPCs yang terhubung ke cluster Anda VPC menggunakan VPCpeering, transit VPC, atau tidak AWS Direct Connectdapat memulai komunikasi ke Anda Pods di belakang antarmuka jaringan elastis sekunder. Klaster Pods Namun, dapat memulai komunikasi ke sumber daya tersebut dan menerima tanggapan dari mereka.

Jika salah satu dari pernyataan berikut benar di lingkungan Anda, maka ubah konfigurasi default dengan perintah berikut.

  • Anda memiliki sumber daya dalam jaringan atau VPCs yang terhubung ke cluster Anda VPC menggunakan VPCpeering, transit VPC, atau AWS Direct Connectyang perlu memulai komunikasi dengan Anda Pods menggunakan IPv4 alamat dan versi plugin Anda lebih awal dari1.8.0.

  • Klaster Pods berada di subnet pribadi dan perlu berkomunikasi keluar ke internet. Subnet memiliki rute ke NATgateway.

kubectl set env daemonset -n kube-system aws-node AWS_VPC_K8S_CNI_EXTERNALSNAT=true
catatan

Variabel AWS_VPC_K8S_CNI_EXTERNALSNAT dan AWS_VPC_K8S_CNI_EXCLUDE_SNAT_CIDRS CNI konfigurasi tidak berlaku untuk Windows simpul. Menonaktifkan SNAT tidak didukung untuk Windows. Adapun mengecualikan daftar IPv4 CIDRs dariSNAT, Anda dapat menentukan ini dengan menentukan ExcludedSnatCIDRs parameter di Windows skrip bootstrap. Untuk informasi selengkapnya tentang penggunaan parameter ini, lihatParameter konfigurasi skrip bootstrap.

Jaringan host

* Jika Pod's spec berisi hostNetwork=true (default isfalse), maka alamat IP-nya tidak diterjemahkan ke alamat yang berbeda. Ini adalah kasus untuk kube-proxy dan Amazon VPC CNI plugin for Kubernetes Pods yang berjalan di cluster Anda, secara default. Untuk ini Pods, alamat IP sama dengan alamat IP utama node, jadi Pod's Alamat IP tidak diterjemahkan. Untuk informasi lebih lanjut tentang Pod's hostNetworkpengaturan, lihat inti PodSpec v1 di Kubernetes APIreferensi.