第4章 Istio アンビエントモード


Istio アンビエントモードは、サイドカーインジェクションなしで Red Hat OpenShift Service Mesh のアーキテクチャーを導入します。このモードは、操作を簡素化し、リソースの使用量を削減するように設計されています。アンビエントモードでは、各アプリケーション Pod にサイドカープロキシーを挿入する代わりに、Layer 4 (L4) 機能には共有ノードレベルプロキシーを使用し、Layer 7 (L7) 機能にはオプションの専用プロキシーを使用します。

重要

Istio アンビエントモードはテクノロジープレビューのみの機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

4.1. Istio アンビエントモードについて

Istio アンビエントモードアーキテクチャーを理解するには、次の定義を参照してください。

ZTunnel プロキシー
ノード上のすべてのワークロードに対してセキュアで透過的な Transmission Control Protocol (TCP) 接続を管理するノードごとのプロキシー。これは、Layer 4 (L4) で動作し、相互 Transport Layer Security (mTLS) と L4 ポリシーの適用をアプリケーション Pod からオフロードします。
waypoint プロキシー
サービスアカウントまたは namespace ごとに実行され、トラフィック管理、ポリシー適用、監視などの高度な Layer 7 (L7) 機能を提供するオプションのプロキシー。L7 機能を選択的に適用して、すべてのサービスに対するサイドカーのオーバーヘッドを回避できます。
Istio CNI プラグイン
各ノード上の Ztunnel プロキシーにトラフィックをリダイレクトし、アプリケーション Pod を変更することなく透過的なインターセプションを可能にします。

Istio アンビエントモードには次の利点があります。

  • サイドカーインジェクションを管理する必要性をなくす 簡素化された操作 により、メッシュの導入および操作の複雑さが軽減されます。
  • L4 サービスメッシュ機能を提供するノードごとの Ztunnel プロキシーと、Pod ごとのリソースオーバーヘッドを削減するオプションの waypoint プロキシーにより、リソース消費が削減されます
  • 段階的な導入 により、相互 Transport Layer Security (mTLS) などの L4 機能や、オプションの waypoint プロキシーが後で追加された基本ポリシーを使用して、ワークロードがメッシュに参加できるようになり、HTTP (L7) トラフィック管理などの L7 サービスメッシュ機能が使用できるようになります。

    注記

    L7 機能では waypoint プロキシーをデプロイする必要があり、これにより、一部のサービスに対して最小限の追加オーバーヘッドが発生します。

  • セキュリティーが強化 され、すべてのメッシュワークロードに対してデフォルトで mTLS を使用したセキュアなゼロトラストネットワーク基盤が提供されます。
注記

アンビエントモードは新しいアーキテクチャーであり、従来のサイドカーモデルとは異なる運用上の考慮事項が必要になる場合があります。

適切に定義されたディスカバリーセレクターを使用すると、サイドカーモードのメッシュと並行してアンビエントモードでデプロイされたサービスメッシュが可能になりますが、このシナリオは十分に検証されていません。潜在的な競合を回避するには、既存の Red Hat OpenShift Service Mesh インストールがないクラスターにのみ Istio アンビエントモードをインストールします。アンビエントモードは引き続きテクノロジープレビュー機能です。

重要

Istio アンビエントモードは、Red Hat OpenShift Service Mesh 2.6 以前を使用するクラスターとは互換性がありません。これらを一緒にインストールしたり使用したりしないでください。

4.1.1. Istio アンビエントモードのインストール

必要な Gateway API カスタムリソース定義 (CRD) を使用して、OpenShift Container Platform 4.19 以降および Red Hat OpenShift Service Mesh 3.1.0 以降に Istio アンビエントモードをインストールできます。

前提条件

  • クラスターを OpenShift Container Platform 4.19 以降にデプロイしている。
  • OpenShift Container Platform クラスターに OpenShift Service Mesh Operator 3.1.0 以降がインストールされている。
  • インストール方法に応じて、cluster-admin ロールを持つユーザーとして Web コンソールを使用するか、または oc login コマンドを使用して OpenShift Container Platform クラスターにログインしている。
  • Cluster Network Operator の gatewayConfig 仕様で routingViaHost フィールドを true に設定して、OVN-Kubernetes Container Network Interface (CNI) がローカルゲートウェイモードを使用するように設定した。詳細は、「ゲートウェイモードの設定」を参照してください。

手順

  1. Istio コントロールプレーンをインストールします。

    1. 次のコマンドを実行して、istio-system namespace を作成します。

      $ oc create namespace istio-system
      Copy to Clipboard Toggle word wrap
    2. 次の例のように、istio.yaml という名前の Istio リソースを作成します。

      設定例

      apiVersion: sailoperator.io/v1
      kind: Istio
      metadata:
        name: default
      spec:
        namespace: istio-system
        profile: ambient
        values:
          pilot:
            trustedZtunnelNamespace: ztunnel
      Copy to Clipboard Toggle word wrap

      重要

      profile フィールドを ambient に設定し、.spec.values.pilot.trustedZtunnelNamespace 値を、ZTunnel リソースがインストールされる namespace と一致するように設定する必要があります。

    3. 次のコマンドを実行して、Istio カスタムリソース (CR) を適用します。

      $ oc apply -f istio.yaml
      Copy to Clipboard Toggle word wrap
    4. 次のコマンドを実行して、Istio コントロールプレーンに Ready ステータス条件が含まれるまで待ちます。

      $ oc wait --for=condition=Ready istios/default --timeout=3m
      Copy to Clipboard Toggle word wrap
  2. Istio Container Network Interface (CNI) をインストールします。

    1. 次のコマンドを実行して、istio-cni namespace を作成します。

      $ oc create namespace istio-cni
      Copy to Clipboard Toggle word wrap
    2. 次の例のように、istio-cni.yaml という名前の IstioCNI リソースを作成します。

      設定例

      apiVersion: sailoperator.io/v1
      kind: IstioCNI
      metadata:
        name: default
      spec:
        namespace: istio-cni
        profile: ambient
      Copy to Clipboard Toggle word wrap

      profile フィールドを ambient に設定します。

    3. 次のコマンドを実行して、IstioCNI CR を適用します。

      $ oc apply -f istio-cni.yaml
      Copy to Clipboard Toggle word wrap
    4. 次のコマンドを実行して、IstioCNI Pod に Ready ステータス条件が含まれるまで待ちます。

      $ oc wait --for=condition=Ready istios/default --timeout=3m
      Copy to Clipboard Toggle word wrap
  3. Ztunnel プロキシーをインストールします。

    1. 次のコマンドを実行して、Ztunnel プロキシーの ztunnel namespace を作成します。

      $ oc create namespace ztunnel
      Copy to Clipboard Toggle word wrap

      ztunnel プロジェクトの namespace 名は、Istio 設定の trustedZtunnelNamespace パラメーターと一致する必要があります。

    2. 次の例のように、ztunnel.yaml という名前の Ztunnel リソースを作成します。

      設定例

      apiVersion: sailoperator.io/v1alpha1
      kind: ZTunnel
      metadata:
        name: default
      spec:
        namespace: ztunnel
        profile: ambient
      Copy to Clipboard Toggle word wrap

    3. 次のコマンドを実行して、Ztunnel CR を適用します。

      $ oc apply -f ztunnel.yaml
      Copy to Clipboard Toggle word wrap
    4. 次のコマンドを実行して、Ztunnel Pod に Ready ステータス条件が含まれるまで待ちます。

      $ oc wait --for=condition=Ready ztunnel/default --timeout=3m
      Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat