7.13. 在 Data Grid Operator 订阅中定义环境变量
在创建或编辑订阅时,您可以在 Data Grid Operator 订阅中定义环境变量。
注意
如果使用 Red Hat OpenShift 控制台,您必须首先安装 Data Grid Operator,然后编辑现有订阅。
spec.config.env字段-
包含用于定义环境变量的
name和value字段。 ADDITIONAL_VARS变量-
包含 JSON 数组格式的环境变量名称。
ADDITIONAL_VARS变量的值中的环境变量自动传播到相关 Operator 管理的每个 Data Grid Server pod。
先决条件
- 确保已安装 Operator Lifecycle Manager (OLM)。
-
有一个
oc客户端。
流程
为您的 Data Grid Operator 创建订阅定义 YAML:
-
使用
spec.config.env字段来定义环境变量。 在
ADDITIONAL_VARS变量中,在 JSON 阵列中包含环境变量名称。subscription-datagrid.yaml
apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: datagrid namespace: openshift-operators spec: channel: 8.5.x installPlanApproval: Automatic name: datagrid source: redhat-operators sourceNamespace: openshift-marketplace config: env: - name: ADDITIONAL_VARS value: "[\"VAR_NAME\", \"ANOTHER_VAR\"]" - name: VAR_NAME value: $(VAR_NAME_VALUE) - name: ANOTHER_VAR value: $(ANOTHER_VAR_VALUE)例如,使用环境变量来设置本地时区:
subscription-datagrid.yaml
kind: Subscription spec: ... config: env: - name: ADDITIONAL_VARS value: "[\"TZ\"]" - name: TZ value: "JST-9"
-
使用
为 Data Grid Operator 创建订阅:
oc apply -f subscription-datagrid.yaml
验证
从
subscription-datagrid.yaml中检索环境变量:oc get subscription datagrid -n openshift-operators -o jsonpath='{.spec.config.env[*].name}'
后续步骤
使用
oc edit subscription命令修改环境变量:oc edit subscription datagrid -n openshift-operators-
为确保更改对 Data Grid 集群生效,您必须重新创建现有的集群。通过删除与现有
InfinispanCR 关联的StatefulSet来终止 pod。
- 在 Red Hat OpenShift 控制台中,进入到 Operators > Installed Operators > Data Grid Operator。在 Actions 菜单中,选择 Edit Subscription。