• 検索結果がありません。

Red Hat OpenShift Service Mesh カスタムリソース 注記

ドキュメント内 OpenShift Container Platform 4.6 サービスメッシュ (ページ 89-96)

バージョン 2. 0 ServiceMeshControlPlane の例 の例

1.13. カスタムリソース

1.13.2. Red Hat OpenShift Service Mesh カスタムリソース 注記

注記

istio-system プロジェクトは、サービスメッシュのドキュメント全体でサンプルとして

使用されますが、必要に応じて他のプロジェクトを使用できます。

カスタムリソース

カスタムリソースにより、Red Hat OpenShift Service Mesh プロジェクトまたはクラスターで API を 拡張することができます。サービスメッシュをデプロイすると、プロジェクトパラメーターを変更する ために変更できるデフォルトの ServiceMeshControlPlane が作成されます。

Service Mesh Operator は、ServiceMeshControlPlane リソースタイプを追加して API を拡張します。

metadata:

name: gateway1 spec:

selector:

istio: ingressgateway servers:

- port:

number: 80 name: http protocol: HTTP hosts:

- www.bookinfo.com - bookinfo.example.com

$ oc -n <control_plane_namespace> get routes

NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD gateway1-lvlfn bookinfo.example.com istio-ingressgateway <all> None

gateway1-scqhv www.bookinfo.com istio-ingressgateway <all> None

これにより、プロジェクト内に ServiceMeshControlPlane オブジェクトを作成できま

す。ServiceMeshControlPlane オブジェクトを作成することで、Operator にサービスメッシュコント ロールプレーンをプロジェクトにインストールするよう指示でき、ServiceMeshControlPlane オブ ジェクトで設定したパラメーターを使用して設定できます。

この例の ServiceMeshControlPlane の定義には、サポートされるすべてのパラメーターが含まれ、こ

れにより Red Hat Enterprise Linux (RHEL) をベースとした Red Hat OpenShift Service Mesh 2.0.2 イ メージがデプロイされます。

重要 重要

3scale の Istio Adapter は、カスタムリソースファイルでデプロイされ、設定されます。

また、アクティブな 3scale アカウント (SaaS または On-Premises) が必要になります。

ServiceMeshControlPlane

リソースの例 リソースの例

apiVersion: maistra.io/v2

kind: ServiceMeshControlPlane metadata:

name: basic spec:

proxy:

resources:

requests:

cpu: 100m memory: 128Mi limits:

cpu: 500m memory: 128Mi tracing:

type: Jaeger gateways:

ingress: # istio-ingressgateway service:

type: ClusterIP ports:

- name: status-port port: 15020 - name: http2 port: 80

targetPort: 8080 - name: https port: 443

targetPort: 8443 meshExpansionPorts: []

egress: # istio-egressgateway service:

type: ClusterIP ports:

- name: status-port port: 15020 - name: http2 port: 80

targetPort: 8080 - name: https

port: 443

targetPort: 8443 additionalIngress:

some-other-ingress-gateway: {}

additionalEgress:

some-other-egress-gateway: {}

policy:

type: Istiod # or Mixer

mixer: # only applies if policy.type: Mixer enableChecks: false

failOpen: false telemetry:

type: Istiod # or Mixer

mixer: # only applies if telemetry.type: Mixer, for v1 telemetry sessionAffinity: false

batching:

maxEntries: 100 maxTime: 1s adapters:

kubernetesenv: true stdio:

enabled: true outputAsJSON: true addons:

grafana:

enabled: true install:

config:

env: {}

envSecrets: {}

persistence:

storageClassName: ""

accessMode: ReadWriteOnce capacity: 5Gi

service:

ingress:

contextPath: /grafana tls:

termination: reencrypt kiali:

name: kiali enabled: true

install: # install kiali CR if not present dashboard:

viewOnly: false enableGrafana: true enableTracing: true enablePrometheus: true service:

ingress:

contextPath: /kiali jaeger:

name: jaeger install:

以下の表は、ServiceMeshControlPlane リソースのパラメーターを一覧表示しています。

表1.2 ServiceMeshControlPlane リソースパラメーターリソースパラメーター 名前

名前 説明説明 タイプタイプ

apiVersion APIVersion はオブジェクトのこの

表現のバージョンスキーマを定義 します。サーバーは認識されたス キーマを最新の内部値に変換し、

認識されない値は拒否することが あります。Red Hat OpenShift Service Mesh バージョン 2.0 の値 はmaistra.io/v2です。

Red Hat OpenShift Service Mesh バージョン 2.0 の値は

maistra.io/v2 です。

kind kind はこのオブジェクトが表す

REST リソースを表す文字列の値

です。サーバーはクライアントが 要求を送信するエンドポイントか らこれを推測できることがありま す。

設定不可 storage:

type: Memory # or Elasticsearch memory:

maxTraces: 100000 elasticsearch:

nodeCount: 3 storage: {}

redundancyPolicy: SingleRedundancy indexCleaner: {}

ingress: {} # jaeger ingress configuration runtime:

components:

pilot:

deployment:

replicas: 2 pod:

affinity: {}

container:

resources:

limits: {}

requirements: {}

grafana:

deployment: {}

pod: {}

kiali:

deployment: {}

pod: {}

metadata この

ServiceMeshControlPlane ンスタンスについてのメタデー タ。コントロールプレーンのイン ストールの名前を指定して作業を 追跡できます (basic-install productionなど)。

文字列

spec この

