概要
Istio とはオープンソースのサービスメッシュ・プラットフォームで、マイクロサービスが相互にデータを共有する方法を制御する手段を提供します。Istio をあらゆるロギング・プラットフォーム、テレメトリー、またはポリシーシステムに統合する API も含まれています。Istio は、オンプレミス、クラウドホスト、Kubernetes コンテナ、仮想マシンで実行されるサービスなど、さまざまな環境で実行できるように設計されています。
Istio の主な特長
Istio のアーキテクチャはデータプレーンとコントロールプレーンに分かれています。データプレーンでは、環境内にサイドカープロキシをデプロイして Istio サポートをサービスに追加します。サイドカープロキシはマイクロサービスと並んで存在し、他のプロキシ間でリクエストを転送します。また、これらのプロキシはメッシュネットワークを形成し、マイクロサービス間のネットワーク通信をインターセプトします。コントロールプレーンはプロキシを管理および設定し、トラフィックをルーティングします。コントロールプレーンでは、ポリシーの適用やテレメトリーの収集を行うコンポーネントも設定します。
Istio などのサービスメッシュがあると、開発部門と運用部門はモノリシック・アプリケーションからクラウドネイティブ・アプリケーション (小型で独立した、疎結合のマイクロサービス・アプリケーションの集合) への変更に対処しやすくなります。Istio は、サービスメッシュおよびサービスメッシュがサポートするマイクロサービスの動作を分析し、運用を制御します。サービスメッシュを使用するとデプロイメントの複雑性が減少し、開発チームの負担がいくらか軽減されます。Istio の機能を利用して、分散マイクロサービス・アーキテクチャを実行できます。機能には次のようなものがあります。
- トラフィック管理:Isitio でのトラフィックルーティングとルール設定により、トラフィックのフローとサービス間の API 呼び出しを制御できます。
- セキュリティ:Istio から基盤となる通信チャネルが提供され、サービス通信の認証、認可、暗号化が広範囲で管理されます。Istio を使うと、アプリケーションへの変更を最小に抑えながら、複数のプロトコルとランタイムに対してポリシーを一貫して適用できます。Istio を Kubernetes (またはインフラストラクチャ) ネットワークポリシーと併用すると、pod 間またはサービス間の通信がネットワークレイヤーとアプリケーション・レイヤーでセキュリティ保護されるというメリットがもたらされます。
- 可観測性:Istio のトレース、監視、ロギング機能により、サービスメッシュデプロイの状況を把握します。監視により、サービスアクティビティがアップストリームとダウンストリームのパフォーマンスにどのように影響を与えているか、確認できます。カスタムダッシュボードでは、すべてのサービスのパフォーマンスの状態を把握できます。
Red Hat のリソース
Istio に Red Hat OpenShift Service Mesh を選ぶ理由
Red Hat OpenShift Service Mesh は Istio をベースとしており、Red Hat OpenShift で利用できます。マイクロサービス間のネットワーク通信をインターセプトするサイドカープロキシの利用により、サービスメッシュ内でネットワーク接続されたマイクロサービスの動作を分析し、制御します。
Red Hat OpenShift Service Mesh は、標準の Istio にはない追加機能を提供し、Red Hat OpenShift へのデプロイを容易にします。
Red Hat 公式ブログ
Red Hat のお客様、パートナー、およびコミュニティのエコシステムに関する最新の情報を入手しましょう。