Baseados no projeto de código aberto Argo Workflow, os clusters de workflow oferecem suporte a pipelines de CI/CD, processamento de dados, machine learning e cargas de trabalho de simulação. Este tópico mostra como criar e enviar um workflow do Argo usando a CLI do Argo ou a UI do Argo em um cluster de workflow.
Pré-requisitos
Você já criou um cluster de workflow do Argo.
ServiceAccount do workflow
Um workflow pode usar uma ServiceAccount específica para acessar outros recursos do Kubernetes durante a execução. O cluster de workflow vincula automaticamente as permissões necessárias a qualquer ServiceAccount personalizada criada.
Procedimento
Crie um workflow usando a CLI do Argo ou a UI do Argo.
CLI do Argo
Etapa 1: Instale a CLI do Argo
A CLI do Argo da Alibaba Cloud é totalmente compatível com a versão de código aberto e adiciona recursos de métricas e logs, incluindo consumo de CPU e memória, custo de execução e logs de Pods excluídos.
-
Baixe a CLI do Argo da Alibaba Cloud.
Estas etapas aplicam-se ao Linux. Para macOS, baixe a CLI do Argo em 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 -
Torne o arquivo argo-cli-aliyun-linux executável.
chmod +x argo-cli-aliyun-linux -
Mova o executável para um diretório no seu PATH, como
/usr/local/bin/.mv argo-cli-aliyun-linux /usr/local/bin/argo
Etapa 2: Crie um workflow
-
Crie um arquivo chamado helloworld-workflow.yaml com o seguinte conteúdo.
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; -
Envie o workflow.
argo submit helloworld-workflow.yaml -
Verifique o status do workflow.
-
Liste os workflows.
argo listSaída esperada:
NAME STATUS AGE DURATION PRIORITY helloworld-lgdpp Succeeded 2m 37s 0 -
Obtenha os detalhes do workflow.
argo get helloworld-lgdppSaída 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
-
UI do Argo
Faça login no console de Clusters de Workflow do Argo e clique em nome do cluster de destino.
Na página Cluster information, clique em aba Basic information e, em seguida, clique em Workflow console (Argo) para abrir a UI do Argo.
-
No painel de navegação à esquerda, clique em workflow template. Insira default no campo namespace para visualizar os modelos predefinidos.
Os modelos predefinidos são dag-diamond, loops e steps.
Selecione um modelo de workflow e clique em SUBMIT para executar o workflow.