ServiceMeshControlPlane 必要な状態の仕様です。これに は、コントロールプレーンを構成 するすべてのコンポーネントの設 定オプションが含まれます。

詳細は、表 2 を参照してくださ い。

status この

ServiceMeshControlPlane コントロールプレーンを構成する コンポーネントの現在のステータ スです。

詳細は、表 3 を参照してくださ い。

名前

名前 説明説明 タイプタイプ

以下の表は、ServiceMeshControlPlane リソースの仕様を一覧表示しています。これらのパラメー ターは、マイクロサービスおよびアプリケーション向けに Red Hat OpenShift Service Mesh を設定しま す。

表1.3 ServiceMeshControlPlane リソース仕様リソース仕様 名前

名前 説明説明 設定可能なパラメーター設定可能なパラメーター

addons addonsパラメーターを使用し

て、可視化やメトリクスストレー ジなどのコアコントロールプレー ンコンポーネント以外の追加機能 を設定します。

3scalegrafanajaegerkia li、およびprometheus

cluster clusterパラメーターは、クラス

ターの一般的な設定 (クラスター 名、ネットワーク名、マルチクラ スター、メッシュ拡張など) の設 定を行います。

meshExpansionmultiClust ername、およびnetwork

gateways gatewaysパラメーターを使用し

て、メッシュの ingress および

egress ゲートウェイを設定しま

す。

enabledadditionalEgress additionalIngressegressi ngress、および

openshiftRoute

general generalパラメーターは、その他 の場所には適合しない一般的なコ ントロールプレーンの設定を表し ます。

loggingおよび validationMessages

policy policyパラメーターを使用し

て、コントロールプレーンのポリ シーチェックを設定します。ポリ シーチェックを有効にするに は、spec.policy.enabled trueに設定します。

mixerremote、または

typetypeIstiodMixer たはNoneに設定できます。

profiles profilesパラメーターを使用し

て、デフォルト値に使用するため にServiceMeshControlPlane プロファイルを選択します。

default

proxy proxyパラメーターを使用してサ

イドカーのデフォルト動作を設定 します。

accessLoggingadminPort

concurrency、および envoyMetricsService

runtime runtimeパラメーターを使用して

コントロールプレーンのコンポー ネントを設定します。

components、およびdefaults

security securityパラメーターを使用す

ると、コントロールプレーンのセ キュリティーの各種機能を設定で きます。

certificateAuthority

controlPlaneidentitydata Planeおよびtrust

techPreview techPreviewパラメーターを使

用すると、テクノロジープレ ビュー機能への早期アクセスが可 能になります。

該当なし

telemetry spec.mixer.telemetry.enable dtrueに設定されている場 合、telemetry は有効にされま す。

mixerremote、および typetypeIstiodMixer たはNoneに設定できます。

tracing tracingパラメーターを使用し

て、メッシュの分散トレースを有 効にします。

samplingtypetype JaegerまたはNoneに設定でき ます。

名前

名前 説明説明 設定可能なパラメーター設定可能なパラメーター

version versionパラメーターは、インス トールするコントロールプレーン の Maistra バージョンを指定しま す。空のバージョンで

ServiceMeshControlPlane 作成する場合、受付 Webhook は バージョンを現行バージョンに設 定します。空のバージョンの新規 の

ServiceMeshControlPlanesv2.0に設定されます。空の バージョンの既存の

ServiceMeshControlPlanes はそれらの設定を保持します。

文字列 名前

名前 説明説明 設定可能なパラメーター設定可能なパラメーター

ControlPlaneStatus はサービスメッシュの現在の状態を表します。

表1.4 ServiceMeshControlPlane リソースリソースControlPlaneStatus 名前

名前 説明説明 タイプタイプ

annotations annotationsパラメーターは、

通常は

ServiceMeshControlPlane よってデプロイされるコンポーネ ントの数などの追加の余分なス テータス情報を保存します。これ らのステータスは、JSONPath 式 でオブジェクトのカウントを許可 しないコマンドラインツールの ocで使用されます。

設定不可

conditions オブジェクトの現在の状態として

観察される最新の状態を表しま す。Reconcileは、Operator が デプロイされるコンポーネントの 実際の状態の調整を

ServiceMeshControlPlane ソースの設定を使用して完了した かどうかを示します。installed は、コントロールプレーンがイン ストールされているかどうかを示 します。Readyは、すべてのコ ントロールプレーンコンポーネン トが準備状態にあるかどうかを示 します。

文字列

components デプロイされた各コントロールプ レーンコンポーネントのステータ スを表示します。

文字列

appliedSpec すべてのプロファイルが適用され

た後に生成される設定の仕様で す。

ControlPlaneSpec

appliedValues チャートの生成に使用される生成

される values.yaml です。

ControlPlaneSpec

chartVersion このリソースに対して最後に処理

されたチャートのバージョンで す。

文字列

observedGeneration 直近の調整時にコントローラーに

よって観察される生成です。ス テータスの情報は、オブジェクト の特定の生成に関連するもので す。status.conditionsは、

status.observedGeneration フィールドが

metadata.generationに一致し ない場合は最新の状態ではありま せん。

整数

operatorVersion このリソースを最後に処理した

Operator のバージョンです。

文字列

readiness コンポーネントおよび所有リソー

スの準備状態 ( readiness) のス テータス

文字列 名前

名前 説明説明 タイプタイプ

ドキュメント内 OpenShift Container Platform 4.6 サービスメッシュ (ページ 89-96)