在kubernetes中指定另一个pod的地址作为environment var

guicsvcw  于 2023-08-03  发布在  Kubernetes
关注(0)|答案(1)|浏览(120)

我正在尝试向kube中的datadog代理发送一些指标。我还需要每个群集有一个代理。如何为其他Pod指定DD代理的地址?使用向下API似乎是可行的,但似乎行不通。我已经定义了DD代理

....
  containers:
  - image: datadog/agent:latest-jmx
    imagePullPolicy: Always
    name: datadog-agent
....

字符串
想要实现的东西

...
  container:
  ...
  env:
   - name: DD_AGENT_HOSTNAME
     valueFrom:
       fieldRef:
         containerName: datadog-agent # causes the failure, predictably enough
         fieldPath: status.hostIP


如果我在ansible模板中硬编码DD代理的地址,一切都可以正常工作。
有什么想法我可以让kube解析代理pod的IP地址吗?

6qfn3psc

6qfn3psc1#

假设你有一个datadog的服务,只需要使用它的dns名称来转发所有的请求。如果您还没有datadog服务,则需要创建一个其后端选择器等于datadog-agent的服务。dns名称的格式取决于您引用的服务是否在同一名称空间中。关于Kube DNS的更多信息:https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/

相关问题