k8s 如何根据 HOSTNAME 导出不同路径的 gc log

2023-11-01 10:29:39 +08:00
 Hyson2023

有三个 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
885 次点击
所在节点    Kubernetes
4 条回复
julyclyde
2023-11-01 12:31:35 +08:00
收集日志的时候区分 pod 名字啊;产生日志的时候用固定文件名
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.
```
fisherwei
2023-11-01 19:01:26 +08:00
首先,k8s pod 不是自带 HOSTNAME 环境变量么,你为什么要再引入一次
Hyson2023
2023-11-02 09:06:46 +08:00
@fisherwei 因为没生效,所以我又重新定义了一次

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/987361

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX