大規模なマイクロサービスのトラフィック管理、特に Istio をサービスメッシュとして使用している場合または使用を計画している場合は、ASM ゲートウェイを使用して Knative Service のトラフィックをルーティングすることを推奨します。Service Mesh (ASM) は、コミュニティ版 Istio と互換性があり、マネージド型のコントロールプレーンを備えているため、サービスガバナンスを簡素化できます。これには、トラフィックルーティングとトラフィックスプリッティング、サービス間通信のセキュリティ確保、メッシュの可観測性の提供が含まれます。
前提条件
Service Mesh (ASM) インスタンス (バージョン 1.21.6.84 以降) を作成済みです。 詳細については、「ASM インスタンスの作成」をご参照ください。 インスタンスの ACK Kubernetes クラスター セクションで、ご使用のコンテナサービス (ACS) クラスターを追加し
ステップ 1:ASM をゲートウェイとして選択する
ACS コンソールにログインします。左側のナビゲーションペインで、クラスターリストをクリックします。
クラスターリスト ページで、対象のクラスターの名前をクリックします。左側のナビゲーションペインで、 を選択します。
-
Knative ページで、アドオン管理 タブをクリックし、次に Knative のデプロイ をクリックします。 ゲートウェイ セクションで、ASM を選択し、ワンクリックデプロイメント をクリックします。
デプロイが成功すると、Knative で ASM をサービスメッシュとして使用できるようになります。
ステップ 2:ASM ゲートウェイ経由でサービスにアクセスする
このセクションでは、サンプルの Knative Service を使用して、ASM でサービスをデプロイする方法を説明します。
ACS コンソールにログインします。左側のナビゲーションペインで、クラスターリストをクリックします。
クラスターリスト ページで、対象のクラスターの名前をクリックします。左側のナビゲーションペインで、 を選択します。
-
Knative ページで、サービス管理 タブをクリックし、名前空間 を default に設定し、テンプレートで作成 をクリックし、次の YAML の例をテンプレートに貼り付け、次に デプロイ をクリックして helloworld-go という名前の Service を作成します。
重要イメージが正しくアクセスおよび使用できるよう、以下のコード内の
{REGION-ID}をクラスターのリージョン ID (例:cn-beijing) に置き換えてください。apiVersion: serving.knative.dev/v1 kind: Service metadata: name: helloworld-go spec: template: spec: containers: - image: registry.{REGION-ID}.aliyuncs.com/knative-sample/helloworld-go:73fbdd56 # {REGION-ID} をクラスターのリージョン ID に置き換えます。 env: - name: TARGET value: "Knative" サービス管理 ページで、ゲートウェイ 列から helloworld-go サービスのゲートウェイアドレスを取得します。
-
次のコマンドを実行して、helloworld-go Service にアクセスします。
curl -H "Host: helloworld-go.default.example.com" http://39.XX.XX.XX # ゲートウェイ IP アドレスとドメイン名を実際の値に置き換えます。想定される出力:
Hello Knative!想定される出力が表示されれば、Service へのアクセスは成功です。
(任意) ステップ 3:サービスモニタリングデータの表示
Knative は組み込みの可観測性を提供します。[Knative] ページで モニタリングダッシュボード タブをクリックしてモニタリングデータを表示します。「Knative Service モニタリングダッシュボードの表示」をご参照ください。

関連ドキュメント
-
Knative Service のカスタムドメインを有効にします。「カスタムドメインの使用」をご参照ください。
-
Knative Service の HTTPS 証明書を設定します。「HTTPS 証明書の設定」をご参照ください。
-
Knative に gRPC サービスをデプロイして、ネットワーク効率を向上させます。「Knative での gRPC サービスのデプロイ」をご参照ください。
-
プローブを設定して、Knative Service のヘルス状態を監視します。「Knative でのポートプローブの設定」をご参照ください。