有三个 pod ,想为每个 pod 导出单独的 gc log,发现这样配置不生效,是直接字符串替换了,没有传入环境变量,又不想在 dockerfile 中加 HOSTNAME 的环境变量,求助各位大佬怎么配置
env:
- name: HOSTNAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: JAVA_TOOL_OPTIONS
value: -Xloggc:/home/logs/gc.${HOSTNAME}.log
1
julyclyde 2023-11-01 12:31:35 +08:00 1
收集日志的时候区分 pod 名字啊;产生日志的时候用固定文件名
|
2
kebyn 2023-11-01 14:21:40 +08:00
[官方文档]( https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#use-environment-variables-to-define-arguments)有解释,需要使用$(VAR),而不是${VAR}引用变量
``` Note: The environment variable appears in parentheses, "$(VAR)". This is required for the variable to be expanded in the command or args field. ``` |
3
fisherwei 2023-11-01 19:01:26 +08:00
首先,k8s pod 不是自带 HOSTNAME 环境变量么,你为什么要再引入一次
|