Service Mesh (ASM) を使用すると、マイクロサービスモデルにおけるマイクロサービス管理を簡素化できます。このトピックは、ASM を使用してアプリケーションを管理する方法を説明するクイックスタートチュートリアルです。
手順
ステップ | 操作 | 説明 |
1 | ASM を使用するには、最初に ASM インスタンスを作成する必要があります。ASM を使用すると、アプリケーションに対してトラフィック管理、セキュリティ管理、障害復旧、オブザベーション、監視などの操作を実行できます。 | |
2 | ASM インスタンスへの Container Service for Kubernetes (ACK) クラスターの追加 | ASM インスタンスにデプロイされたアプリケーションはクラスター内で実行されます。そのため、最初に ACK クラスターを ASM インスタンスに追加する必要があります。 |
3 | Ingress ゲートウェイは、レイヤー 7 におけるインバウンドトラフィックのルーティング用の統一された入口を提供します。同一の TCP ベースのポートからの HTTP リクエストを、リクエスト内容に基づいて異なる Kubernetes Service にルーティングします。 | |
4 | ASM インスタンスに追加した ACK クラスターに Ingress ゲートウェイをデプロイした後、ACK クラスターにアプリケーションをデプロイできます。 | |
5 | ASM を使用すると、指定した比率に基づいてトラフィックをサービスの異なるバージョンにルーティングできます。この機能は、カナリアリリースや A/B テストなどのシナリオに適用されます。Istio リソースを使用して、トラフィックをサービスの異なるバージョンにルーティングできます。 | |
6 | メッシュトポロジーは、ASM インスタンス内のアプリケーションに可観測性を提供します。このツールは、サービスの動作を監視できるグラフィカルユーザーインターフェース (GUI) を提供します。メッシュトポロジーを使用して、トラフィックフローやワークロード間の通信を確認できます。 |
よくある質問
ASM インスタンスの kubeconfig ファイルを使用してアプリケーションをデプロイできないのはなぜですか?
ASM コンソールでは、ASM インスタンスに接続するための kubeconfig ファイルが提供されます。これにより、kubectl クライアントを使用して、Virtual Service などの Istio の Custom Resource Definition (CRD) を管理できます。ASM インスタンスのコントロールプレーンは Istio リソースの管理に使用されます。コントロールプレーンにはアプリケーションをデプロイできません。
ASM によって管理されるクラスターに、Virtual Service などの Istio の CRD をデプロイできないのはなぜですか?
Istio リソースはコントロールプレーンで管理されます。ASM コンソールでは、ASM インスタンスに接続するために使用する kubeconfig ファイルが提供されます。
クラスターの kubeconfig ファイルを使用して Istio リソースを管理できないのはなぜですか?
Istio の CRD はコントロールプレーンに保存されます。コントロールプレーンは、Istio CRD によって定義されたルールをサイドカー設定のルールに変換し、変換後のルールを適用します。
ASM インスタンスのコントロールプレーンの Namespace と、データプレーン上のクラスターの Namespace の違いは何ですか?
ASM コンソールまたは kubectl クライアントを使用して ASM インスタンスで作成する Namespace は、その ASM インスタンスのみに属します。これらの Namespace は、ASM インスタンスによって管理されるデータプレーン上の Kubernetes クラスターとは独立しています。ASM インスタンスの Namespace を作成または削除しても、ASM インスタンスによって管理されるデータプレーン上の Kubernetes クラスターの Namespace には影響しません。