API 参考 (v2beta1)
包
apps.emqx.io/v2beta1
Package v2beta1 包含 apps v2beta1 API 组的 API Schema 定义
资源类型
BootstrapAPIKey
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
key string | Pattern: ^[a-zA-Z\d-_]+$ | ||
secret string | MaxLength: 128 MinLength: 3 | ||
secretRef SecretRef |
Config
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
mode string | Merge | Enum: [Merge Replace] | |
data string | EMQX 配置,HOCON 格式,类似 etc/emqx.conf 文件 |
EMQX
EMQX 是 emqxes API 的 Schema
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
apiVersion string | apps.emqx.io/v2beta1 | ||
kind string | EMQX | ||
metadata ObjectMeta | 请参阅 Kubernetes API 文档了解 metadata 的字段说明。 | ||
spec EMQXSpec | Spec 定义该集合中 EMQX 节点的期望标识。 | ||
status EMQXStatus | Status 是 EMQX 节点的当前状态,该数据可能存在一定延迟。 |
EMQXCoreTemplate
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
metadata ObjectMeta | 请参阅 Kubernetes API 文档了解 metadata 的字段说明。 | ||
spec EMQXCoreTemplateSpec | EMQX Core 节点期望行为的规格说明。 更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
EMQXCoreTemplateSpec
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
nodeSelector object (keys:string, values:string) | NodeSelector 是 Pod 必须满足的节点选择器,Pod 只会被调度到标签匹配的节点上。 更多信息:https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ | ||
nodeName string | NodeName 是将 Pod 调度到指定节点的请求。若非空,调度器会在满足资源需求的前提下直接将 Pod 调度到该节点。 | ||
affinity Affinity | Pod 分配的亲和性配置。 参考:https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity | ||
toleRations Toleration array | 若指定,则为 Pod 的容忍设置。附加此 Toleration 的 Pod 可以容忍匹配 <key,value,effect> 三元组的任意污点。 TODO: 将来应使用 tolerations,此字段仅为兼容旧版本而保留,未来将删除。 | ||
tolerations Toleration array | 若指定,则为 Pod 的容忍设置。附加此 Toleration 的 Pod 可以容忍匹配 <key,value,effect> 三元组的任意污点。 | ||
topologySpreadConstraints TopologySpreadConstraint array | TopologySpreadConstraint 指定如何在给定拓扑中分布匹配的 Pod。 | ||
replicas integer | Replicas 是指定模板的期望副本数。这些副本是同一模板的实例化,但每个副本也具有一致的标识。默认值为 2。 | 2 | |
minAvailable IntOrString | 若驱逐后 "selector" 选中的 Pod 中至少还有 "minAvailable" 个可用,则允许该驱逐。例如,指定 "100%" 可防止所有自愿驱逐。 | XIntOrString: {} | |
maxUnavailable IntOrString | 若驱逐后 "selector" 选中的 Pod 中不可用数不超过 "maxUnavailable",则允许该驱逐。例如,指定 0 可防止所有自愿驱逐。与 "minAvailable" 互斥。 | XIntOrString: {} | |
command string array | 入口点数组,不在 shell 中执行。若未提供则使用容器镜像的 ENTRYPOINT。支持变量引用 更多信息:https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell | ||
args string array | 入口点的参数。若未提供则使用容器镜像的 CMD。支持变量引用 更多信息:https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell | ||
ports ContainerPort array | 容器暴露的端口列表。此处声明端口主要用于提供信息,不声明不代表该端口无法访问。容器内监听默认 "0.0.0.0" 地址的端口均可从网络访问。更新后不可修改。 | ||
env EnvVar array | 容器中设置的环境变量列表。更新后不可修改。 | ||
envFrom EnvFromSource array | 用于填充容器环境变量的来源列表。来源中定义的键名必须是 C_IDENTIFIER。无效的键在容器启动时以事件形式上报。多个来源存在相同键时,以最后一个来源的值为准。与 Env 中重复键的值以 Env 为准。更新后不可修改。 | ||
resources ResourceRequirements | 容器所需的计算资源。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ | ||
podSecurityContext PodSecurityContext | SecurityContext 保存 Pod 级别的安全属性和通用容器设置。 | { fsGroup:1000 fsGroupChangePolicy:Always runAsGroup:1000 runAsUser:1000 supplementalGroups:[1000] } | |
containerSecurityContext SecurityContext | SecurityContext 定义容器运行时的安全选项。若设置,将覆盖 PodSecurityContext 中的同等字段。 更多信息:https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ | { runAsGroup:1000 runAsNonRoot:true runAsUser:1000 } | |
initContainers Container array | 属于 Pod 的初始化容器列表。初始化容器在普通容器启动前按顺序执行。若任一初始化容器失败,Pod 将被视为失败并按 restartPolicy 处理。初始化容器和普通容器的名称在所有容器中必须唯一。初始化容器不支持 Lifecycle 动作、Readiness 探针、Liveness 探针或 Startup 探针。调度时,初始化容器的资源需求按各资源类型取最大请求/限制值,再与普通容器的合计值取较大者。目前初始化容器不支持增删。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ | ||
extraContainers Container array | ExtraContainers 表示要添加到 Pod 中的额外容器。 参见 https://github.com/emqx/emqx-operator/issues/252 | ||
extraVolumes Volume array | 参见 https://github.com/emqx/emqx-operator/pull/72 | ||
extraVolumeMounts VolumeMount array | 参见 https://github.com/emqx/emqx-operator/pull/72 | ||
livenessProbe Probe | 容器存活性的定期探测。探测失败时容器将被重启。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | { failureThreshold:3 httpGet:map[path:/status port:dashboard] initialDelaySeconds:60 periodSeconds:30 } | |
readinessProbe Probe | 容器服务就绪状态的定期探测。探测失败时容器将从服务端点列表中移除。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | { failureThreshold:12 httpGet:map[path:/status port:dashboard] initialDelaySeconds:10 periodSeconds:5 } | |
startupProbe Probe | StartupProbe 表示 Pod 已成功初始化。若指定,在此探测成功之前不会执行其他探测。若探测失败,Pod 将像 livenessProbe 失败一样被重启。适用于 Pod 生命周期初始阶段需要较长时间加载数据或预热缓存的场景。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | ||
lifecycle Lifecycle | 管理系统在容器生命周期事件发生时应采取的动作。更新后不可修改。 | ||
volumeClaimTemplates PersistentVolumeClaimSpec | 该字段名为 VolumeClaimTemplates,但实际类型为 PersistentVolumeClaimSpec,命名不佳敬请谅解。PersistentVolumeClaimSpec 描述存储设备的通用属性,并允许指定特定存储提供商的属性。比 EMQXReplicantTemplateSpec 具有更多字段。 |
EMQXList
EMQXList 包含 EMQX 的列表
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
apiVersion string | apps.emqx.io/v2beta1 | ||
kind string | EMQXList | ||
metadata ListMeta | 请参阅 Kubernetes API 文档了解 metadata 的字段说明。 | ||
items EMQX array |
EMQXNode
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
controllerUID UID | |||
podUID UID | |||
node string | EMQX 节点名称,例如:emqx@127.0.0.1 | ||
node_status string | EMQX 节点状态,例如:Running | ||
otp_release string | EMQX 使用的 Erlang/OTP 版本,例如:24.2/12.2 | ||
version string | EMQX 版本 | ||
role string | EMQX 集群节点角色,枚举值:"core" "replicant" | ||
edition string | EMQX 集群节点版本,枚举值:"Opensource" "Enterprise" | ||
connections integer | EMQX /api/v5/nodes API 中的 connections 字段表示 MQTT 会话数。 | ||
live_connections integer | EMQX /api/v5/nodes API 中的 live_connections 字段表示当前连接的 MQTT 客户端数。live_connections 仅在 EMQX 5.1 及以上版本中生效。 |
EMQXNodesStatus
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
replicas integer | |||
readyReplicas integer | |||
currentRevision string | |||
currentReplicas integer | |||
updateRevision string | |||
updateReplicas integer | |||
collisionCount integer |
EMQXReplicantTemplate
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
metadata ObjectMeta | 请参阅 Kubernetes API 文档了解 metadata 的字段说明。 | ||
spec EMQXReplicantTemplateSpec | EMQX Replicant 节点期望行为的规格说明。 更多信息:https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status Controller tools 不支持更复杂的校验(oneOf/anyOf/allOf 等),请改用校验规则。https://github.com/kubernetes-sigs/controller-tools/issues/461#issuecomment-1982741599 |
EMQXReplicantTemplateSpec
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
nodeSelector object (keys:string, values:string) | NodeSelector 是 Pod 必须满足的节点选择器,Pod 只会被调度到标签匹配的节点上。 更多信息:https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ | ||
nodeName string | NodeName 是将 Pod 调度到指定节点的请求。若非空,调度器会在满足资源需求的前提下直接将 Pod 调度到该节点。 | ||
affinity Affinity | Pod 分配的亲和性配置。 参考:https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity | ||
toleRations Toleration array | 若指定,则为 Pod 的容忍设置。附加此 Toleration 的 Pod 可以容忍匹配 <key,value,effect> 三元组的任意污点。 TODO: 将来应使用 tolerations,此字段仅为兼容旧版本而保留,未来将删除。 | ||
tolerations Toleration array | 若指定,则为 Pod 的容忍设置。附加此 Toleration 的 Pod 可以容忍匹配 <key,value,effect> 三元组的任意污点。 | ||
topologySpreadConstraints TopologySpreadConstraint array | TopologySpreadConstraint 指定如何在给定拓扑中分布匹配的 Pod。 | ||
replicas integer | Replicas 是指定模板的期望副本数。这些副本是同一模板的实例化,但每个副本也具有一致的标识。默认值为 2。 | 2 | |
minAvailable IntOrString | 若驱逐后 "selector" 选中的 Pod 中至少还有 "minAvailable" 个可用,则允许该驱逐。例如,指定 "100%" 可防止所有自愿驱逐。 | XIntOrString: {} | |
maxUnavailable IntOrString | 若驱逐后 "selector" 选中的 Pod 中不可用数不超过 "maxUnavailable",则允许该驱逐。例如,指定 0 可防止所有自愿驱逐。与 "minAvailable" 互斥。 | XIntOrString: {} | |
command string array | 入口点数组,不在 shell 中执行。若未提供则使用容器镜像的 ENTRYPOINT。支持变量引用 更多信息:https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell | ||
args string array | 入口点的参数。若未提供则使用容器镜像的 CMD。支持变量引用 更多信息:https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell | ||
ports ContainerPort array | 容器暴露的端口列表。此处声明端口主要用于提供信息,不声明不代表该端口无法访问。容器内监听默认 "0.0.0.0" 地址的端口均可从网络访问。更新后不可修改。 | ||
env EnvVar array | 容器中设置的环境变量列表。更新后不可修改。 | ||
envFrom EnvFromSource array | 用于填充容器环境变量的来源列表。来源中定义的键名必须是 C_IDENTIFIER。无效的键在容器启动时以事件形式上报。多个来源存在相同键时,以最后一个来源的值为准。与 Env 中重复键的值以 Env 为准。更新后不可修改。 | ||
resources ResourceRequirements | 容器所需的计算资源。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ | ||
podSecurityContext PodSecurityContext | SecurityContext 保存 Pod 级别的安全属性和通用容器设置。 | { fsGroup:1000 fsGroupChangePolicy:Always runAsGroup:1000 runAsUser:1000 supplementalGroups:[1000] } | |
containerSecurityContext SecurityContext | SecurityContext 定义容器运行时的安全选项。若设置,将覆盖 PodSecurityContext 中的同等字段。 更多信息:https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ | { runAsGroup:1000 runAsNonRoot:true runAsUser:1000 } | |
initContainers Container array | 属于 Pod 的初始化容器列表。初始化容器在普通容器启动前按顺序执行。若任一初始化容器失败,Pod 将被视为失败并按 restartPolicy 处理。初始化容器和普通容器的名称在所有容器中必须唯一。初始化容器不支持 Lifecycle 动作、Readiness 探针、Liveness 探针或 Startup 探针。调度时,初始化容器的资源需求按各资源类型取最大请求/限制值,再与普通容器的合计值取较大者。目前初始化容器不支持增删。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ | ||
extraContainers Container array | ExtraContainers 表示要添加到 Pod 中的额外容器。 参见 https://github.com/emqx/emqx-operator/issues/252 | ||
extraVolumes Volume array | 参见 https://github.com/emqx/emqx-operator/pull/72 | ||
extraVolumeMounts VolumeMount array | 参见 https://github.com/emqx/emqx-operator/pull/72 | ||
livenessProbe Probe | 容器存活性的定期探测。探测失败时容器将被重启。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | { failureThreshold:3 httpGet:map[path:/status port:dashboard] initialDelaySeconds:60 periodSeconds:30 } | |
readinessProbe Probe | 容器服务就绪状态的定期探测。探测失败时容器将从服务端点列表中移除。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | { failureThreshold:12 httpGet:map[path:/status port:dashboard] initialDelaySeconds:10 periodSeconds:5 } | |
startupProbe Probe | StartupProbe 表示 Pod 已成功初始化。若指定,在此探测成功之前不会执行其他探测。若探测失败,Pod 将像 livenessProbe 失败一样被重启。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | ||
lifecycle Lifecycle | 管理系统在容器生命周期事件发生时应采取的动作。更新后不可修改。 |
EMQXSpec
EMQXSpec 定义 EMQX 的期望状态
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
image string | EMQX 镜像名称。 更多信息:https://kubernetes.io/docs/concepts/containers/images | ||
imagePullPolicy PullPolicy | 镜像拉取策略,可选 Always、Never、IfNotPresent。指定 :latest 标签时默认为 Always,否则默认为 IfNotPresent。更新后不可修改。 更多信息:https://kubernetes.io/docs/concepts/containers/images#updating-images | ||
imagePullSecrets LocalObjectReference array | ImagePullSecrets 是同命名空间下用于拉取镜像的 Secret 引用列表(可选)。若指定,这些 Secret 将传递给各拉取器实现。 更多信息:https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod | ||
serviceAccountName string | Service Account 名称,用于将 ReplicaSet 或 StatefulSet 与指定的 Service Account 关联以进行身份验证。 更多信息:https://kubernetes.io/docs/concepts/security/service-accounts | ||
bootstrapAPIKeys BootstrapAPIKey array | EMQX bootstrap 用户,更新后不可修改。 | ||
config Config | EMQX 配置 | ||
clusterDomain string | cluster.local | ||
revisionHistoryLimit integer | 为支持回滚而保留的旧 ReplicaSet、旧 StatefulSet 和旧 PersistentVolumeClaim 的数量。使用指针以区分显式零值和未指定。默认值为 3。 | 3 | |
updateStrategy UpdateStrategy | UpdateStrategy 描述 EMQX 蓝绿升级策略的对象 | { evacuationStrategy:map[connEvictRate:1000 sessEvictRate:1000 waitTakeover:10] initialDelaySeconds:10 type:Recreate } | |
coreTemplate EMQXCoreTemplate | CoreTemplate 描述将要创建的 EMQX Core 节点 | { spec:map[replicas:1] } | |
replicantTemplate EMQXReplicantTemplate | ReplicantTemplate 描述将要创建的 EMQX Replicant 节点 | ||
dashboardServiceTemplate ServiceTemplate | DashboardServiceTemplate 描述将要创建的 EMQX Dashboard 服务,该服务始终选择 EMQX Core 节点 | ||
listenersServiceTemplate ServiceTemplate | ListenersServiceTemplate 描述将要创建的 EMQX 监听器服务。若 EMQX Replicant 节点存在,该服务将选择 Replicant 节点;否则选择 Core 节点 |
EMQXStatus
EMQXStatus 定义 EMQX 的观测状态
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
conditions Condition array | 表示 EMQX 自定义资源当前状态的最新可用观测信息。 | ||
coreNodes EMQXNode array | |||
coreNodesStatus EMQXNodesStatus | |||
replicantNodes EMQXNode array | |||
replicantNodesStatus EMQXNodesStatus | |||
nodeEvacuationsStatus NodeEvacuationStatus array |
EvacuationStrategy
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
waitTakeover integer | Minimum: 0 | ||
connEvictRate integer | 仅在 EMQX Enterprise 中生效。 | 1000 | Minimum: 1 |
sessEvictRate integer | 仅在 EMQX Enterprise 中生效。 | 1000 | Minimum: 1 |
KeyRef
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
secretName string | |||
secretKey string | Pattern: ^[a-zA-Z\d-_]+$ |
NodeEvacuationStats
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
initial_sessions integer | |||
initial_connected integer | |||
current_sessions integer | |||
current_connected integer |
NodeEvacuationStatus
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
node string | |||
stats NodeEvacuationStats | |||
state string | |||
session_recipients string array | |||
session_goal integer | |||
session_eviction_rate integer | |||
connection_goal integer | |||
connection_eviction_rate integer |
Rebalance
Rebalance 是 rebalances API 的 Schema
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
apiVersion string | apps.emqx.io/v2beta1 | ||
kind string | Rebalance | ||
metadata ObjectMeta | 请参阅 Kubernetes API 文档了解 metadata 的字段说明。 | ||
spec RebalanceSpec | |||
status RebalanceStatus |
RebalanceCondition
RebalanceCondition 描述 EMQX 重平衡任务的当前状态。
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
type RebalanceConditionType | 重平衡条件类型的状态,可选 Processing、Complete、Failed。 | ||
status ConditionStatus | 条件状态,可选 True、False、Unknown。 | ||
lastUpdateTime Time | 该条件最后一次更新的时间。 | ||
lastTransitionTime Time | 条件最后一次从一个状态转换到另一个状态的时间。 | ||
reason string | 条件最后一次转换的原因。 | ||
message string | 描述转换详情的人类可读消息。 |
RebalanceConditionType
底层类型: string
出现于:
| 字段 | 描述 |
|---|---|
Processing | |
Completed | |
Failed |
RebalanceList
RebalanceList 包含 Rebalance 的列表
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
apiVersion string | apps.emqx.io/v2beta1 | ||
kind string | RebalanceList | ||
metadata ListMeta | 请参阅 Kubernetes API 文档了解 metadata 的字段说明。 | ||
items Rebalance array |
RebalancePhase
底层类型: string
出现于:
| 字段 | 描述 |
|---|---|
Processing | |
Completed | |
Failed |
RebalanceSpec
RebalanceSpec 定义 Rebalance 的期望状态
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
instanceKind string | InstanceKind 用于区分 EMQX 和 EMQXEnterprise。设为 "EMQX" 表示 EMQX CR 为 v2beta1;设为 "EmqxEnterprise" 表示 EmqxEnterprise CR 为 v1beta4。 | EMQX | |
instanceName string | InstanceName 表示 EMQX CR 的名称,仅对 EMQX Enterprise 生效。 | Required: {} | |
rebalanceStrategy RebalanceStrategy | RebalanceStrategy 表示 EMQX 重平衡的策略。 更多信息:https://docs.emqx.com/en/enterprise/v4.4/advanced/rebalancing.html#rebalancing | Required: {} |
RebalanceState
RebalanceState 定义 EMQX 观测到的重平衡状态
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
state string | 表示 EMQX 集群重平衡的状态。 | ||
session_eviction_rate integer | 表示节点会话迁移速率(每秒)。 | ||
recipients string array | 表示重平衡的目标节点。 | ||
node string | 表示重平衡的调度节点。 | ||
donors string array | 表示重平衡的源节点。 | ||
coordinator_node string | 表示当前正在执行重平衡的节点。 | ||
connection_eviction_rate integer | 表示节点连接迁移速率(每秒)。 |
RebalanceStatus
RebalanceStatus 表示 Rebalance 的当前状态
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
conditions RebalanceCondition array | 对象当前状态的最新可用观测信息。Rebalance 失败时条件 type 为 "Failed"、status 为 false;处理中时 type 为 "Processing"、status 为 true;完成时 type 为 "Complete"、status 为 true。 | ||
phase RebalancePhase | 表示 Rebalance 的阶段。 | ||
rebalanceStates RebalanceState array | |||
startedTime Time | 表示重平衡任务开始的时间。 | ||
completedTime Time | 表示重平衡任务完成的时间。 |
RebalanceStrategy
RebalanceStrategy 表示 EMQX 重平衡的策略
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
connEvictRate integer | ConnEvictRate 表示源节点客户端断开速率(每秒),对应 EMQX Rebalancing 中的 conn-evict-rate,值必须大于 0。 | Minimum: 1 Required: {} | |
sessEvictRate integer | SessEvictRate 表示源节点会话迁移速率(每秒),对应 conn-evict-rate,值必须大于 0,默认值为 500。 | 500 | |
waitTakeover integer | WaitTakeover 表示所有连接断开后等待客户端重连并接管会话的时间(秒),对应 wait-takeover,值必须大于 0,默认值为 60 秒。 | 60 | |
waitHealthCheck integer | WaitHealthCheck 表示等待负载均衡器将源节点从活跃后端列表中移除的时间(秒),超过等待时间后重平衡任务启动,对应 wait-health-check,值必须大于 0,默认值为 60 秒。 | 60 | |
absConnThreshold integer | AbsConnThreshold 表示检查连接均衡的绝对阈值,对应 abs-conn-threshold,值必须大于 0,默认值为 1000。 | 1000 | |
relConnThreshold string | RelConnThreshold 表示检查连接均衡的相对阈值,对应 rel-conn-threshold。由于浮点类型在各语言中支持程度不一,该字段定义为字符串类型,值必须大于 "1.0",默认值为 "1.1"。 | 1.1 | |
absSessThreshold integer | AbsSessThreshold 表示检查会话连接均衡的绝对阈值,对应 abs-sess-threshold,值必须大于 0,默认值为 1000。 | 1000 | |
relSessThreshold string | RelSessThreshold 表示检查会话连接均衡的相对阈值,对应 rel-sess-threshold。由于浮点类型在各语言中支持程度不一,该字段定义为字符串类型,值必须大于 "1.0",默认值为 "1.1"。 | 1.1 |
SecretRef
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
key KeyRef | |||
secret KeyRef |
ServiceTemplate
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
enabled boolean | EMQX Operator 将为 EMQX 节点创建服务。使用指针以区分 false 和未指定。 | true | |
metadata ObjectMeta | 请参阅 Kubernetes API 文档了解 metadata 的字段说明。 | ||
spec ServiceSpec | Spec 定义服务的行为。 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
UpdateStrategy
出现于:
| 字段 | 描述 | 默认值 | 校验规则 |
|---|---|---|---|
type string | Recreate | Enum: [Recreate] | |
initialDelaySeconds integer | 启动连接迁移前的等待秒数。 | ||
evacuationStrategy EvacuationStrategy | 连接迁移超时前的等待秒数。 |