Bantu tingkatkan halaman ini
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Untuk berkontribusi pada panduan pengguna ini, pilih Edit halaman ini pada GitHub tautan yang terletak di panel kanan setiap halaman.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Lampirkan beberapa antarmuka jaringan ke Pod
Secara default, plugin Amazon VPC CNI memberikan satu alamat IP ke setiap pod. Alamat IP ini dilampirkan ke elastic network interface yang menangani semua lalu lintas masuk dan keluar untuk pod. Untuk meningkatkan kinerja bandwidth dan paket per detik, Anda dapat menggunakan fitur Multi-NIC dari VPC CNI untuk mengonfigurasi pod multi-homed. Pod multi-homed adalah pod Kubernetes tunggal yang menggunakan beberapa antarmuka jaringan (dan beberapa alamat IP). Dengan menjalankan pod multi-homed, Anda dapat menyebarkan lalu lintas aplikasinya di beberapa antarmuka jaringan dengan menggunakan koneksi bersamaan. Ini sangat berguna untuk kasus penggunaan Artificial Intelligence (AI), Machine Learning (ML), dan High Performance Computing (HPC).
Diagram berikut menunjukkan pod multi-homed yang berjalan pada node pekerja dengan beberapa kartu antarmuka jaringan (NICs) yang digunakan.

Latar Belakang
Di Amazon EC2, elastic network interface adalah komponen jaringan logis dalam VPC yang mewakili kartu jaringan virtual. Untuk banyak jenis EC2 contoh, antarmuka jaringan berbagi kartu antarmuka jaringan tunggal (NIC) dalam perangkat keras. NIC tunggal ini memiliki bandwidth maksimum dan paket per detik.
Jika fitur Multi-NIC diaktifkan, VPC CNI tidak menetapkan alamat IP secara massal, yang dilakukan secara default. Sebagai gantinya, VPC CNI memberikan satu alamat IP ke antarmuka jaringan pada setiap kartu jaringan sesuai permintaan ketika pod baru dimulai. Perilaku ini mengurangi tingkat kehabisan alamat IP, yang ditingkatkan dengan menggunakan pod multi-homed. Karena VPC CNI menetapkan alamat IP sesuai permintaan, pod mungkin membutuhkan waktu lebih lama untuk memulai instance dengan fitur Multi-NIC diaktifkan.
Pertimbangan
-
Pastikan klaster Kubernetes Anda menjalankan versi VPC CNI dan yang lebih baru.
1.20.0
Fitur Multi-NIC hanya tersedia dalam versi1.20.0
VPC CNI atau yang lebih baru. -
Aktifkan variabel
ENABLE_MULTI_NIC
lingkungan di plugin VPC CNI. Anda dapat menjalankan perintah berikut untuk mengatur variabel dan memulai penyebaran. DaemonSet-
kubectl set env daemonset aws-node -n kube-system ENABLE_MULTI_NIC=true
-
-
Pastikan Anda membuat node pekerja yang memiliki beberapa kartu antarmuka jaringan (NICs). Untuk daftar EC2 instance yang memiliki beberapa kartu antarmuka jaringan, lihat Kartu jaringan di Panduan EC2 Pengguna Amazon.
-
Jika fitur Multi-NIC diaktifkan, VPC CNI tidak menetapkan alamat IP secara massal, yang dilakukan secara default. Karena VPC CNI menetapkan alamat IP sesuai permintaan, pod mungkin membutuhkan waktu lebih lama untuk memulai instance dengan fitur Multi-NIC diaktifkan. Untuk informasi lebih lanjut, lihat bagian sebelumnyaLatar Belakang.
-
Dengan fitur Multi-NIC diaktifkan, pod tidak memiliki beberapa antarmuka jaringan secara default. Anda harus mengkonfigurasi setiap beban kerja untuk menggunakan Multi-NIC. Tambahkan
k8s.amazonaws.com/nicConfig: multi-nic-attachment
anotasi ke beban kerja yang seharusnya memiliki beberapa antarmuka jaringan.
Pertimbangan IPv6
-
Kebijakan IAM khusus - Untuk
IPv6
cluster, buat dan gunakan kebijakan IAM kustom berikut untuk CNI VPC. Kebijakan ini khusus untuk Multi-NIC. Untuk informasi lebih umum tentang menggunakan VPC CNI denganIPv6
cluster, lihat. Pelajari tentang IPv6 alamat ke klaster, Pod, dan layanan{ "Version": "2012-10-17", "Statement": [ { "Sid": "AmazonEKSCNIPolicyIPv6MultiNIC", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:DescribeInstances", "ec2:AssignIpv6Addresses", "ec2:DetachNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DescribeTags", "ec2:ModifyNetworkInterfaceAttribute", "ec2:DeleteNetworkInterface", "ec2:DescribeInstanceTypes", "ec2:UnassignIpv6Addresses", "ec2:AttachNetworkInterface", "ec2:DescribeSubnets" ], "Resource": "*" }, { "Sid": "AmazonEKSCNIPolicyENITagIPv6MultiNIC", "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": "arn:aws:ec2:*:*:network-interface/*" } ] }
-
IPv6
mekanisme transisi tidak tersedia - Jika Anda menggunakan fitur Multi-NIC, VPC CNI tidak menetapkan alamat ke pod diIPv4
klaster.IPv6
Jika tidak, VPC CNI memberikanIPv4
alamat host-lokal ke setiap pod sehingga pod dapat berkomunikasi dengan sumber daya eksternal di VPC AmazonIPv4
lain atau internet.
Penggunaan
Setelah fitur Multi-NIC diaktifkan di VPC CNI dan aws-node
pod telah dimulai ulang, Anda dapat mengonfigurasi setiap beban kerja menjadi multi-homed. Contoh konfigurasi YAMM berikut dengan anotasi yang diperlukan:
apiVersion: apps/v1 kind: Deployment metadata: name: orders-deployment namespace: ecommerce labels: app: orders spec: replicas: 3 selector: matchLabels: app: orders template: metadata: annotations: k8s.amazonaws.com/nicConfig: multi-nic-attachment labels: app: orders spec: ...
Pertanyaan yang Sering Diajukan
1. Apa itu kartu antarmuka jaringan (NIC)?
Kartu antarmuka jaringan (NIC), juga disebut kartu jaringan, adalah perangkat fisik yang memungkinkan konektivitas jaringan untuk perangkat keras komputasi awan yang mendasarinya. Di EC2 server modern, ini mengacu pada kartu jaringan Nitro. Elastic Network Interface (ENI) adalah representasi virtual dari kartu jaringan yang mendasarinya.
Beberapa jenis EC2 contoh memiliki beberapa NICs untuk bandwidth yang lebih besar dan kinerja packet rate. Untuk contoh seperti itu, Anda dapat menetapkan sekunder ENIs ke kartu jaringan tambahan. Misalnya, ENI #1 dapat berfungsi sebagai antarmuka untuk NIC yang terpasang pada indeks kartu jaringan 0, sedangkan ENI #2 dapat berfungsi sebagai antarmuka untuk NIC yang terpasang pada indeks kartu jaringan terpisah.
2. Apa itu pod multi-homed?
Pod multi-homed adalah pod Kubernetes tunggal dengan beberapa antarmuka jaringan (dan implikasinya beberapa alamat IP). Setiap antarmuka jaringan pod dikaitkan dengan Elastic Network Interface (ENI), dan ini ENIs adalah representasi logis dari terpisah NICs pada node pekerja yang mendasarinya. Dengan beberapa antarmuka jaringan, pod multi-homed memiliki kapasitas transfer data tambahan, yang juga meningkatkan kecepatan transfer datanya.
penting
VPC CNI hanya dapat mengonfigurasi pod multi-homed pada tipe instance yang memiliki multiple. NICs
3. Mengapa saya harus menggunakan fitur ini?
Jika Anda perlu menskalakan kinerja jaringan di beban kerja berbasis Kubernetes, Anda dapat menggunakan fitur Multi-NIC untuk menjalankan pod multi-homed yang berinteraksi dengan semua yang mendasarinya yang memiliki perangkat ENA NICs yang terpasang padanya. Memanfaatkan kartu jaringan tambahan meningkatkan kapasitas bandwidth dan kinerja laju paket dalam aplikasi Anda dengan mendistribusikan lalu lintas aplikasi di beberapa koneksi bersamaan. Ini sangat berguna untuk kasus penggunaan Artificial Intelligence (AI), Machine Learning (ML), dan High Performance Computing (HPC).
4. Bagaimana cara menggunakan fitur ini?
-
Pertama, Anda harus memastikan bahwa cluster Kubernetes Anda menggunakan VPC CNI versi 1.20 atau yang lebih baru. Untuk langkah-langkah memperbarui VPC CNI sebagai add-on EKS, lihat. Perbarui Amazon VPC CNI (add-on Amazon EKS)
-
Kemudian, Anda harus mengaktifkan dukungan Multi-NIC di VPC CNI dengan menggunakan
ENABLE_MULTI_NIC
variabel lingkungan. -
Kemudian, Anda harus memastikan bahwa Anda membuat dan bergabung dengan node yang memiliki beberapa kartu jaringan. Untuk daftar jenis EC2 instans yang memiliki beberapa kartu jaringan, lihat Kartu jaringan di Panduan EC2 Pengguna Amazon.
-
Terakhir, Anda mengonfigurasi setiap beban kerja untuk menggunakan beberapa antarmuka jaringan (pod multi-homed) atau menggunakan antarmuka jaringan tunggal.
5. Bagaimana cara mengonfigurasi beban kerja saya untuk menggunakan beberapa NICs pada node pekerja yang didukung?
Untuk menggunakan pod multi-homed, Anda perlu menambahkan anotasi berikut:. k8s.amazonaws.com/nicConfig: multi-nic-attachment
Ini akan melampirkan ENI dari setiap NIC dalam instance yang mendasarinya ke pod (satu ke banyak pemetaan antara pod dan pod NICs).
Jika anotasi ini tidak ada, VPC CNI mengasumsikan bahwa pod Anda hanya memerlukan 1 antarmuka jaringan dan memberinya IP dari ENI pada NIC yang tersedia.
6. Adaptor antarmuka jaringan apa yang didukung dengan fitur ini?
Anda dapat menggunakan adaptor antarmuka jaringan apa pun jika Anda memiliki setidaknya satu ENA yang terpasang ke kartu jaringan yang mendasarinya untuk lalu lintas IP. Untuk informasi selengkapnya tentang ENA, lihat Elastic Network Adapter (ENA) di Panduan EC2 Pengguna Amazon.
Konfigurasi perangkat jaringan yang didukung:
-
Antarmuka ENA menyediakan semua jaringan IP tradisional dan fitur routing yang diperlukan untuk mendukung jaringan IP untuk VPC. Untuk informasi selengkapnya, lihat Mengaktifkan jaringan yang disempurnakan dengan ENA pada EC2 instans Anda.
-
Antarmuka EFA (EFA dengan ENA) menyediakan perangkat ENA untuk jaringan IP dan perangkat EFA untuk komunikasi latensi rendah dan throughput tinggi.
penting
Jika kartu jaringan hanya memiliki adaptor khusus EFA yang terpasang padanya, VPC CNI akan melewatinya saat menyediakan konektivitas jaringan untuk pod multi-homed. Namun, jika Anda menggabungkan adaptor khusus EFA dengan adaptor ENA pada kartu jaringan, maka VPC CNI akan mengelola ENIs pada perangkat ini juga. Untuk menggunakan antarmuka khusus EFA dengan kluster EKS, lihat. Jalankan pelatihan pembelajaran mesin di Amazon EKS dengan Adaptor Kain Elastis
7. Dapatkah saya melihat apakah sebuah node di cluster saya memiliki dukungan ENA?
Ya, Anda dapat menggunakan AWS CLI atau EC2 API untuk mengambil informasi jaringan tentang EC2 instance di cluster Anda. Ini memberikan rincian tentang apakah instans memiliki dukungan ENA atau tidak. Dalam contoh berikut, ganti <your-instance-id>
dengan ID EC2 instance dari sebuah node.
AWS Contoh CLI:
aws ec2 describe-instances --instance-ids <your-instance-id> --query "Reservations[].Instances[].EnaSupport"
Contoh output:
[ true ]
8. Dapatkah saya melihat berbagai alamat IP yang terkait dengan pod?
Tidak, tidak mudah. Namun, Anda dapat menggunakan nsenter
dari node untuk menjalankan alat jaringan umum seperti ip route show
dan melihat alamat IP dan antarmuka tambahan.
9. Dapatkah saya mengontrol jumlah antarmuka jaringan untuk pod saya?
Tidak. Ketika beban kerja Anda dikonfigurasi untuk menggunakan multiple NICs pada instance yang didukung, satu pod secara otomatis memiliki alamat IP dari setiap kartu jaringan pada instance. Atau, pod single-homed akan memiliki satu antarmuka jaringan yang terpasang ke satu NIC pada instance.
penting
Kartu jaringan yang hanya memiliki perangkat khusus EFA yang terpasang padanya dilewati oleh VPC CNI.
10. Bisakah saya mengonfigurasi pod saya untuk menggunakan NIC tertentu?
Tidak, ini tidak didukung. Jika sebuah pod memiliki anotasi yang relevan, maka VPC CNI secara otomatis mengonfigurasinya untuk menggunakan setiap NIC dengan adaptor ENA pada node pekerja.
11. Apakah fitur ini berfungsi dengan fitur jaringan VPC CNI lainnya?
Ya, fitur Multi-NIC di VPC CNI bekerja dengan jaringan khusus dan penemuan subnet yang disempurnakan. Namun, pod multi-homed tidak menggunakan subnet khusus atau grup keamanan. Sebagai gantinya, VPC CNI memberikan alamat IP dan antarmuka jaringan ke pod multi-homed dengan konfigurasi subnet dan grup keamanan yang sama dengan node. Untuk informasi selengkapnya tentang jaringan khusus, lihatMenerapkan Pod di subnet alternatif dengan jaringan khusus.
Fitur Multi-NIC di VPC CNI tidak berfungsi dan tidak dapat digabungkan dengan grup keamanan untuk pod.
12. Dapatkah saya menggunakan kebijakan jaringan dengan fitur ini?
Ya, Anda dapat menggunakan kebijakan jaringan Kubernetes dengan Multi-NIC. Kebijakan jaringan Kubernetes membatasi lalu lintas jaringan ke dan dari pod Anda. Untuk informasi selengkapnya tentang penerapan kebijakan jaringan dengan VPC CNI, lihat. Batasi lalu lintas Pod dengan kebijakan jaringan Kubernetes
13. Apakah dukungan Multi-NIC diaktifkan dalam Mode Otomatis EKS?
Multi-NIC tidak didukung untuk kluster Mode Otomatis EKS.