【发布时间】:2019-05-23 16:49:44
【问题描述】:
我在谷歌云平台上有一个 kubernetes 集群,在它上面,我通过 jaeger-kubernetes templates 的开发设置进行了 jaeger 部署
因为我的目的是像后端存储一样设置elasticsearch,因此,我按照 jaeger-kubernetes github 文档进行了以下操作
- 我已经通过production setup options 创建了服务
这里配置了访问elasticsearch服务器的URL和用户名密码和端口
kubectl create -f https://raw.githubusercontent.com/jaegertracing/jaeger-kubernetes/master/production-elasticsearch/configmap.yml
这里,配置了 elasticsearch 服务的 docker 镜像的下载和它们的卷挂载。
kubectl create -f https://raw.githubusercontent.com/jaegertracing/jaeger-kubernetes/master/production-elasticsearch/elasticsearch.yml
然后,此时我们有一个运行在 9200 和 9300 端口上的弹性搜索服务
kubectl get service elasticsearch [a89fbe2]
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
elasticsearch ClusterIP None <none> 9200/TCP,9300/TCP 1h
- 我已经按照这种方式使用
kubernetes-jaegerproduction templates创建了jaeger组件:
λ bgarcial [~] → kubectl create -f https://raw.githubusercontent.com/jaegertracing/jaeger-kubernetes/master/jaeger-production-template.yml
deployment.extensions/jaeger-collector created
service/jaeger-collector created
service/zipkin created
deployment.extensions/jaeger-query created
service/jaeger-query created
daemonset.extensions/jaeger-agent created
λ bgarcial [~/workspace/jaeger-elastic] at master ?
根据Jaeger architecture,jaeger-collector 和jaeger-query 服务需要访问后端存储。
因此,这些是我在 Kubernetes 集群上运行的服务:
λ bgarcial [~/workspace/jaeger-elastic] at master ?
→ kubectl get services [baefdf9]
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
elasticsearch ClusterIP None <none> 9200/TCP,9300/TCP 3h
jaeger-collector ClusterIP 10.55.253.240 <none> 14267/TCP,14268/TCP,9411/TCP 3h
jaeger-query LoadBalancer 10.55.248.243 35.228.179.167 80:30398/TCP 3h
kubernetes ClusterIP 10.55.240.1 <none> 443/TCP 3h
zipkin ClusterIP 10.55.240.60 <none> 9411/TCP 3h
λ bgarcial [~/workspace/jaeger-elastic] at master ?
- 我要去
configmap.yml弹性搜索文件kubectl edit configmap jaeger-configuration命令,以便尝试编辑它与弹性搜索URL端点相关的内容(可能是?...此时我想这是下一步。 ..)
我执行它:
λ bgarcial [~] → kubectl edit configmap jaeger-configuration
我得到以下编辑条目:
apiVersion: v1
data:
agent: |
collector:
host-port: "jaeger-collector:14267"
collector: |
es:
server-urls: http://elasticsearch:9200
username: elastic
password: changeme
collector:
zipkin:
http-port: 9411
query: |
es:
server-urls: http://elasticsearch:9200
username: elastic
password: changeme
span-storage-type: elasticsearch
kind: ConfigMap
metadata:
creationTimestamp: "2018-12-27T13:24:11Z"
labels:
app: jaeger
jaeger-infra: configuration
name: jaeger-configuration
namespace: default
resourceVersion: "1387"
selfLink: /api/v1/namespaces/default/configmaps/jaeger-configuration
uid: b28eb5f4-09da-11e9-9f1e-42010aa60002
这里...我需要设置我们自己的收集器和查询服务的 URL,它们将与 elasticsearch 后端服务连接吗?
如何在此处设置 elasticsearch IP 地址或 URL?
在jaeger组件中,查询和收集器需要访问存储,但是不知道弹性端点是什么...
server-urls: http://elasticsearch:9200 是正确的端点吗?
我从 kubernetes 和 DevOps 世界开始,如果有人可以在概念上帮助我并指出正确的地址以便将 jaeger 和 elasticsearch 设置为后端存储,我将不胜感激。
【问题讨论】:
标签: elasticsearch kubernetes google-cloud-platform devops jaeger