About Cncf Projects

CNCF Project vs CNCF Member Project 这有什么区别?

Projects

OpenTelemetry

OpenTelemetry 在遇到以下无法解决的问题情况下出现了。

  • 应用程序被锁定在特定解决方案的仪表中
  • 针对开源软件的特定解决方案的仪表基本上是不可能的

于是需要设计一个可观测的系统来解决以上问题,在设计上需要满足基本的需求[4]

  • 要求:独立的仪表(instrumentation,这个翻译总觉得怪异,)、遥测和分析
  • 要求:零依赖性
  • 要求:严格的后向兼容和长期支持

概念

信号 signal

不同类型的遥测,我们称之为信号,主要的信号是追踪

OpenTelemetry 是一个跨领域的关注点(cross-cutting concern)

Instrumentation

仪表(在 《OpenTelemetry 可观测性的未来》这样翻译的)

但是,来自谷歌:the particular instruments used in a piece of music / measuring instruments regarded collectively.

OTLP

OpenTelemetry protocol (OTLP), 定义了 Open Telemetry 里 Tracing\Metrics\Logging 的 protobuf 的协议格式。 比如 Tracing

Propagators and Context

Propagators: Used to serialize and deserialize specific parts of telemetry data such as span context and Baggage in Spans.

Traces can extend beyond a single process. This requires context propagation, a mechanism where identifiers for a trace are sent to remote processes.

otel.SetTextMapPropagator(propagation.TraceContext{})

TextMapPropagator injects values into and extracts values from carries as text.

Carrier

A carrier is the medium used by Propagators to read values from and write values to.

结合 Newrelic Tracing 的实践

OpenTelemetry and Newrelic 结合 , 中间通过 opentelemetry-go 来连接。

也可以通过 opentelemetry-collector (e.g. binary, sidecar, or daemonset). 方式来做。

结合 Alibaba Tracing Analysis(ARMS)的实践

What is Tracing Analysis, 从 Architecture 看是支持 Opentracing Basing SDK

Tracing Analysis is compatible with SDKs from various open source communities and supports the OpenTracing standard.

Apache DolphinScheduler

A distributed and easy-to-extend visual workflow scheduler system, undergoing incubation at ASF.

MegaEase

开源、自主可控、低层本、高可用的 Cloud Native 平台

  • 服务编排和服务治理
  • 流量调度和流量管理
  • 应用服务观测性 & DevOps
  • 关键中间件运维及管理
  • 基础资源调度

参考

  1. OpenTelemetry-可观察性的新时代

  2. CNCF 项目或者成员项目

  3. OpenTelemetry: Propagators API

  4. Ted Young,译者 Jimmy Song: OpenTelemetry可观察性指南

  5. Uptrace: OpenTelemetry instrumentations for Go


·End·
最后修改 June 19, 2022 : add token bucket vs leaky bucket (1270b47)