メインコンテンツまでスキップ

他のコンポーネント

この実習では、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についてもっと理解したい場合は、このワークショップで提供されているオプションモジュールをご覧ください。