我在将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协议后面远程运行的收集器。
答案 0 :(得分:0)
我认为目前无法实现,您绝对应该在邮件列表,Gitter或GitHub问题中要求使用此功能。当前的假设是,可以在代理和收集器之间建立清晰的TChannel连接,它们都属于同一受信任网络。
如果您使用的是Java,Node或C#客户端,我的建议是让Jaeger客户端直接与收集器对话。在Client Features文档页面中查找环境变量JAEGER_ENDPOINT
。