kubernetes 获取运行代码的pod的名称

j7dteeu8  于 2024-01-06  发布在  Kubernetes
关注(0)|答案(2)|浏览(207)

我试图获取响应来自的pod的名称,而不是pod的名称,我正在获取pod所在的worker节点的名称。我还在YAML中包含了以下代码片段,但我仍然获取了worker节点的名称。请告诉我是否遗漏了什么?

  1. - env:
  2. - name: HOSTNAME
  3. valueFrom:
  4. fieldRef:
  5. apiVersion: v1
  6. fieldPath: metadata.name

字符串
我希望在HOSTNAME值中获得podname而不是worker节点地址。

vxbzzdmp

vxbzzdmp1#

如果您跑步:
oc exec<name_of_the_pod>-- echo $HOSTNAME
你会得到pod的名字,但是因为你需要这个名字来执行命令,我不确定这是否是你要找的。
通过阅读$HOSTNAME变量的值,可以从运行在pod上的容器中获知pod的名称。

krugob8w

krugob8w2#

它可能是从节点继承的$HOSTNAME变量。尝试使用官方Kubernetes $POD_NAME来实现此目的:

  1. env:
  2. - name: POD_NAME
  3. valueFrom:
  4. fieldRef:
  5. fieldPath: metadata.name

字符串
顺便说一句,你可以添加这两个和周围玩:

  1. kubectl exec <name_of_the_pod> -- echo $HOSTNAME
  2. kubectl exec <name_of_the_pod> -- echo $POD_NAME

相关问题