View a markdown version of this page

Operasi gateway Amazon EKS Hybrid Nodes - Amazon EKS

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.

Operasi gateway Amazon EKS Hybrid Nodes

Halaman ini mencakup operasi hari-2 untuk gateway Amazon EKS Hybrid Nodes, termasuk ketersediaan tinggi, perilaku failover, pemantauan, penskalaan, dan siklus hidup terowongan VXLAN. Untuk instruksi instalasi, lihat Memulai dengan EKS Hybrid Nodes gateway.

Ketersediaan dan failover tinggi

Gateway Hybrid Nodes menggunakan model siaga aktif dengan pemilihan pemimpin Lease-based Kubernetes. Dua pod gateway berjalan pada node EC2 terpisah, diberlakukan oleh anti-afinitas pod. Kedua pod membuat antarmuka VXLAN saat startup dan menjalankan reconciler node yang mempertahankan entri VTEP untuk semua node hybrid. Hanya pod pemimpin yang mengelola tabel rute VPC dan CRD. CiliumVTEPConfig Pod siaga selalu siap untuk meneruskan lalu lintas dalam waktu 3-5 detik pada failover karena sudah memiliki satu set lengkap entri terowongan.

Urutan failover

Ketika instance gateway aktif gagal, urutan berikut terjadi:

  1. Pod siaga mendeteksi bahwa sewa pemimpin telah kedaluwarsa.

  2. Pod siaga memperoleh sewa dan menjadi pemimpin baru.

  3. Pemimpin baru menjalankan urutan pengaturan pemimpin:

    • Memperbarui entri tabel rute VPC untuk mengarahkan CIDR pod hybrid ke ENI utama pemimpin baru.

    • Meningkatkan sumber daya CiliumVTEPConfig kustom dengan IP node pemimpin baru dan alamat MAC VXLAN.

  4. Lalu lintas dilanjutkan mengalir melalui pemimpin baru.

Karena kedua pod mempertahankan antarmuka VXLAN dan entri VTEP setiap saat, pemimpin baru tidak perlu membuat ulang antarmuka VXLAN atau memprogram ulang entri terowongan selama failover. Hanya tabel rute VPC dan CiliumVTEPConfig pembaruan yang diperlukan.

Waktu failover yang diharapkan adalah sekitar 3-5 detik. Selama failover, lalu lintas antara VPC dan pod hybrid terputus.

Rekomendasi Availability Zone

Sebarkan node gateway di dua Availability Zone sehingga kegagalan AZ tidak menghilangkan pemimpin dan siaga. Saat menggunakan Mode Otomatis EKS, konfigurasikan pemilih subnet Anda NodeClass di beberapa AZ. Untuk grup node terkelola atau node yang dikelola sendiri, pilih node di AZ yang berbeda saat melabeli mereka.

catatan

Cross-AZ lalu lintas antara gateway dan sumber daya lain di VPC menimbulkan biaya transfer data AWS lintas AZ standar.

Parameter pemilihan pemimpin

Parameter pemilihan pemimpin default disetel untuk failover cepat:

Parameter Default Deskripsi

--leader-election-lease-duration

3s

Berapa lama seorang non-pemimpin menunggu sebelum mencoba untuk mendapatkan sewa setelah pemimpin berhenti memperbarui.

--leader-election-renew-deadline

2s

Berapa lama pemimpin mencoba memperbarui sewa sebelum menyerah.

--leader-election-retry-period

1s

Seberapa sering kandidat mencoba lagi memperoleh sewa.

Menurunkan nilai-nilai ini mengurangi waktu failover tetapi meningkatkan risiko kegagalan palsu di bawah partisi jaringan. Untuk sebagian besar penerapan, defaultnya sesuai. Untuk informasi selengkapnya, lihat Referensi konfigurasi gateway Amazon EKS Hybrid Nodes.

Manajemen tabel rute VPC

Gateway mengelola entri tabel rute VPC sehingga lalu lintas yang ditujukan untuk CIDR pod hybrid mencapai instance gateway aktif.

Bagaimana rute dikelola

Ketika pod gateway menjadi pemimpin, ia membuat atau mengganti rute di setiap tabel rute VPC yang dikonfigurasi. Setiap rute menetapkan CIDR tujuan ke pod hibrida CIDR dan target ke ENI utama pemimpin. Jika rute sudah ada dan menunjuk ke ENI yang benar, gateway melewatkan pembaruan.

Selama failover, pemimpin baru menggantikan rute yang ada sehingga mereka menunjuk ke ENI sendiri. Ini adalah mekanisme yang mengarahkan lalu lintas VPC ke gateway aktif baru.

Contoh entri tabel rute

Setelah gateway mengonfigurasi rute, tabel rute VPC Anda berisi entri yang mirip dengan berikut ini:

Destinasi Target Status

10.0.0.0/16

lokal

aktif

HYBRID_POD_CIDR

eni-LEADER_ENI_ID

aktif

Izin IAM

Gateway memerlukan tindakan IAM berikut untuk mengelola tabel rute:

  • ec2:DescribeRouteTables

  • ec2:CreateRoute

  • ec2:ReplaceRoute

  • ec2:DescribeInstances

Lampirkan izin ini ke peran IAM yang terkait dengan profil instance node gateway, identitas pod, atau konfigurasi IRSA.

Memantau

Titik akhir Kesehatan dan Kesiapan

Gateway memperlihatkan titik akhir kesehatan dan kesiapan di port: 8088

Titik akhir Jalan Deskripsi

Pemeriksaan kondisi

/healthz

Mengembalikan HTTP 200 ketika proses gateway sehat. Digunakan oleh probe liveness Kubernetes.

Pemeriksaan kesiapan

/readyz

Mengembalikan HTTP 200 ketika gateway siap untuk melayani lalu lintas. Digunakan oleh probe kesiapan Kubernetes.

Anda dapat menanyakan titik akhir ini secara manual untuk diagnostik dengan menjalankan wadah debug sementara atau dengan penerusan port:

kubectl port-forward -n eks-hybrid-nodes-gateway POD_NAME 8088:8088 & curl -s http://localhost:8088/healthz curl -s http://localhost:8088/readyz

Titik akhir metrik

Gateway mengekspos Prometheus-compatible metrik pada port 10080 di jalur. /metrics Metrik kustom berikut tersedia selain metrik controller-runtime standar.

Info gerbang:

Metrik Tipe Deskripsi

hybrid_gateway_info

Pengukur

Informasi statis tentang instance gateway. Selalu 1. Label:node_ip,node_name,vxlan_interface,vpc_cidr,pod_cidr.

Node hibrida:

Metrik Tipe Deskripsi

hybrid_gateway_hybrid_nodes_configured

Pengukur

Jumlah node hybrid saat ini dengan entri VTEP dikonfigurasi.

Operasi VTEP:

Metrik Tipe Deskripsi

hybrid_gateway_vtep_add_total

Penghitung

Total operasi penambahan VTEP yang berhasil.

hybrid_gateway_vtep_add_errors_total

Penghitung

Total operasi penambahan VTEP yang gagal.

hybrid_gateway_vtep_remove_total

Penghitung

Total operasi penghapusan VTEP yang berhasil.

hybrid_gateway_vtep_remove_errors_total

Penghitung

Total operasi penghapusan VTEP yang gagal.

Pemilihan pemimpin dan tabel rute:

Metrik Tipe Deskripsi

hybrid_gateway_leader_is_active

Pengukur

1 jika pod ini adalah pemimpin aktif, 0 jika siaga.

hybrid_gateway_leader_setup_duration_seconds

Histogram

Durasi operasi penyiapan pemimpin (tabel rute+CiliumVtepConfig) dalam hitungan detik.

hybrid_gateway_aws_route_table_update_total

Penghitung

Total operasi pembaruan tabel AWS rute yang berhasil.

hybrid_gateway_aws_route_table_update_errors_total

Penghitung

Total operasi pembaruan tabel AWS rute yang gagal.

hybrid_gateway_aws_route_table_update_duration_seconds

Histogram

Durasi operasi pembaruan tabel AWS rute dalam hitungan detik.

Statistik jaringan (dikumpulkan sesuai permintaan per gesekan):

Metrik Tipe Deskripsi

hybrid_gateway_vxlan_rx_bytes_total

Pengukur

Total byte yang diterima pada antarmuka VXLAN.

hybrid_gateway_vxlan_tx_bytes_total

Pengukur

Total byte yang ditransmisikan pada antarmuka VXLAN.

hybrid_gateway_vxlan_rx_packets_total

Pengukur

Total paket yang diterima pada antarmuka VXLAN.

hybrid_gateway_vxlan_tx_packets_total

Pengukur

Total paket yang ditransmisikan pada antarmuka VXLAN.

hybrid_gateway_vxlan_rx_dropped_total

Pengukur

Total paket yang dijatuhkan saat diterima oleh antarmuka VXLAN.

hybrid_gateway_vxlan_tx_dropped_total

Pengukur

Total paket yang dijatuhkan saat dikirim oleh antarmuka VXLAN.

hybrid_gateway_vxlan_rx_errors_total

Pengukur

Total menerima kesalahan pada antarmuka VXLAN.

hybrid_gateway_vxlan_tx_errors_total

Pengukur

Total kesalahan transmisi pada antarmuka VXLAN.

hybrid_gateway_vxlan_interface_up

Pengukur

1 jika antarmuka VXLAN UP, 0 sebaliknya.

hybrid_gateway_vxlan_fdb_entries

Pengukur

Jumlah entri FDB saat ini pada antarmuka VXLAN.

hybrid_gateway_vxlan_route_count

Pengukur

Jumlah rute saat ini melalui antarmuka VXLAN.

hybrid_gateway_primary_nic_rx_bytes_total

Pengukur

Total byte yang diterima pada antarmuka jaringan utama.

hybrid_gateway_primary_nic_tx_bytes_total

Pengukur

Total byte yang ditransmisikan pada antarmuka jaringan utama.

hybrid_gateway_primary_nic_rx_packets_total

Pengukur

Total paket yang diterima pada antarmuka jaringan utama.

hybrid_gateway_primary_nic_tx_packets_total

Pengukur

Total paket yang ditransmisikan pada antarmuka jaringan utama.

hybrid_gateway_primary_nic_rx_dropped_total

Pengukur

Total paket yang dijatuhkan saat diterima oleh NIC utama.

hybrid_gateway_primary_nic_tx_dropped_total

Pengukur

Total paket yang dijatuhkan saat dikirim oleh NIC utama.

hybrid_gateway_primary_nic_rx_errors_total

Pengukur

Total menerima kesalahan pada NIC utama.

hybrid_gateway_primary_nic_tx_errors_total

Pengukur

Total kesalahan transmisi pada NIC utama.

hybrid_gateway_primary_nic_info

Pengukur

Nama NIC utama. Selalu 1. Label:interface_name.

CloudWatch Pengaya observabilitas

Anda dapat menggunakan add-on Amazon CloudWatch Observability untuk mengumpulkan metrik dan log gateway. Konfigurasikan add-on untuk mengikis namespace gateway () eks-hybrid-nodes-gateway pada port. 10080 Untuk format konfigurasi yang benar, lihat dokumentasi add-on yang ditautkan di atas.

Pertimbangan penskalaan

Gateway Hybrid Nodes menggunakan model siaga aktif dengan pemilihan pemimpin, jadi hanya satu pod yang menangani lalu lintas pada waktu tertentu. Penskalaan gateway secara horizontal (dengan meningkatkan jumlah replika) dapat meningkatkan ketersediaan dengan menyediakan pod siaga tambahan yang siap untuk mengambil alih selama failover, tetapi tidak meningkatkan kinerja atau throughput karena lalu lintas tidak didistribusikan di seluruh replika. Untuk menskalakan kinerja, skalakan secara vertikal dengan memilih jenis instans EC2 dengan bandwidth jaringan yang cukup untuk volume lalu lintas Anda.

Panduan jenis instans

