Gunakan Alibaba Cloud CLI untuk memperbarui penetapan vSwitch, mode penjadwalan, pengaturan ConfigMap, dan kuota Elastic Container Instance (ECI) pada kluster alur kerja Anda.
Prasyarat
Sebelum memulai, pastikan Anda telah:
Menginstal Alibaba Cloud CLI versi 3.0.172 atau yang lebih baru serta mengonfigurasi kredensial. Lihat Install Alibaba Cloud CLI dan Configure credentials.
Prosesor JSON
jqtelah terinstal. Lihat jq Download.
Tentukan vSwitch untuk kluster alur kerja
Menetapkan beberapa vSwitch di zona berbeda memungkinkan kluster alur kerja membuat Elastic Container Instance di beberapa zona. Kluster mendistribusikan beban kerja di berbagai zona untuk load balancing. Jika instans tidak tersedia di satu zona, kluster secara otomatis mencoba zona lain.
Batasan:
Semua vSwitch harus berada dalam virtual private cloud (VPC) yang sama.
Anda dapat menentukan hingga 10 vSwitch.
Kueri vSwitch yang saat ini digunakan oleh kluster alur kerja:
aliyun adcp DescribeHubClusterDetails --ClusterId <cluster-id> | jq .Cluster.WorkflowConfig.WorkflowUnitsPerbarui daftar vSwitch. Sertakan vSwitch yang sudah ada beserta vSwitch baru:
PentingSelalu sertakan vSwitch asli dalam perintah. Mengabaikannya akan menghapus vSwitch tersebut dari kluster.
aliyun adcp UpdateHubClusterFeature --VSwitches "[\"vsw-xxx\",\"vsw-xxx\",\"vsw-xxx\"]" --ClusterId <cluster-id>
Tetapkan mode penjadwalan
Kluster alur kerja mendukung dua mode penjadwalan. Pilih berdasarkan kebutuhan biaya dan keandalan Anda.
| Mode | Deskripsi | Tipe instans | Paling cocok untuk |
|---|---|---|---|
| Inventory-prioritized | Mode default. Membuat Elastic Container Instance berbayar sesuai penggunaan (pay-as-you-go). | Pay-as-you-go | Beban kerja prediktabel yang memerlukan ketersediaan tinggi |
| Cost-prioritized | Membuat Elastic Container Instance preemptible dengan biaya lebih rendah. | Preemptible | Beban kerja batch yang toleran terhadap kegagalan dan sensitif terhadap biaya |
Mode Inventory-prioritized
aliyun adcp UpdateHubClusterFeature --WorkflowScheduleMode "stock-optimized" --ClusterId <cluster-id>Mode Cost-prioritized
Elastic Container Instance preemptible dapat ditarik kembali sebelum alur kerja selesai, yang berpotensi menyebabkan kegagalan alur kerja. Untuk meningkatkan tingkat keberhasilan pembuatan instans, tentukan beberapa tipe instans dan zona.
Tetapkan mode cost-prioritized dengan batas harga:
aliyun adcp UpdateHubClusterFeature --WorkflowScheduleMode "cost-optimized" --PriceLimit "0.10" --ClusterId <cluster-id>Tetapkan mode cost-prioritized tanpa batas harga (kluster menawar sesuai harga pasar saat ini):
aliyun adcp UpdateHubClusterFeature --WorkflowScheduleMode "cost-optimized" --PriceLimit "" --ClusterId <cluster-id>Jika instans preemptible habis stoknya dan tidak ada batas harga yang ditetapkan, kluster akan menggunakan instans pay-as-you-go sebagai fallback.
Parameter:
| Parameter | Wajib | Deskripsi |
|---|---|---|
WorkflowScheduleMode | Ya | Mode penjadwalan. Nilai yang valid: stock-optimized (inventory-prioritized), cost-optimized (cost-prioritized). |
PriceLimit | Tidak | Batas harga maksimum per jam per vCore. Satuan: USD/jam. Hanya berlaku ketika WorkflowScheduleMode bernilai cost-optimized. Biarkan kosong untuk menawar sesuai harga pasar saat ini. Contoh: "0.10". |
Cara kerja batas harga:
Batas berlaku per vCore dan per 4 GiB memori. Misalnya, dengan batas USD 0,10/jam:
| Sumber daya Pod | Perhitungan | Harga maksimum per jam |
|---|---|---|
| 2 vCore, 4 GiB | 0,10 × 2 + 0,10 × (4 / 4) | USD 0,30/jam |
| 4 vCore, 32 GiB | 0,10 × 4 + 0,10 × (32 / 4) | USD 1,20/jam |
Konfigurasi workflow-controller-configmap
ConfigMap workflow-controller-configmap memungkinkan Anda menyesuaikan perilaku Argo Workflow, termasuk:
Memindahkan status alur kerja besar dari etcd ke PostgreSQL atau MySQL
Mengarsipkan alur kerja yang telah selesai ke PostgreSQL atau MySQL
Menyesuaikan pengaturan pengumpulan sampah (garbage collection) pod
ConfigMap berada dalam namespace yang dinamai sesuai ID kluster.
Jangan hapus parameter berikut dari bagian
podMetadata. Menghapusnya akan merusak penjadwalan ECI untuk kluster alur kerja.
podMetadata:
labels:
workflow.xflow.aliyun: xflow
annotations:
k8s.aliyun.com/eci-auto-imc: "true"
k8s.aliyun.com/eci-fail-strategy: "fail-fast"Kelola kuota Elastic Container Instance
Secara default, setiap Akun Alibaba Cloud dapat menggunakan hingga 1.000 vCore untuk Elastic Container Instance.
Lihat kuota Anda: Buka halaman Privileges and Quotas di konsol Elastic Container Instance.
Ajukan peningkatan kuota: Kirim permohonan di konsol Quota Center. Untuk informasi batas kuota dan detailnya, lihat Limits on elastic container instances.