Los clústeres de flujo de trabajo se basan en el proyecto de código abierto Argo Workflow y admiten canalizaciones de CI/CD, procesamiento de datos, aprendizaje automático y cargas de trabajo de simulación. Este tema explica cómo crear y enviar un Argo Workflow mediante la CLI de Argo o la interfaz de usuario de Argo.
Requisitos previos
Ya se creó un Argo workflow cluster.
ServiceAccount del flujo de trabajo
Un flujo de trabajo puede usar una ServiceAccount específica para acceder a otros recursos de Kubernetes durante su ejecución. El clúster de flujo de trabajo vincula automáticamente los permisos necesarios a cualquier ServiceAccount personalizada que cree.
Procedimiento
Puede crear un flujo de trabajo con la CLI de Argo o la interfaz de usuario de Argo.
CLI de Argo
Paso 1: Instalar la CLI de Argo
La CLI de Argo de Alibaba Cloud es totalmente compatible con la versión de código abierto y añade capacidades de métricas y registros, como el consumo de CPU y memoria, el costo de ejecución y los registros de Pods eliminados.
-
Descargue la CLI de Argo de Alibaba Cloud.
Estos pasos corresponden a Linux. Para macOS, descargue la CLI de Argo desde https://ack-one.oss-cn-hangzhou.aliyuncs.com/cli/v3.4.12/argo-cli-aliyun-darwin .
wget https://ack-one.oss-cn-hangzhou.aliyuncs.com/cli/v3.4.12/argo-cli-aliyun-linux -
Convierta argo-cli-aliyun-linux en un archivo ejecutable.
chmod +x argo-cli-aliyun-linux -
Mueva el ejecutable a un directorio dentro de su PATH, por ejemplo
/usr/local/bin/.mv argo-cli-aliyun-linux /usr/local/bin/argo
Paso 2: Crear un flujo de trabajo
-
Cree un archivo llamado helloworld-workflow.yaml con el siguiente contenido.
apiVersion: argoproj.io/v1alpha1 kind: Workflow metadata: generateName: helloworld-- # Workflow name prefix spec: entrypoint: helloworld # Specifies the entrypoint workflow template templates: - name: helloworld container: image: mirrors-ssl.aliyuncs.com/busybox:latest command: - sh - -c args: - echo "Hello, world!"; sleep 60; -
Envíe el flujo de trabajo.
argo submit helloworld-workflow.yaml -
Compruebe el estado del flujo de trabajo.
-
Liste los flujos de trabajo.
argo listSalida esperada:
NAME STATUS AGE DURATION PRIORITY helloworld-lgdpp Succeeded 2m 37s 0 -
Obtenga los detalles del flujo de trabajo.
argo get helloworld-lgdppSalida esperada:
Name: hello-world-lgdpp Namespace: default ServiceAccount: unset (will run with the default ServiceAccount) Status: Succeeded Conditions: PodRunning False Completed True .... Duration: 1 minute 46 seconds Progress: 1/1 ResourcesDuration: 17s*(1 cpu),17s*(100Mi memory) STEP TEMPLATE PODNAME DURATION MESSAGE ✔ hello-world-lgdpp helloworld hello-world-lgdpp 1m
-
Interfaz de usuario de Argo
Inicie sesión en la consola de clústeres de flujo de trabajo de Argo y haga clic en el nombre del clúster de destino.
En la página Cluster information, haga clic en la pestaña Basic information y luego haga clic en Workflow console (Argo) para abrir la interfaz de usuario de Argo.
-
En el panel de navegación izquierdo, haga clic en workflow template. Introduzca default en el campo namespace para ver las plantillas predefinidas.
Las plantillas predefinidas son dag-diamond, loops y steps.
Seleccione una plantilla de flujo de trabajo y haga clic en SUBMIT para ejecutar el flujo de trabajo.