-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Argo Workflow 検証 #34
Labels
Comments
検討すべきワークロード
CI
|
|
Closed
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Getting Started
https://argoproj.github.io/docs/argo/demo.html
ローカルでサンプルを動かす。
kind だと動かない
k8s クラスタが必要だが、 kind だと動かないので minikube を使う。
kubernetes-sigs/kind#1002 (comment)
kind だと dockerd を起動していないので、 docker socket をマウントできない。
Argo 自体は起動するのだが、 workflow を submit したところ、起動に失敗していた。
workflow の起動に失敗した場合、
$ kubectl describe pod
で原因が分かったりする。Minikube のインストール
https://minikube.sigs.k8s.io/docs/start/macos/
Mac で Docker 使ってたら hyperkit はあるはず。
Hyperkit については https://www.publickey1.jp/blog/16/docker_hyperkit.html
Argo Install
サンプルがそのままだと動かない場合は manifest をダウンロードして修正して apply
自分の場合、 manifest の API バージョンが k8s cluster がサポートしていなかった。
"apps/v1beta2" を
apps/v1
に修正した。kubernetes/kubernetes#55894 (comment)
サービスアカウントに権限を付与する
Argo UI をブラウザで見れるようにする
サンプルを実行する。
--watch
をつけるとターミナルに延々と出力されて鬱陶しいのでつけない。Argo UI で結果が確認できる。
Argo UI には認証がない。また、UIは read only といった感じで workflow のキャンセルや再実行ということは出来なそう。 Argo CLI を使えばキャンセルはできる。
Install an Artifact Repository
ファイルを共有するには Artifact を外部ストレージに保存する必要がある。
S3 などに対応しているが、サンプルでは MinIO を使っている。
Helm でインストールする
Helm のインストール
MinIO のインストール
https://github.com/helm/charts/tree/master/stable/minio
Chart repository の追加
https://helm.sh/docs/intro/quickstart/
helm install コマンドも修正が必要だった。
--name
がなくなり、 name が必須の引数になったらしい。https://stackoverflow.com/questions/57961162/helm-install-unknown-flag-name
Reconfigure the workflow controller to use the Minio artifact repository
Argo の Workflow Controller が MinIO を使えるように設定を kubectl edit で変更する。
ここも公式ドキュメントの修正が必要だった。
secret 名や service 名が
argo-artifacts
ではなくargo-artifacts-minio
だった。スクリーンショット
実行履歴
Workflow の manifest も確認できる
Workflow のログ
The text was updated successfully, but these errors were encountered: