潇湘夜雨移动版

主页 > 系统 > 云计算与云原生 >

k8s的容器中环境变量使用注意

1、k8s的环境变量的调用注意顺序

如下在java中变量中调用DD_SERVICE环境变量,因为JAVA_TOOL_OPTIONS在调用变量之前,调用会不成功,最终显示为$(DD_SERVICE)字符串。
      - env:
        - name: DD_ENV
          value: dev
        - name: JAVA_TOOL_OPTIONS
          value: -XX:InitialRAMPercentage=75 -XX:MaxRAMPercentage=75 
            -Dspring.profiles.active=dev -Xms1g -Xmx2g -Dotel.exporter.otlp.endpoint=http://tempo.monitoring.svc.cluster.local:4318  -Dotel.metrics.exporter=none  -Dotel.service.name=$(DD_SERVICE)
        - name: DD_SERVICE
          value: data-transform-manager2

2、java环境变量中调用其它变量使用$(变量名)格式

      - env:
        - name: DD_SERVICE
          value: data-transform-manager
        - name: DD_ENV
          value: dev
        - name: JAVA_TOOL_OPTIONS
          value: -XX:InitialRAMPercentage=75 -XX:MaxRAMPercentage=75
            -Dspring.profiles.active=dev -Xms1g -Xmx2g -Dotel.exporter.otlp.endpoint=http://tempo.monitoring.svc.cluster.local:4318  -Dotel.metrics.exporter=none  -Dotel.service.name=$(DD_SERVICE)
 
3、k8s获取k8s系统接口值作为变量方式

          - name: SW_SERVICE_NAME
            valueFrom:
              fieldRef:
                apiVersion: v1
                fieldPath: "metadata.labels['app']"
          - name: SW_NAMESPACE
            valueFrom:
              fieldRef:
                apiVersion: v1
                fieldPath: metadata.namespace
(责任编辑:liangzh)