1.24. Service Mesh control plane 配置参考
您可以通过修改默认的 ServiceMeshControlPlane (SMCP) 资源或创建完全自定义 SMCP 资源来自定义 Red Hat OpenShift Service Mesh。本参考部分记录了可用于 SMCP 资源的配置选项。
1.24.1. Service Mesh Control plane 参数 复制链接链接已复制到粘贴板!
下表列出了 ServiceMeshControlPlane 资源的顶级参数。
| 名称 | 描述 | 类型 |
|---|---|---|
|
|
APIVersion 定义对象的这个表示法的版本化的 schema。服务器将识别的模式转换为最新的内部值,并可拒绝未识别的值。 |
|
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。 |
|
|
|
关于这个 | 字符串 |
|
|
此 | 如需更多信息,请参阅表 2。 |
|
|
此 | 如需更多信息,请参阅表 3。 |
下表列出了 ServiceMeshControlPlane 资源规格。更改这些参数配置 Red Hat OpenShift Service Mesh 组件。
| 名称 | 描述 | 可配置参数 |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
您可以使用 |
|
|
|
|
|
|
|
您可以使用 |
|
|
|
您可以使用 |
|
|
|
您可以使用 |
|
|
|
您可以使用 |
|
|
|
|
|
|
|
| N/A |
|
|
如果 |
|
|
|
您可以使用 |
|
|
|
您可以使用 | 字符串 |
ControlPlaneStatus 代表服务网格的当前状态。
| 名称 | 描述 | 类型 |
|---|---|---|
|
|
| 无法配置 |
|
|
代表对象当前状态的最新可用影响。 | 字符串 |
|
| 显示每个部署的 Service Mesh control plane 组件的状态。 | 字符串 |
|
| 应用所有配置集后生成的配置选项规格。 |
|
|
| 用于生成 chart 的 values.yaml。 |
|
|
| 最后一次为此资源处理的图表版本。 | 字符串 |
|
|
控制器在最新协调期间观察到的生成。状态中的信息与对象的特定生成有关。如果 | 整数 |
|
| 最后处理此资源的 operator 版本。 | 字符串 |
|
| 组件和拥有资源的就绪状态。 | 字符串 |
这个示例 ServiceMeshControlPlane 定义包含所有支持的参数。
ServiceMeshControlPlane 资源示例
apiVersion: maistra.io/v2
kind: ServiceMeshControlPlane
metadata:
name: basic
spec:
version: v2.2
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: {}