他のコンポーネント
この実習では、Kustomizeのパワーを活用してサンプルアプリケーションの残りの部分を効率的にデプロイします。次のkustomizationファイルは、他のkustomizationを参照して複数のコンポーネントを一緒にデプロイする方法を示しています:
~/environment/eks-workshop/base-application/kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- catalog
- carts
- checkout
- orders
- ui
- other
ヒント
カタログAPIがこのkustomizationに含まれていることに気付きましたか?既にデプロイしましたよね?
Kubernetesは宣言的なメカニズムを使用しているため、カタログAPIのマニフェストを再度適用しても、すべてのリソースが既に作成されているため、Kubernetesは何のアクションも取りません。
このkustomizationをクラスタに適用して、残りのコンポーネントをデプロイしましょう:
~$kubectl apply -k ~/environment/eks-workshop/base-application
これが完了したら、kubectl waitを使用して、進む前にすべてのコンポーネントが起動していることを確認できます:
~$kubectl wait --for=condition=Ready --timeout=180s pods \
-l app.kubernetes.io/created-by=eks-workshop -A
これで、各アプリケーションコンポーネント用の名前空間ができました:
~$kubectl get namespaces -l app.kubernetes.io/created-by=eks-workshop
NAME STATUS AGE
carts Active 62s
catalog Active 7m17s
checkout Active 62s
orders Active 62s
other Active 62s
ui Active 62s
また、コンポーネント用に作成されたすべてのDeploymentも確認できます:
~$kubectl get deployment -l app.kubernetes.io/created-by=eks-workshop -A
NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE
carts carts 1/1 1 1 90s
carts carts-dynamodb 1/1 1 1 90s
catalog catalog 1/1 1 1 7m46s
checkout checkout 1/1 1 1 90s
checkout checkout-redis 1/1 1 1 90s
orders orders 1/1 1 1 90s
orders orders-postgresql 1/1 1 1 90s
ui ui 1/1 1 1 90s
サンプルアプリケーションがデプロイされ、このワークショップの残りのラボで使用する基盤として準備が整いました!
ヒント
Kustomizeについてもっと理解したい場合は、このワークショップで提供されているオプションモジュールをご覧ください。