Throughput gateway dibatasi oleh kinerja jaringan instans EC2. Pertimbangkan hal berikut saat memilih jenis instance:

  • Bandwidth jaringan — Gateway meneruskan semua lalu lintas antara VPC dan pod hybrid. Pilih jenis instans yang bandwidth jaringannya memenuhi persyaratan lalu lintas puncak Anda.

  • Paket per detik (PPS) - Enkapsulasi VXLAN menambahkan overhead per paket. Beban kerja dengan banyak paket kecil (misalnya, layanan mikro dengan tingkat permintaan tinggi) mendapat manfaat dari jenis instance dengan batas PPS yang lebih tinggi.

  • Jumlah node hybrid - Setiap node hybrid menambahkan titik akhir terowongan VXLAN yang diteruskan oleh gateway. Karena jumlah skala node hibrida, lalu lintas agregat melalui gateway tumbuh. Pilih jenis instans dengan bandwidth jaringan yang cukup untuk menangani lalu lintas lintas jaringan puncak untuk klaster Anda.

Jenis instans yang direkomendasikan

Produksi (10—100 node hibrida, lalu lintas sedang)

Cocokkan untuk beban kerja produksi standar dengan lalu lintas lintas jaringan yang stabil.

Tipe instans vCPUs Memori Jaringan Catatan

c6i.xlarge

4

8 GiB

Hingga 12,5 Gbps

Keseimbangan biaya dan kinerja yang baik

c6in.xlarge

4

8 GiB

Hingga 30 Gbps

Network-optimized; direkomendasikan untuk produksi

c7i.xlarge

4

8 GiB

Hingga 12,5 Gbps

Generasi terbaru yang dioptimalkan untuk komputasi

m6i.xlarge

4

16 GiB

Hingga 12,5 Gbps

Cocokkan jika bersama-sama menemukan beban kerja lain pada node gateway

High-throughput produksi (100+ node hibrida, lalu lintas padat)

Untuk lingkungan dengan persyaratan bandwidth lintas-jaringan yang signifikan, seperti beban kerja intensif data atau banyak koneksi bersamaan.

Tipe instans vCPUs Memori Jaringan Catatan

c6in.2xlarge

8

16 GiB

Hingga 40 Gbps

Direkomendasikan untuk produksi throughput tinggi

c5n.2xlarge

8

21 GiB

Hingga 25 Gbps

Previous-generation dioptimalkan jaringan, hemat biaya

c6in.4xlarge

16

32 GiB

Hingga 50 Gbps

Throughput maksimum untuk beban kerja yang sangat berat

c5n.4xlarge

16

42 GiB

Hingga 25 Gbps

Jumlah vCPU tinggi untuk laju paket ekstrim

Pantau pemanfaatan jaringan menggunakan metrik gateway (lihatTitik akhir metrik) dan sesuaikan jenis instans sesuai kebutuhan.

Siklus hidup terowongan VXLAN

Gateway secara otomatis memelihara terowongan VXLAN ke node hybrid saat mereka bergabung atau meninggalkan cluster.

Bagaimana terowongan dikelola

Pengontrol simpul mengawasi CiliumNode objek di cluster. Pengontrol berjalan di setiap pod gateway (bukan hanya pemimpin) sehingga pemimpin dan siaga memiliki status terowongan terbaru. Ketika suatu CiliumNode peristiwa terjadi, controller memeriksa apakah node adalah node hybrid dengan mencari eks.amazonaws.com/compute-type: hybrid label.

Saat node hibrida bergabung dengan cluster:

  1. Controller mendeteksi CiliumNode objek baru.

  2. Ini mengekstrak alamat IP internal node dan pod CIDR dari CiliumNode spesifikasi.

  3. Ini memprogram yang berikut pada antarmuka VXLAN:

    • Rute untuk pod CIDR node melalui IP node melalui antarmuka VXLAN.

    • Entri ARP statis yang memetakan IP node ke alamat MAC deterministik.

    • Entri FDB yang memberi tahu modul VXLAN untuk mengirim paket yang dienkapsulasi ke IP node.

Ketika node hibrida meninggalkan cluster:

  1. Pengontrol mendeteksi CiliumNode penghapusan.

  2. Ini menghapus rute, entri ARP, dan entri FDB untuk node itu dari antarmuka VXLAN.

Siklus hidup ini sepenuhnya otomatis. Anda tidak perlu mengkonfigurasi terowongan secara manual saat menambahkan atau menghapus node hibrida.

Langkah selanjutnya