将Jaeger代理连接到在Openshift中运行的收集器

时间:2018-12-10 15:44:19

标签: jaeger

我在将jaeger代理指向以openshift运行的收集器时遇到问题。

我能够浏览我的OCP收集器端点:

 https://mycollectoropenshift.com:443

我的Jaeger代理Dockerfile当前看起来像这样

FROM centos:latest
EXPOSE 5775/udp 6831/udp 6832/udp 5778
COPY agent-linux /go/bin/

#CMD ["--collector.host-port=localhost:14267"]
#CMD ["--collector.host-port=https://mycollectoropenshift.com:443"]
CMD ["--collector.host-port=mycollectoropenshift.com:443"]
ENTRYPOINT ["/go/bin/agent-linux"]

当我将代理指向根据第一条注释行在本地运行的收集器时,会得到预期的结果。

我使用第二个未注释的CMD标志得到以下错误。

error":"dial tcp: address https://mycollectoropenshift.com:443: too many colons in address"

当我尝试代理在openshift上运行的收集器时,出现以下错误

Failed to run the agent: listen tcp 10.100.120.221:443: bind: cannot assign requested address

我能够通过此操作成功卷曲收集器端点

curl https://mycollectoropenshift.com:443

当我尝试以这种方式卷曲端点时,出现以下错误:

curl mycollectoropenshift.com:443
curl: (52) Empty reply from server

我需要帮助来设置正确的--collector.host-port标志,该标志将连接到在HTTPS协议后面远程运行的收集器。

1 个答案:

答案 0 :(得分:0)

我认为目前无法实现,您绝对应该在邮件列表,Gitter或GitHub问题中要求使用此功能。当前的假设是,可以在代理和收集器之间建立清晰的TChannel连接,它们都属于同一受信任网络。

如果您使用的是Java,Node或C#客户端,我的建议是让Jaeger客户端直接与收集器对话。在Client Features文档页面中查找环境变量JAEGER_ENDPOINT