Anthos Service Mesh への Online Boutique のサンプル アプリケーションのデプロイ

このガイドでは、Anthos Service Mesh のデモのために、Online Bashup のサンプル アプリケーションをデプロイする方法について説明します。

前提事項

このガイドでは、次の準備ができていることを前提としています。

kpt を使用したサンプルのインストール

必要に応じて、kpt を使用して Online Boutique のサンプルをクラスタにインストールします。

  1. サンプルをダウンロードします。

    kpt pkg get \
      https://github.com/GoogleCloudPlatform/microservices-demo.git/release \
      hipster-demo
  2. アプリケーションの名前空間を作成します。

    kubectl create namespace demo
  3. 自動サイドカー インジェクションを有効にします。次のコマンドを使用して、istiod サービスのラベルを見つけます。このラベルには、後のステップで使用するリビジョン ラベルの値が含まれます。

    kubectl -n istio-system get pods -l app=istiod --show-labels

    出力は次のようになります。

    NAME                                READY   STATUS    RESTARTS   AGE   LABELS
    istiod-asm-173-3-5788d57586-bljj4   1/1     Running   0          23h   app=istiod,istio.io/rev=asm-173-3,istio=istiod,pod-template-hash=5788d57586
    istiod-asm-173-3-5788d57586-vsklm   1/1     Running   1          23h   app=istiod,istio.io/rev=asm-173-3,istio=istiod,pod-template-hash=5788d57586
    

    出力の LABELS 列で、接頭辞 istio.io/rev= に続く istiod リビジョン ラベルの値をメモします。この例での値は asm-173-3 です。

  4. リビジョン ラベルを名前空間に適用します。次のコマンドで、NAMESPACE はサイドカー インジェクションを実行する名前空間の名前、REVISION は前のステップでメモした istiod リビジョンラベルの値です。

    kubectl label namespace NAMESPACE istio-injection- istio.io/rev=REVISION --overwrite
    
  5. サンプルをクラスタにデプロイします。

    kubectl apply -n demo -f hipster-demo
  6. アプリケーションの外部 IP アドレスを検索します。

    kubectl get service frontend-external -n demo
  7. ブラウザでアプリケーションに移動して、インストールを確認します。

    http://EXTERNAL_IP/

    実行中のサンプルがあるため、Google Cloud コンソールで Anthos Service Mesh のオブザーバビリティ機能を確認できます。トポロジグラフがメッシュに表示されるまで、最長で 10 分かかることがあります。

確認が終わったら、Online Boutique のサンプルを削除します。

kubectl delete namespaces demo