- OpenShift Service Meshとは
- OpenShift Service Meshのコンポーネント
- OpenShift Service Meshをインストールする
OpenShift Service Meshとは
OpenShift ServiceMeshとは、OpenShift上で稼働するマイクロアプリケーションのMesh層を接続・管理・監視するためのOpenShiftサービスです。Istioとの違いなど、OpenShift Service Meshを使うメリットは以下のURLで紹介されています。
OpenShift Service Meshのコンポーネント
OpenShift Service Meshのコンポーネントは以下の通りです。必ずしも全てインストールする必要はなく、オプションで設定できます。
- Istio・・・全体のトラフィックの管理
- Kiali・・・トラフィックの可視化
- Grafana・・・メトリクスの可視化
- Jeager・・・分散トレースログの管理
- Elasticsearch・・・分散トレースログの保管先(※Jeagerを利用する場合に、all-in-oneのインメモリ構成かElasticsearchを選択できます。)
特に注意すべき点はElasticsearchで、それなりに大きいリソースを必要としますし、永続ボリューム用のストレージが必要になります。企業では通常予算を決めてから構築しますので、予算からずれる可能性があります。
Elasticsearchの要件は、こちらをご参照ください。
OpenShift Service Meshをインストールする
GUIのOperator HubからIstioだけインストールします。
1.「OperatorHub」タブから「ServiceMesh」を検索する

2.「Install」ボタンをクリックする

3. オプションを選択する
- Installation Mode・・・プロジェクトが利用可能な範囲を選択します。
- Update Channel・・・インストールする対象バージョンを選択します。GA済みの安定したバージョンかTech Previewのバージョンかどうか選択することができます。
- Approval Strategy・・・Operatorのアップデートを自動か手動で選択できます。

4. 「Installed Operators」タブからServiceMeshのStatusが「Succeeded」であることを確認し、「Istio Service Mesh Controll Plane」をクリックする

インストールが完了するとOperator Podが作成されています。
$ oc get pods -n openshift-operators NAME READY STATUS RESTARTS AGE istio-operator-745ffbbcbb-wrhgq 1/1 Running 0 4m36s
5. 「Create ServiceMeshControllPlane」をクリックする

6. `spec.kiali.enabled`、`spec.grafana.enabled`、`spec.tracing.enabled`をtrue→falseに変更する


7. `metadata.namespace`を作成したproject名に変更し、「Create」ボタンをクリックする
以下のコマンドでOpenShift Service Meshをデプロイするプロジェクトを作成します。
$ oc new-project istio-system
作成したプロジェクトをmetadata.namespaceに指定します。

これでインストールが完了しました。IstioのPodがデプロイされていることがわかります。
$ oc get pods -n istio-system NAME READY STATUS RESTARTS AGE istio-citadel-5b66678f8-g847h 1/1 Running 0 2m8s istio-egressgateway-58b5ccd6b7-7flg8 1/1 Running 0 50s istio-galley-7dddcfffd8-5ssnn 1/1 Running 0 102s istio-ingressgateway-6b6d8d747-8cdxs 1/1 Running 0 50s istio-pilot-c77d8b5dd-nlh4f 2/2 Running 0 64s istio-policy-57845f5d-shhsm 2/2 Running 0 88s istio-sidecar-injector-64c496848-dh75r 1/1 Running 0 45s istio-telemetry-656d4d654f-m2cpq 2/2 Running 0 88s prometheus-5467bd8998-lph9v 2/2 Running 0 119s
以上です。