サービスメッシュ(ASM)インスタンスに追加されたコンテナサービス Kubernetes 版(ACK)クラスタにイングレスゲートウェイをデプロイした後、ACK クラスタにアプリケーションをデプロイできます。このトピックでは、ASM インスタンスに追加された ACK クラスタに Bookinfo アプリケーションをデプロイする方法について説明します。
前提条件
ASM インスタンスが作成され、ACK クラスタがインスタンスに追加されています。詳細については、「ASM インスタンスの作成」および「ASM インスタンスへのクラスタの追加」をご参照ください。
kubectl クライアントは、ASM インスタンスに追加された ACK クラスタに接続されています。詳細については、「クラスタの kubeconfig ファイルを取得し、kubectl を使用してクラスタに接続する」をご参照ください。
イングレスゲートウェイが ACK クラスタにデプロイされています。これにより、ACK クラスタにアプリケーションをデプロイした後、アプリケーションは ASM インスタンスの外部に公開されます。詳細については、「イングレスゲートウェイの作成」をご参照ください。
アプリケーションの説明
この例では、Bookinfo という名前の書籍レビューアプリケーションを使用します。次の図は、アプリケーションのマイクロサービスモデルを示しています。
Bookinfo アプリケーションは、次のマイクロサービスで構成されています。
Productpage:Details および Reviews マイクロサービスを呼び出してページを生成します。
Details:書籍に関する情報が含まれています。
Reviews:書籍のレビューが含まれており、Ratings マイクロサービスを呼び出す場合があります。
Ratings:書籍のレビューに基づいて生成された書籍の評価が含まれています。
Reviews マイクロサービスには、次のバージョンがあります。
バージョン 1 は、Ratings マイクロサービスを呼び出しません。
バージョン 2 は、Ratings マイクロサービスを呼び出し、1 ~ 5 個の黒い星で書籍を評価します。
バージョン 3 は、Ratings マイクロサービスを呼び出し、1 ~ 5 個の赤い星で書籍を評価します。
手順
デフォルトの名前空間に対して、自動サイドカープロキシインジェクションを有効にします。詳細については、「自動サイドカープロキシインジェクションの有効化」をご参照ください。
Github の Istio リポジトリから Bookinfo アプリケーションの YAML ファイルをダウンロードします。
kubectl クライアントで次のコマンドを実行して、ASM インスタンスに追加された ACK クラスタに Bookinfo アプリケーションをデプロイします。
kubectl apply -f bookinfo.yamlBookinfo アプリケーションのデプロイメント情報を表示するには、次の手順を実行します。
ACK コンソールにログインします。左側のナビゲーションペインで、[クラスタ] をクリックします。
[クラスタ] ページで、管理するクラスタを見つけ、その名前をクリックします。左側のペインで、 を選択します。
[pod] ページの上部にある [名前空間] ドロップダウンリストから [default] を選択します。
説明Bookinfo アプリケーションの Pod の [アクション] 列にある [詳細の表示] をクリックします。
関連操作
サービスアクセスを制御するために、イングレスゲートウェイの Istio ゲートウェイと仮想サービスを作成できます。さらに、指定された比率に基づいてトラフィックをサービスの異なるバージョンにルーティングするデスティネーションルールを作成できます。詳細については、「Istio リソースを使用してトラフィックをサービスの異なるバージョンにルーティングする」をご参照ください。