View a markdown version of this page

Support Node Repair Configuration untuk EKS Managed Nodegroups - Panduan Pengguna Eksctl

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

Support Node Repair Configuration untuk EKS Managed Nodegroups

EKS Managed Nodegroups mendukung Node Repair, di mana kesehatan node terkelola dipantau, dan node pekerja yang tidak sehat diganti atau di-boot ulang sebagai tanggapan. eksctl sekarang menyediakan opsi konfigurasi komprehensif untuk kontrol halus atas perilaku perbaikan node.

Konfigurasi Perbaikan Node Dasar

Menggunakan bendera CLI

Untuk membuat cluster dengan nodegroup terkelola menggunakan perbaikan simpul dasar, berikan tanda: --enable-node-repair

eksctl create cluster --enable-node-repair

Untuk membuat nodegroup terkelola dengan perbaikan node pada cluster yang ada:

eksctl create nodegroup --cluster=<clusterName> --enable-node-repair

Menggunakan file konfigurasi

# basic-node-repair.yaml apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: basic-node-repair-cluster region: us-west-2 managedNodeGroups: - name: ng-1 nodeRepairConfig: enabled: true
eksctl create cluster -f basic-node-repair.yaml

Konfigurasi Perbaikan Node yang Ditingkatkan

Konfigurasi Ambang

Anda dapat mengonfigurasi kapan tindakan perbaikan node akan berhenti menggunakan ambang batas berbasis persentase atau hitungan. Catatan: Anda tidak dapat menggunakan ambang batas persentase dan hitungan secara bersamaan.

Bendera CLI untuk ambang batas

# Percentage-based threshold - repair stops when 20% of nodes are unhealthy eksctl create cluster --enable-node-repair \ --node-repair-max-unhealthy-percentage=20 # Count-based threshold - repair stops when 5 nodes are unhealthy eksctl create cluster --enable-node-repair \ --node-repair-max-unhealthy-count=5

File konfigurasi untuk ambang batas

managedNodeGroups: - name: threshold-ng nodeRepairConfig: enabled: true # Stop repair actions when 20% of nodes are unhealthy maxUnhealthyNodeThresholdPercentage: 20 # Alternative: stop repair actions when 3 nodes are unhealthy # maxUnhealthyNodeThresholdCount: 3 # Note: Cannot use both percentage and count thresholds simultaneously

Batas Perbaikan Paralel

Kontrol jumlah maksimum node yang dapat diperbaiki secara bersamaan atau paralel. Ini memberi Anda kontrol yang lebih halus atas kecepatan penggantian node. Catatan: Anda tidak dapat menggunakan batas persentase dan hitungan secara bersamaan.

Bendera CLI untuk batas paralel

# Percentage-based parallel limits - repair at most 15% of unhealthy nodes in parallel eksctl create cluster --enable-node-repair \ --node-repair-max-parallel-percentage=15 # Count-based parallel limits - repair at most 2 unhealthy nodes in parallel eksctl create cluster --enable-node-repair \ --node-repair-max-parallel-count=2

File konfigurasi untuk batas paralel

managedNodeGroups: - name: parallel-ng nodeRepairConfig: enabled: true # Repair at most 15% of unhealthy nodes in parallel maxParallelNodesRepairedPercentage: 15 # Alternative: repair at most 2 unhealthy nodes in parallel # maxParallelNodesRepairedCount: 2 # Note: Cannot use both percentage and count limits simultaneously

Penggantian Perbaikan Kustom

Tentukan penggantian granular untuk tindakan perbaikan tertentu. Penggantian ini mengontrol tindakan perbaikan dan waktu tunda perbaikan sebelum node dianggap memenuhi syarat untuk diperbaiki. Jika Anda menggunakan ini, Anda harus menentukan semua nilai untuk setiap penggantian.

managedNodeGroups: - name: custom-repair-ng instanceType: g4dn.xlarge # GPU instances nodeRepairConfig: enabled: true maxUnhealthyNodeThresholdPercentage: 25 maxParallelNodesRepairedCount: 1 nodeRepairConfigOverrides: # Handle GPU-related failures with immediate termination - nodeMonitoringCondition: "AcceleratedInstanceNotReady" nodeUnhealthyReason: "NvidiaXID13Error" minRepairWaitTimeMins: 10 repairAction: "Terminate" # Handle network issues with restart after waiting - nodeMonitoringCondition: "NetworkNotReady" nodeUnhealthyReason: "InterfaceNotUp" minRepairWaitTimeMins: 20 repairAction: "Restart"

Contoh Konfigurasi Lengkap

Untuk contoh komprehensif dengan semua opsi konfigurasi, lihat examples/44-node-repair.yaml.

Contoh 1: Perbaikan dasar dengan ambang persentase

apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: basic-repair-cluster region: us-west-2 managedNodeGroups: - name: basic-ng instanceType: m5.large desiredCapacity: 3 nodeRepairConfig: enabled: true maxUnhealthyNodeThresholdPercentage: 20 maxParallelNodesRepairedPercentage: 15

Contoh 2: Perbaikan konservatif untuk beban kerja kritis

apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: critical-workload-cluster region: us-west-2 managedNodeGroups: - name: critical-ng instanceType: c5.2xlarge desiredCapacity: 6 nodeRepairConfig: enabled: true # Very conservative settings maxUnhealthyNodeThresholdPercentage: 10 maxParallelNodesRepairedCount: 1 nodeRepairConfigOverrides: # Wait longer before taking action on critical workloads - nodeMonitoringCondition: "NetworkNotReady" nodeUnhealthyReason: "InterfaceNotUp" minRepairWaitTimeMins: 45 repairAction: "Restart"

Contoh 3: Beban kerja GPU dengan perbaikan khusus

apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: gpu-workload-cluster region: us-west-2 managedNodeGroups: - name: gpu-ng instanceType: g4dn.xlarge desiredCapacity: 4 nodeRepairConfig: enabled: true maxUnhealthyNodeThresholdPercentage: 25 maxParallelNodesRepairedCount: 1 nodeRepairConfigOverrides: # GPU failures require immediate termination - nodeMonitoringCondition: "AcceleratedInstanceNotReady" nodeUnhealthyReason: "NvidiaXID13Error" minRepairWaitTimeMins: 5 repairAction: "Terminate"

Referensi CLI

Bendera Perbaikan Node

Bendera Deskripsi Contoh

--enable-node-repair

Aktifkan perbaikan node otomatis

--enable-node-repair

--node-repair-max-unhealthy-percentage

Persentase maksimum node yang tidak sehat sebelum diperbaiki

--node-repair-max-unhealthy-percentage=20

--node-repair-max-unhealthy-count

Jumlah maksimum node yang tidak sehat sebelum diperbaiki

--node-repair-max-unhealthy-count=5

--node-repair-max-parallel-percentage

Persentase maksimum node untuk diperbaiki secara paralel

--node-repair-max-parallel-percentage=15

--node-repair-max-parallel-count

Jumlah maksimum node untuk diperbaiki secara paralel

--node-repair-max-parallel-count=2

Catatan: Penggantian konfigurasi perbaikan node hanya didukung melalui file konfigurasi YAMB karena kompleksitasnya.

Referensi Konfigurasi

nodeRepairConfig

Bidang Tipe Deskripsi Batasan Contoh

enabled

boolean

Aktifkan/nonaktifkan perbaikan node

-

true

maxUnhealthyNodeThresholdPercentage

integer

Ambang persentase node yang tidak sehat, di atasnya tindakan perbaikan otomatis node akan berhenti

Tidak dapat digunakan dengan maxUnhealthyNodeThresholdCount

20

maxUnhealthyNodeThresholdCount

integer

Hitung ambang node yang tidak sehat, di atasnya tindakan perbaikan otomatis node akan berhenti

Tidak dapat digunakan dengan maxUnhealthyNodeThresholdPercentage

5

maxParallelNodesRepairedPercentage

integer

Persentase maksimum node tidak sehat yang dapat diperbaiki secara bersamaan atau paralel

Tidak dapat digunakan dengan maxParallelNodesRepairedCount

15

maxParallelNodesRepairedCount

integer

Jumlah maksimum node tidak sehat yang dapat diperbaiki secara bersamaan atau paralel

Tidak dapat digunakan dengan maxParallelNodesRepairedPercentage

2

nodeRepairConfigOverrides

array

Penggantian granular untuk tindakan perbaikan spesifik yang mengendalikan tindakan perbaikan dan waktu tunda

Semua nilai harus ditentukan untuk setiap penggantian

Lihat contoh di atas

nodeRepairConfigMengesampingkan

Bidang Tipe Deskripsi Nilai Valid

nodeMonitoringCondition

string

Kondisi tidak sehat yang dilaporkan oleh agen pemantau simpul yang berlaku untuk penggantian ini

"AcceleratedInstanceNotReady", "NetworkNotReady"

nodeUnhealthyReason

string

Alasan yang dilaporkan oleh agen pemantau simpul bahwa penggantian ini berlaku

"NvidiaXID13Error", "InterfaceNotUp"

minRepairWaitTimeMins

integer

Waktu minimum dalam hitungan menit untuk menunggu sebelum mencoba memperbaiki node dengan kondisi dan alasan yang ditentukan

Setiap bilangan bulat positif

repairAction

string

Tindakan perbaikan yang harus diambil untuk node ketika semua kondisi yang ditentukan terpenuhi

"Terminate", "Restart", "NoAction"

Informasi lebih lanjut