跳到主要内容

环境变量和占位符

环境变量

Pod 环境变量

以下变量由 KubeBlocks 注入到每个 Pod 中。

名称说明
KB_POD_NAMEK8s Pod 名称
KB_NAMESPACEK8s Pod 命名空间
KB_SA_NAMEKubeBlocks 服务账号名称
KB_NODENAMEK8s 节点名称
KB_HOSTIPK8s 主机 IP 地址
KB_PODIPK8s Pod IP 地址
KB_PODIPSK8s Pod IP 地址
KB_POD_UIDPOD UID (pod.metadata.uid)
KB_CLUSTER_NAMEKubeBlocks 集群 API 对象名称
KB_COMP_NAME运行中 Pod 的 KubeBlocks 集群 API 对象的 .spec.components.name
KB_CLUSTER_COMP_NAME运行中 Pod 的 KubeBlocks 集群 API 对象的 <.metadata.name>-<.spec.components.name>
KB_REPLICA_COUNT运行中 Pod 的组件副本数
KB_CLUSTER_UID运行中 Pod 的 KubeBlocks 集群 API 对象的 metadata.uid
KB_CLUSTER_UID_POSTFIX_8KB_CLUSTER_UID 的最后八位数字
KB_{ordinal}_HOSTNAME运行中 Pod 的主机名,其中 {ordinal} 是 Pod 的序号。
如果工作负载类型为无状态(Stateless),则不适用。
KB_POD_FQDN运行中 Pod 的完全限定域名(FQDN)。
如果工作负载类型为无状态(Stateless),则不适用。

占位符

ComponentValueFrom API

名称说明
POD_ORDINALPod 的序号
POD_FQDNPod 的完全限定域名(FQDN)
POD_NAMEPod 的名称

ConnectionCredential API

名称说明
UUID生成一个随机的 UUID v4 字符串
UUID_B64生成一个随机的 UUID v4 BASE64 编码的字符串
UUID_STR_B64生成一个随机的 UUID v4 字符串,然后进行 BASE64 编码
UUID_HEX生成一个随机的 UUID v4 的 HEX 表示
HEADLESS_SVC_FQDN无头服务的 FQDN 占位符。值为 - $(CLUSTER_NAME)-$(1ST_COMP_NAME)-headless.$(NAMESPACE).svc,其中 1ST_COMP_NAME 是提供 ClusterDefinition.spec.componentDefs[].service 属性的第一个组件。
SVC_FQDN服务的 FQDN 占位符。值为 - $(CLUSTER_NAME)-$(1ST_COMP_NAME).$(NAMESPACE).svc,其中 1ST_COMP_NAME 是提供 ClusterDefinition.spec.componentDefs[].service 属性的第一个组件。
SVCPORT{PORT_NAME}具有指定端口名称的 ServicePort 的端口值。例如,在一个 servicePort 的 JSON struct:
{"name": "mysql", "targetPort": "mysqlContainerPort", "port": 3306} 中,连接凭证值中的 "$(SVC_PORT_mysql)" 为 3306。
RANDOM_PASSWD随机生成的 8 个字符