Container Service for Kubernetes(ACK)エッジクラスターを Service Mesh(ASM)に追加して、複数のアプリケーションを効率的かつ一元的に管理および監視できます。 ASM のトラフィック管理機能と可観測性管理機能を使用して、エッジコンピューティング環境の高信頼性とセキュリティを保証できます。 これにより、O&M 効率の向上、サービスの安定性の保証、サービスの可観測性の向上が実現します。
前提条件
ACK エッジクラスターが作成されていること。 詳細については、「ACK エッジクラスターの作成」をご参照ください。
ASM がアクティブ化されていること。 ASM をアクティブ化するには、ASM コンソール にアクセスします。
チケット を提出して、ACK エッジクラスターを ASM インスタンスに追加する権限を申請します。
手順
ASM インスタンスを作成します。
ASM コンソール にログインします。 左側のナビゲーションペインで、 を選択します。
[メッシュ管理] ページで、[ASM インスタンスの作成] をクリックします。
[service Mesh の作成] ページで、関連パラメーターを設定し、[サービス規約] を読んで同意し、[service Mesh の作成] をクリックします。
次の表に、いくつかのパラメーターについて説明します。 詳細については、「ASM インスタンスの作成」のトピックのパラメーターの説明をご参照ください。
パラメーター
説明
リージョン
ASM インスタンスを作成するリージョン。 ACK エッジクラスターが存在するリージョンに近いリージョンを選択することをお勧めします。
Istio バージョン
ASM インスタンスの Istio バージョン。 1.14 以降である必要があります。
VPC
ドロップダウンリストから、ACK エッジクラスターが存在する仮想プライベートクラウド(VPC)を選択します。 クラシックロードバランサー(CLB)インスタンスは、コントロールプレーンの Istio Pilot に関連付けられています。 データプレーンの VPC は、CLB インスタンスが存在する VPC に接続されている必要があります。 詳細については、「Cloud Enterprise Network」をご参照ください。
vSwitch
ドロップダウンリストから vSwitch を選択します。 [vswitch の作成] をクリックして vSwitch を作成することもできます。 詳細については、「vSwitch の作成と管理」をご参照ください。
API サーバーアクセス
ASM インスタンスは Kubernetes ランタイムで実行されます。 API サーバーを使用して、仮想サービス、宛先ルール、Istio ゲートウェイなど、さまざまなメッシュリソースを定義できます。 ドロップダウンリストから API サーバーの CLB インスタンス仕様を選択し、[EIP を使用して API サーバーを公開する] をオンまたはオフにできます。 選択した仕様を使用して、内部向け CLB インスタンスが作成されます。
[EIP を使用して API サーバーを公開する] をオンにすると、Elastic IP アドレス(EIP)が作成され、内部向け CLB インスタンスに関連付けられます。 API サーバーのポート 6443 が公開されます。 クラスターの kubeconfig ファイルを使用して、インターネット経由でクラスターに接続して管理し、メッシュリソースを定義できます。
[EIP を使用して API サーバーを公開する] をオフにすると、EIP は作成されません。 クラスターの kubeconfig ファイルを使用して、クラスターが存在する VPC 経由でのみクラスターに接続して管理し、メッシュリソースを定義できます。
説明ASM インスタンスの作成には 2 ~ 3 分かかります。
ACK エッジクラスターを ASM インスタンスに追加します。
[メッシュ管理] ページで、設定する ASM インスタンスを見つけます。 ASM インスタンスの名前をクリックするか、管理[アクション] 列の をクリックします。
ASM インスタンスの詳細ページで、左側のナビゲーションペインの を選択します。 表示されるページで、[追加] をクリックします。
[kubernetes クラスターの追加] ページで、[ASM インスタンスと同じ VPC にある Kubernetes クラスターを除外する] を選択し、追加する ACK エッジクラスターを選択して、[OK] をクリックします。
説明クラスターを ASM インスタンスに追加する操作を実行すると、ASM インスタンスのステータスが [更新中] に変わります。 数秒待って、右上隅にある
アイコンをクリックします。 クラスターが ASM インスタンスに追加されると、ASM インスタンスのステータスは [実行中] になります。 待機時間は、追加される ACK エッジクラスターのネットワーク状態によって異なります。 追加されたクラスターに関する情報は、[kubernetes クラスター] ページで確認できます。
ASMイングレスゲートウェイを作成します。
ASM インスタンスの詳細ページで、左側のナビゲーションペインの を選択します。
[イングレスゲートウェイ] ページで、[作成] をクリックし、必要に応じてパラメーターを設定して、[作成] をクリックします。
次の表に、いくつかのパラメーターについて説明します。 構成項目の詳細については、「イングレスゲートウェイの作成」のトピックのパラメーターの説明をご参照ください。
パラメーター
説明
クラスター
ドロップダウンリストから、イングレスゲートウェイをデプロイする ACK エッジクラスターを選択します。
CLB インスタンスタイプ
[インターネットアクセス] または [プライベートアクセス] を選択します。 [CLB インスタンスの作成] または [既存の CLB インスタンスの使用] を選択します。
ポートマッピング
サービスが公開する必要のあるポートを指定します。 このセクションで指定するポートは、サービス YAML ファイルの port フィールドに対応しています。 サービスの YAML ファイルでポートマッピングを定義する場合は、targetPort フィールドを各マッピングの port フィールドと同じ値に設定することをお勧めします。
ASM は、Istio で一般的に使用される 2 つのデフォルトポートを提供します。 デフォルトポートを保持または削除し、必要に応じて新しいポートを追加できます。
イングレスゲートウェイが作成されたら、ACK エッジクラスターにログインして詳細を表示できます。
ACK エッジクラスターにアプリケーションをデプロイします。
自動サイドカープロキシインジェクションを有効にします。 詳細については、「グローバル名前空間の管理」および「サイドカープロキシインジェクションポリシーの設定」をご参照ください。
kubectl クライアントでコマンドを実行するか、ACK コンソールを使用して、ACK エッジクラスターにアプリケーションをデプロイします。 詳細については、「ASM インスタンスに追加された ACK クラスターへのアプリケーションのデプロイ」をご参照ください。
(オプション) Istio リソースを定義します。 詳細については、「Istio リソースを使用してサービスの異なるバージョンにトラフィックをルーティングする」をご参照ください。
関連情報
Kubernetes クラスターに ASM イングレスゲートウェイをデプロイして、インターネットまたは内部ネットワーク経由でアプリケーションにアクセスするための一元的なエントリポイントとして機能させることができます。 詳細については、「イングレスゲートウェイの作成」をご参照ください。
ASM を使用すると、指定された比率に基づいて、サービスの異なるバージョンにトラフィックをルーティングできます。 この機能は、カナリアリリースや A/B テストなど、多くのシナリオに適用できます。 詳細については、「Istio リソースを使用してサービスの異なるバージョンにトラフィックをルーティングする」をご参照ください。
ASM のメッシュトポロジー機能を使用すると、アプリ、サービス、アプリケーションバージョン間の呼び出し関係とトラフィックフローを表示できます。 詳細については、「メッシュトポロジーを有効にして可観測性を向上させる」をご参照ください。