Argo Workflows adalah mesin alur kerja native Kubernetes yang mengoordinasikan tugas-tugas paralel menggunakan file YAML atau Python SDK, sehingga menyederhanakan otomatisasi dan pengelolaan aplikasi berbasis kontainer. Argo Workflows cocok untuk skenario yang memerlukan proses multi-langkah, tugas paralel, dan dependensi, seperti pemrosesan data, pipeline pembelajaran mesin, komputasi simulasi, dan Continuous Integration and Continuous Delivery (CICD) pipeline. Topik ini menggunakan aplikasi contoh untuk menunjukkan cara membuat alur kerja menggunakan Argo CLI.
Prasyarat
Komponen Argo Workflow dan Alibaba Cloud Argo CLI telah terpasang. Untuk informasi lebih lanjut, lihat Aktifkan orkestrasi tugas batch.
Prosedur
Gunakan template YAML berikut untuk membuat file bernama helloworld-workflow.yaml. File ini digunakan untuk mengirimkan tugas alur kerja contoh.
apiVersion: argoproj.io/v1alpha1 kind: Workflow # Mendefinisikan jenis sumber daya Kubernetes baru untuk Argo Workflows. metadata: generateName: hello-world- # Awalan untuk nama alur kerja. Kubernetes akan menambahkan akhiran unik. spec: entrypoint: main # Menentukan template yang akan dieksekusi pertama kali. templates: - name: main # Nama dari template. container: image: mirrors-ssl.aliyuncs.com/busybox:latest command: [ echo ] args: [ "hello world" ]Jalankan perintah berikut untuk mengirimkan alur kerja:
argo submit helloworld-workflow.yaml -n argoPeriksa status alur kerja.
Jalankan perintah berikut untuk mendapatkan daftar alur kerja:
argo list -n argoOutput yang diharapkan:
NAMA STATUS USIA DURASI PRIORITAS hello-world-XXXXX Berhasil 2m 37s 0Output ini menunjukkan bahwa alur kerja telah selesai.
Jalankan perintah berikut untuk memeriksa status alur kerja:
argo get hello-world-XXXXX -n argoOutput yang diharapkan:
Nama: hello-world-XXXXX Namespace: argo ServiceAccount: tidak disetel (akan berjalan dengan ServiceAccount default) Status: Berhasil Kondisi: PodRunning Salah Selesai Benar .... Durasi: 37 detik Kemajuan: 1/1 ResourcesDuration: 17s*(1 cpu),17s*(100Mi memory) LANGKAH TEMPLATE PODNAME DURASI PESAN ✔ hello-world-XXXXX whalesay hello-world-XXXXX 27sOutput ini juga mengonfirmasi bahwa alur kerja telah selesai.
Referensi
Sumber daya terkait alur kerja secara berkala dihapus. Untuk membuatnya persisten dalam database, lihat Persistensi alur kerja.