我们正在审查GCP中的托管(Istio),它们不是lightstep的直接安装程序,因此我们试图将跟踪从特使推送到英特尔收集器进程,并将其导出到Lightstep,该配置如下所示
---
apiVersion: v1
kind: ConfigMap
metadata:
name: otel-collector-conf
labels:
app: opentelemetry
component: otel-collector-conf
data:
otel-collector-config: |
receivers:
zipkin:
endpoint:
processors:
batch:
memory_limiter:
# 80% of maximum memory up to 2G
limit_mib: 400
# 25% of limit up to 2G
spike_limit_mib: 100
check_interval: 5s
extensions:
zpages: {}
memory_ballast:
# Memory Ballast size should be max 1/3 to 1/2 of memory.
size_mib: 165
exporters:
logging:
loglevel: debug
otlp:
endpoint: 10.x.x.19:8184
insecure: true
headers:
"lightstep-access-token": "xxx"
service:
extensions: [zpages, memory_ballast]
pipelines:
traces:
receivers: [zipkin]
processors: [memory_limiter, batch]
exporters: [otlp]
---
apiVersion: v1
kind: Service
metadata:
name: otel-collector
labels:
app: opentelemetry
component: otel-collector
spec:
ports:
- name: otlp-grpc # Default endpoint for OpenTelemetry gRPC receiver.
port: 4317
protocol: TCP
targetPort: 4317
- name: otlp-http # Default endpoint for OpenTelemetry HTTP receiver.
port: 4318
protocol: TCP
targetPort: 4318
- name: metrics # Default endpoint for querying metrics.
port: 8888
- name: zipkin # Default endpoint for OpenTelemetry HTTP receiver.
port: 9411
protocol: TCP
targetPort: 9411
selector:
component: otel-collector
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: otel-collector
labels:
app: opentelemetry
component: otel-collector
spec:
selector:
matchLabels:
app: opentelemetry
component: otel-collector
minReadySeconds: 5
progressDeadlineSeconds: 120
replicas: 1 #TODO - adjust this to your own requirements
template:
metadata:
labels:
app: opentelemetry
component: otel-collector
spec:
containers:
- command:
- "/otelcol"
- "--config=/conf/otel-collector-config.yaml"
image: otel/opentelemetry-collector:latest
name: otel-collector
resources:
limits:
cpu: 1
memory: 2Gi
requests:
cpu: 200m
memory: 400Mi
ports:
- containerPort: 55679 # Default endpoint for ZPages.
- containerPort: 4317 # Default endpoint for OpenTelemetry receiver.
- containerPort: 14250 # Default endpoint for Jaeger gRPC receiver.
- containerPort: 14268 # Default endpoint for Jaeger HTTP receiver.
- containerPort: 9411 # Default endpoint for Zipkin receiver.
- containerPort: 8888 # Default endpoint for querying metrics.
volumeMounts:
- name: otel-collector-config-vol
mountPath: /conf
volumes:
- configMap:
name: otel-collector-conf
items:
- key: otel-collector-config
path: otel-collector-config.yaml
name: otel-collector-config-vol在9411上公开otel收集器服务,并配置Anthos网格将跟踪发送到服务并将其导出到Ligthstep,所有的otel容器都被打开了,但我在lightstep上没有看到任何痕迹。事实上,我不确定特使的输入是否进入了卡特尔,因为卡特尔的日志是空的。
apiVersion: v1
data:
mesh: |-
extensionProviders:
- name: jaeger
zipkin:
service: zipkin.istio-system.svc.cluster.local
port: 9411
- name: otel
zipkin:
service: otel-collector.otel.svc.cluster.local
port: 9411还在一个部署中部署了jaegar,并向其发送跟踪,这很好,我可以在jaegar UI上查看跟踪。不确定在卡特尔那部分。请帮忙。
发布于 2022-05-26 18:12:31
看看这个链接,https://istio.io/latest/docs/reference/config/istio.mesh.v1alpha1/#MeshConfig-ExtensionProvider
我认为您的配置应该如下所示,默认情况下,otel不会监听端口9411:
apiVersion: v1
data:
mesh: |-
extensionProviders:
- name: jaeger
zipkin:
service: zipkin.istio-system.svc.cluster.local
port: 9411
- name: otel
opencensus:
service: otel-collector.otel.svc.cluster.local
port: 55678今天在我的集群上试了一下,结果成功了。但是,您只能在遥测资源中配置一个跟踪工具,因此我只能使用Jaeger或Otel。该配置如下所示:
apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
name: mesh-default
namespace: istio-system
spec:
tracing:
- providers:
- name: otel
randomSamplingPercentage: 100https://stackoverflow.com/questions/72177184
复制相似问题