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: Node Linux IPv4 Fargate, Linux node dengan instance Amazon EC2

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 diberi IPv4 alamat pribadi dari blok routing (CIDR) antar-domain tanpa kelas yang terkait dengan tempat VPC digunakan. Pod Podsdalam VPC komunikasi yang sama satu sama lain menggunakan alamat IP pribadi ini sebagai titik akhir. Ketika Pod berkomunikasi ke IPv4 alamat apa pun yang tidak berada dalam CIDR blok yang terkait dengan AndaVPC, VPC CNI plugin Amazon (untuk keduanya Linuxatau Windows) menerjemahkan Pod'sIPv4 alamat ke IPv4 alamat pribadi utama dari antarmuka elastic network primer dari node yang Pod sedang berjalan, secara default*.

catatan

Untuk Windows node, ada detail tambahan yang perlu dipertimbangkan. Secara default, VPCCNIplugin untuk Windows didefinisikan dengan konfigurasi jaringan di mana lalu lintas ke tujuan yang sama VPC dikecualikan untukSNAT. Ini berarti bahwa VPC komunikasi internal telah SNAT dinonaktifkan dan alamat IP yang dialokasikan ke a dapat Pod dirutekan di dalam. VPC Tapi lalu lintas ke tujuan di luar VPC memiliki sumber 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:

  • Anda 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 klaster Anda VPC menggunakan VPCpeering, transit VPC, atau tidak AWS Direct Connectdapat memulai komunikasi ke antarmuka jaringan Pods elastis sekunder Anda. Anda Pods 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 dari. 1.8.0

  • Anda 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 node. Menonaktifkan SNAT tidak didukung untuk. Windows Adapun mengecualikan daftar IPv4 CIDRs dariSNAT, Anda dapat menentukan ini dengan menentukan ExcludedSnatCIDRs parameter dalam skrip Windows bootstrap. Untuk informasi selengkapnya tentang penggunaan parameter ini, lihatParameter konfigurasi skrip bootstrap.

Jaringan host

* Jika Pod's spesifikasi berisi hostNetwork=true (default adalahfalse), 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 iniPods, alamat IP sama dengan alamat IP utama node, sehingga alamat Pod's IP tidak diterjemahkan. Untuk informasi lebih lanjut tentang Pod's hostNetwork pengaturan, lihat inti PodSpec v1 dalam Kubernetes API referensi.