1 サービス・メッシュの概要
重要:
このドキュメントで説明されているソフトウェアは、Extended SupportまたはSustaining Supportにあります。 詳細は、「Oracleオープン・ソース・サポート・ポリシー」を参照してください。
このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお勧めします。
この章では、Oracle Cloud Native EnvironmentのIstioモジュールの概要について説明します。このモジュールは、Oracle Cloud Native Environmentでサービス・メッシュを設定するために使用されます。
サービス・メッシュとは
サービス・メッシュとは、マイクロサービスのネットワーク間の相互作用を制御する、構成可能な低遅延のインフラストラクチャ層のことです。 サービス・メッシュにより、コンテナ化されたアプリケーション・インフラストラクチャ・サービス間の通信の高速性、高信頼性および安全性を実現します。 サービス・メッシュは、サービスの検出、ロード・バランシング、暗号化、可観測性、トレーサビリティ、認証、認可などの重要な機能を提供します。
サービス・メッシュには、Kubernetesクラスタ内のマイクロサービスをモニターする機能があります。 Istioは、マイクロサービスのデプロイに関して現行の一般的なデプロイメント・パターンの大部分をサポートします。 これは、開発者には透過的になります。
Istioとは
Istioとは、サービス・メッシュの一種であり、マイクロサービス・アーキテクチャの各サービスの相互作用と操作を管理するために設計されています。 Istioは、サービスの検出、ロード・バランシング、セキュリティ、テレメトリおよびポリシー適用の各機能を提供することで、サービス間の通信を調整するオープン・ソース・プロジェクトです。 Istioには、サイドカー・サービス・メッシュ・モデルが使用されています。 このため、ネットワーク通信のプロキシ機能は、デプロイされているサービスまたはアプリケーション・コンテナのそれぞれに個別のコンテナで実装されます。 Envoyは、このプロキシ機能を実装する製品です。このような特別なコンテナは、その他すべてのコンテナと連携して実行されます。 Istioのサイドカー・サービス・メッシュにより、開発者は、そうした種類の機能をアプリケーション・コードにプログラミングする必要がなくなり、マイクロ・サービス・アーキテクチャのアプリケーションの開発と改良は、飛躍的に効率化され短期化されます。
Istioのコントロール・プレーンは、基盤になるクラスタ管理プラットフォームのKubernetesの上面に抽象化層を提供します。
Istioには、次のコンポーネントが含まれます。
-
Envoy: クラスタ内のサービス間およびサービスから外部サービスへのイングレス/エグレス・トラフィックを処理するマイクロサービスごとのサイドカー・プロキシ。 このプロキシにより、ソース・マイクロサービス・メッシュが形成され、検出、多機能なレイヤー7ルーティング、ポリシー適用およびテレメトリの記録/レポート機能など、豊富な機能を提供します。
-
Istiod: サービス検出、構成および証明書管理を担当するコンポーネント。
Istioデプロイメント・アーキテクチャの詳細は、次の場所にあるアップストリームのドキュメントを参照してください。
Istioモジュールについて
Istioモジュールは、安定している、アップストリームのIstioプロジェクトのリリースに基づいています。 このソフトウェアのOracleバージョンとアップストリーム・リリースとの違いは、特定の不具合に対応するOracle提供の構成プロファイルとパッチがあるかどうかです。
アップストリームIstioのドキュメントについては、https://istio.io/latest/docs/を参照してください。
Istioの詳細は、https://istio.io/を参照してください。
Istioモジュールのコンポーネント
アップストリームのIstioインストールには、選択可能な複数の構成プロファイルがあります。 Istioモジュール・コンポーネントは、アップストリーム・インストール構成プロファイルに基づいており、Oracle Cloud Native Environment用にキュレートされたコンポーネントを含みます。 アップストリームのインストール構成プロファイルは、次の場所で確認できます。
https://istio.io/latest/docs/setup/additional-setup/config-profiles/
インストールされるIstioのコア・コンポーネントと、それに対応するコンテナ名の接頭辞は次のとおりです。
-
エグレス・ゲートウェイ(
istio-egressgateway
) -
イングレス・ゲートウェイ(
istio-ingressgateway
) -
Istiod (
istiod
)
Kubernetesクラスタをモニターおよび可視化するためのサポート・モジュールとして、2つの追加モジュールがインストールされます。 内容は次のとおりです。
-
Grafana (
grafana
) -
Prometheus (
prometheus-server
)