# ingress 가 없는 경우 k8s api 와 통신하는 프록시 서버 띄우기
kubectl proxy
# 프록시 서버로 접근
http://localhost:8001/api/v1/namespaces/{네임스페이스}/services/{서비스}/proxy
# 다음 명령으로 토큰값을 파악해서 입력한다.
echo -n "Bearer $(kubectl get secret argo-workflows -n argo-workflows -o=jsonpath='{.data.token}' | base64 --decode)" | pbcopy
#####
# argo cli 사용하기
# 로그인 설정
# SSO 로그인만 api 가 허용되는 경우가 있어 아래 kubect 으로 secret 토큰으로 권한없음이 나오면
# http://argo-workflow.ysoftman.test/userinfo 에서 복사해오면 토큰값도 있다.
export ARGO_SERVER='argo-workflow.ysoftman.test:80'
export ARGO_HTTP1=true
export ARGO_SECURE=false
export ARGO_BASE_HREF=""
export ARGO_TOKEN="Bearer $(kubectl get secret argo-workflows -n argo-workflows -o=jsonpath='{.data.token}' | base64 --decode)"
export ARGO_NAMESPACE="argo-workflows"
# argo_workflow_hello_world.yaml 작성
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: hello-world
spec:
entrypoint: whalesay
templates:
- name: whalesay
container:
image: docker/whalesay
command: [cowsay]
args: ["hello world"]
resources:
limits:
memory: 32Mi
cpu: 100m
# workflow 작업 수행(argo server 에서도 워크플로우가 생성된것을 확인할 수 있다.)
argo submit ./argo_workflow_hello_world.yaml
# workflow lis 로 workflow 이름 확인
argo list
# workflow log
argo logs hello-worldd9z5q --follow
# delete workflow
argo delete hello-worldd9z5q
comments:
댓글 쓰기