1.24. Service Mesh コントロールプレーン設定の参照
デフォルトの ServiceMeshControlPlane
(SMCP) リソースを変更するか、または完全にカスタムの SMCP リソースを作成して Red Hat OpenShift Service Mesh をカスタマイズできます。このリファレンスセクションでは、SMCP リソースで利用可能な設定オプションについて説明します。
1.24.1. Service Mesh コントロールプレーンのパラメーター
以下の表は、ServiceMeshControlPlane
リソースのトップレベルのパラメーターを一覧表示しています。
名前 | 説明 | タイプ |
---|---|---|
|
APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。 |
ServiceMeshControlPlane で唯一有効な値は、 |
|
この | 文字列 |
|
この | 詳細は、表 2 を参照してください。 |
|
この | 詳細は、表 3 を参照してください。 |
以下の表は、ServiceMeshControlPlane
リソースの仕様を一覧表示しています。これらのパラメーターを変更すると、Red Hat OpenShift Service Mesh コンポーネントが設定されます。
名前 | 説明 | 設定可能なパラメーター |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 該当なし |
|
|
|
|
|
|
|
| 文字列 |
ControlPlaneStatus
はサービスメッシュの現在の状態を表します。
名前 | 説明 | タイプ |
---|---|---|
|
| 設定不可 |
|
オブジェクトの現在の状態として観察される最新の状態を表します。 | 文字列 |
| デプロイされた各 Service Mesh コントロールプレーンコンポーネントのステータスを表示します。 | 文字列 |
| すべてのプロファイルが適用された後に生成される設定の仕様です。 |
|
| チャートの生成に使用される生成される values.yaml です。 |
|
| このリソースに対して最後に処理されたチャートのバージョンです。 | 文字列 |
|
直近の調整時にコントローラーによって観察される生成です。ステータスの情報は、オブジェクトの特定の生成に関連するものです。 | 整数 |
| このリソースを最後に処理した Operator のバージョンです。 | 文字列 |
| コンポーネントおよび所有リソースの準備状態 ( readiness) のステータス | 文字列 |
この例の ServiceMeshControlPlane
の定義には、サポート対象のパラメーターがすべて含まれます。
ServiceMeshControlPlane
リソースの例
apiVersion: maistra.io/v2 kind: ServiceMeshControlPlane metadata: name: basic spec: version: v2.3 proxy: runtime: container: 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: Mixer mixer: # only applies if policy.type: Mixer enableChecks: true 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: enabled: true storageClassName: "" accessMode: ReadWriteOnce capacity: requests: storage: 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: storage: type: Elasticsearch # or Memory memory: maxTraces: 100000 elasticsearch: nodeCount: 3 storage: {} redundancyPolicy: SingleRedundancy indexCleaner: {} ingress: {} # jaeger ingress configuration runtime: components: pilot: deployment: replicas: 2 pod: affinity: {} container: resources: requests: cpu: 100m memory: 128Mi limits: cpu: 500m memory: 128Mi grafana: deployment: {} pod: {} kiali: deployment: {} pod: {}
1.24.2. 仕様パラメーター
1.24.2.1. 一般的なパラメーター
以下の例は、ServiceMeshControlPlane
オブジェクトの spec.general
パラメーターと適切な値を持つ利用可能なパラメーターの説明を示しています。
一般的なパラメーターの例
apiVersion: maistra.io/v2 kind: ServiceMeshControlPlane metadata: name: basic spec: general: logging: componentLevels: {} # misc: error logAsJSON: false validationMessages: true
パラメーター | 説明 | 値 | デフォルト値 |
---|---|---|---|
logging: | Service Mesh コントロールプレーンコンポーネントのロギングを設定するために使用します。 | 該当なし | |
logging: componentLevels: | コンポーネントのロギングレベルを指定するために使用します。 |
使用できる値は、 | 該当なし |
logging: logLevels: |
使用できる値は、 | 該当なし | |
logging: logAsJSON: | JSON ロギングを有効または無効にします。 |
| 該当なし |
validationMessages: | istio.io リソースの status フィールドへの検証メッセージを有効または無効にするのに使用します。これは、リソースで設定エラーを検出するのに役立ちます。 |
| 該当なし |
1.24.2.2. プロファイルパラメーター
ServiceMeshControlPlane
オブジェクトプロファイルを使用すると、再利用可能な設定を作成することができます。profile
設定を設定しない場合、Red Hat OpenShift Service Mesh は default プロファイルを使用します。
以下の例は、ServiceMeshControlPlane
オブジェクトの spec.profiles
パラメーターを示しています。
プロファイルパラメーターの例
apiVersion: maistra.io/v2 kind: ServiceMeshControlPlane metadata: name: basic spec: profiles: - YourProfileName
プロファイルの作成に関する詳細は、コントロールプレーンプロファイルの作成 を参照してください。
セキュリティー設定の詳細な例は、Mutual Transport Layer Security (mTLS) を参照してください。
1.24.2.3. techPreview パラメーター
spec.techPreview
パラメーターを使用すると、テクノロジープレビュー機能への早期アクセスが可能になります。
テクノロジープレビュー機能は、Red Hat の実稼働環境におけるサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
1.24.2.4. トレースパラメーター
以下の例は、ServiceMeshControlPlane
オブジェクトの spec.tracing
パラメーターと適切な値を持つ利用可能なパラメーターの説明を示しています。
トレースパラメーターの例
apiVersion: maistra.io/v2 kind: ServiceMeshControlPlane metadata: name: basic spec: version: v2.3 tracing: sampling: 100 type: Jaeger
パラメーター | 説明 | 値 | デフォルト値 |
---|---|---|---|
tracing: sampling: | サンプリングレートは、Envoy プロキシーがトレースを生成する頻度を決定します。サンプリングレートを使用して、トレースシステムに報告される要求の割合を制御します。 |
0 から 10000 までの整数値で、インクリメントは 0.01% (0 から 100%) になります。たとえば、値を |
|
tracing: type: |
現在、サポートされるトレーサーの唯一のタイプは |
|
|
1.24.2.5. バージョンパラメーター
Red Hat OpenShift Service Mesh Operator は、さまざまなバージョンの ServiceMeshControlPlane
のインストールをサポートしています。version パラメーターは、インストールする Service Mesh コントロールプレーンのバージョンを指定します。SMCP の作成時にバージョンパラメーターを指定しない場合には、Operator は値を最新バージョン (2.3) に設定します。既存の ServiceMeshControlPlane
オブジェクトは、Operator のアップグレード中にバージョン設定を保持します。
1.24.2.6. 3scale の設定
以下の表では、ServiceMeshControlPlane
リソースの 3scale Istio アダプターのパラメーターについて説明しています。
3scale パラメーターの例
spec: addons: 3Scale: enabled: false PARAM_THREESCALE_LISTEN_ADDR: 3333 PARAM_THREESCALE_LOG_LEVEL: info PARAM_THREESCALE_LOG_JSON: true PARAM_THREESCALE_LOG_GRPC: false PARAM_THREESCALE_REPORT_METRICS: true PARAM_THREESCALE_METRICS_PORT: 8080 PARAM_THREESCALE_CACHE_TTL_SECONDS: 300 PARAM_THREESCALE_CACHE_REFRESH_SECONDS: 180 PARAM_THREESCALE_CACHE_ENTRIES_MAX: 1000 PARAM_THREESCALE_CACHE_REFRESH_RETRIES: 1 PARAM_THREESCALE_ALLOW_INSECURE_CONN: false PARAM_THREESCALE_CLIENT_TIMEOUT_SECONDS: 10 PARAM_THREESCALE_GRPC_CONN_MAX_SECONDS: 60 PARAM_USE_CACHED_BACKEND: false PARAM_BACKEND_CACHE_FLUSH_INTERVAL_SECONDS: 15 PARAM_BACKEND_CACHE_POLICY_FAIL_CLOSED: true
パラメーター | 説明 | 値 | デフォルト値 |
---|---|---|---|
| 3scale アダプターを使用するかどうか |
|
|
| gRPC サーバーのリッスンアドレスを設定します。 | 有効なポート番号 |
|
| ログ出力の最小レベルを設定します。 |
|
|
| ログが JSON としてフォーマットされるかどうかを制御します。 |
|
|
| ログに gRPC 情報を含むかどうかを制御します。 |
|
|
| 3scale システムおよびバックエンドメトリクスが収集され、Prometheus に報告されるかどうかを制御します。 |
|
|
|
3scale | 有効なポート番号 |
|
| キャッシュから期限切れのアイテムを消去するまで待機する時間 (秒単位)。 | 時間 (秒単位) |
|
| キャッシュ要素の更新を試行する場合の期限 | 時間 (秒単位) |
|
|
キャッシュにいつでも保存できるアイテムの最大数。キャッシュを無効にするには | 有効な数字 |
|
| キャッシュ更新ループ時に到達できないホストが再試行される回数 | 有効な数字 |
|
|
|
|
|
| 3scale システムおよびバックエンドへの要求を終了するまで待機する秒数を設定します。 | 時間 (秒単位) |
|
| 接続を閉じるまでの最大秒数 (+/-10% のジッター) を設定します。 | 時間 (秒単位) | 60 |
| true の場合、承認要求のインメモリー apisonator キャッシュの作成を試行します。 |
|
|
| バックエンドキャッシュが有効な場合には、3scale に対してキャッシュをフラッシュする間隔を秒単位で設定します。 | 時間 (秒単位) | 15 |
| バックエンドキャッシュが承認データを取得できない場合は常に、要求を拒否する (クローズする) か、許可する (オープンする) かどうか。 |
|
|
1.24.3. ステータスパラメーター
status
パラメーターは、サービスメッシュの現在の状態を記述します。この情報は Operator によって生成され、読み取り専用です。
名前 | 説明 | タイプ |
---|---|---|
|
直近の調整時にコントローラーによって観察される生成です。ステータスの情報は、オブジェクトの特定の生成に関連するものです。 | 整数 |
|
| 設定不可 |
| コンポーネントおよび所有リソースの readiness ステータスです。 | 文字列 |
| このリソースを最後に処理した Operator のバージョンです。 | 文字列 |
| デプロイされた各 Service Mesh コントロールプレーンコンポーネントのステータスを表示します。 | 文字列 |
| すべてのプロファイルが適用された後に生成される設定の仕様です。 |
|
|
オブジェクトの現在の状態として観察される最新の状態を表します。 | 文字列 |
| このリソースに対して最後に処理されたチャートのバージョンです。 | 文字列 |
|
チャートの生成に使用された、生成される |
|
1.24.4. 関連情報
ServiceMeshControlPlane
リソースで機能を設定する方法についての詳細は、以下のリンクを参照してください。