add probe and some setup cn docs. (#2280)
This commit is contained in:
parent
b7cb170824
commit
8f866fecd9
|
|
@ -14,7 +14,7 @@ is only used as ingress of the whole cluster, but with the Service Mesh and side
|
|||
|
||||
- **3rd-party instrument library**. SkyWalking accepts other popular used instrument libraries data format. It analysis the
|
||||
data, transfer it to SkyWalking formats of trace, metric or both. This feature starts with accepting Zipkin span data. See
|
||||
[Receiver for other tracers](trace-receiver.md) to know more.
|
||||
[Receiver for other tracers](../setup/backend/backend-receivers.md) to know more.
|
||||
|
||||
You don't need to use **Language based native agent** and **Service Mesh probe** at the same time, because they both collect
|
||||
metric data. As a result of that, your system suffers twice payloads, and the analytic numbers are doubled.
|
||||
|
|
|
|||
|
|
@ -1,2 +1,33 @@
|
|||
## 探针介绍
|
||||
TODO
|
||||
## 探测器介绍
|
||||
在SkyWalking中,探测器代表探针或者被集成到目标系统的SDK库以此负责收集包括跟踪和度量在内的遥测数据。
|
||||
基于目标系统的技术堆栈, 探头可以使用很多不同的方式来做。但它们的最终效果应该是一样的,那就是收集和重新格式化数据, 然后发送到后端。
|
||||
|
||||
大体上看,SkyWalking中有大致三大类型的探测器。
|
||||
- **基于语言的原生探针**. 这种类型的探针运行在目标服务中, 就像用户代码的一部分。 如SkyWalking的Java探针,
|
||||
通过`-javaagent`参数指令在运行时增强代码,`增强(manipulate)`意味着改变和注入到用户的代码。
|
||||
另外一种则是由️目标类库提供的一些钩子(hook)或者拦截等机制。因此,你会发现,这些方法都是基于语言和类库的。
|
||||
|
||||
- **服务网格探测器**. 服务网格探测器将从服务网格中的控制面板(control panel)或者代理(proxy)等sidecar中收集数据。
|
||||
在过去,代理(proxy)只是一个集群的入口,但是现在通过服务网格和sidecar我们可以在此基础上进行观测。
|
||||
|
||||
- **第三方埋点类库**. SkyWalking接收其他主流的埋点类库的数据格式。SkyWalking后端会分析并将这些追踪或者指标数据转换成SkyWalking支持的格式。
|
||||
这些特性会在支持Zipkin span数据的时候提供。查看[针对其他追踪器的接收器](../setup/backend/backend-receivers.md)了解相关信息。
|
||||
|
||||
没有必要同时使用**基于语言的原生探针**和**服务网格探测器**,因为它们都是收集指标数据。
|
||||
这导致的结果就是, 你的系统承受了两次载荷, 因此分析数字将会翻倍。
|
||||
|
||||
这里有几种推荐的使用方式:
|
||||
1. 仅使用**基于语言的原生探针**
|
||||
1. 仅使用**第三方埋点类库**,类似Zipkin生态系统
|
||||
1. 仅使用**服务网格探测器**
|
||||
1. 在**基于语言的原生探针**处于跟踪状态的基础上使用**服务网格探测器**或者**第三方埋点类库**(推荐使用)
|
||||
|
||||
另外,举例说明什么是**处于跟踪状态**?
|
||||
|
||||
默认情况下,**基于语言的原生探针**和**第三方埋点类库**都会发送分布式追踪数据到后端,后端会分析并聚合这些数据。
|
||||
**处于跟踪状态**则意味着后端认为只需保存它们这些比如日志的追踪,并在跟踪和指标之间建立链接,比如`这些追踪属于哪个服务和端点?`。
|
||||
|
||||
## 下一步是什么?
|
||||
- 从[服务自动埋点](service-agent-cn.md),[Manual埋点SDK](manual-sdk-cn.md),[Service Mesh探测器](service-mesh-probe-cn.md)
|
||||
和 [Zipkin接收器](../setup/backend/backend-receivers.md)了解更多。
|
||||
- 在理解探测器之后,可以查看[后端总览](backend-overview-cn.md)来理解分析和存储。
|
||||
|
|
|
|||
|
|
@ -1,2 +1,28 @@
|
|||
## 服务网格探针
|
||||
TODO
|
||||
服务网格探测器通过服务网格中提供的可扩展机制来实现, 如istio。
|
||||
|
||||
## 什么是服务网格?
|
||||
下面引用了Istio的官方文档。
|
||||
> The term service mesh is often used to describe the network of microservices that make up such applications and the interactions between them.
|
||||
As a service mesh grows in size and complexity, it can become harder to understand and manage.
|
||||
Its requirements can include discovery, load balancing, failure recovery, metrics, and monitoring, and often more complex operational requirements
|
||||
such as A/B testing, canary releases, rate limiting, access control, and end-to-end authentication.
|
||||
|
||||
## 探测器从哪里收集数据?
|
||||
Istio是一个很典型的服务网格的设计与实现。其中定义了被广泛使用的**控制面板**和**数据面板**。Istio架构图如下:
|
||||
|
||||
<img src="https://istio.io/docs/concepts/what-is-istio/img/overview/arch.svg"/>
|
||||
|
||||
服务网格探测器可以选择从**控制面板**或**数据面板**收集数据。在Istio中,意味着将从Mixer(控制面板)或者Envoy sidecar(数据面板)收集数据。
|
||||
它们的基础数据是相同的, 探测器收集在每个请求中从客户端和服务器端收集遥测实体。
|
||||
|
||||
## 服务网格如何使后端工作?
|
||||
从这种探测器中国呢可以看到并没有追踪相关的数据,那么SkyWalking为何依然能够正常工作呢?
|
||||
|
||||
服务网格探测器从每次请求中收集遥测数据,因此探测器知道请求的来源、目的、端点、延时和状态。
|
||||
通过这些信息,SkyWalking后端通过结合这些和经过每个节点的来源数据的指标信息得到整体的拓扑图。
|
||||
后端在解析追踪数据的时候需要保持一致的指标信息。因此,正确阐述则是:
|
||||
**服务网格指标是追踪解析器生成的指标。他们是一样的。**
|
||||
|
||||
## 下一步是什么?
|
||||
- 如果你想使用服务网格探测器, 阅读[在Service Mesh中设置SkyWalking](../setup/README.md#on-service-mesh) document.
|
||||
|
|
|
|||
|
|
@ -1,2 +1,34 @@
|
|||
# 安装部署
|
||||
TODO
|
||||
安装部署基于你将要使用哪种方式。如果你还不太理解,请先参考[概念和设计](../concepts-and-designs/README.md)。
|
||||
|
||||
**重要: 请确认受监控的服务器的系统时间和OAP服务的是按保持一致。**
|
||||
|
||||
|
||||
## 下载官方发布版本
|
||||
- 后端,UI和Java探针通过Apache发布,你可以在 [Apache SkyWalking 下载页面](http://skywalking.apache.org/downloads/)找到.
|
||||
|
||||
## 服务中的语言探针
|
||||
|
||||
- [Java探针](service-agent/java-agent/README.md). 介绍了在不改代码的情况下将Java探针安装在服务中。
|
||||
|
||||
|
||||
下面的探针和SDK兼容SkyWalking的格式和协议,但是由第三方维护。
|
||||
你可以去社区的项目中找到发行版和使用方式。
|
||||
|
||||
- [SkyAPM .NET Core 探针](https://github.com/SkyAPM/SkyAPM-dotnet). 请阅读.NET Core 探针文档了解详情。
|
||||
|
||||
- [SkyAPM Node.js 探针](https://github.com/SkyAPM/SkyAPM-nodejs). 请阅读Node.js server side 探针文档了解详情。
|
||||
|
||||
- [SkyAPM PHP SDK](https://github.com/SkyAPM/SkyAPM-php-sdk). 请阅读 PHP 探针文档了解详情。
|
||||
|
||||
## 在服务网格中部署
|
||||
- Istio
|
||||
- [SkyWalking on Istio](istio/README.md). 介绍如何避开Istio Mixer的适配器来运行Skywalking。
|
||||
|
||||
|
||||
## 安装后端
|
||||
参考[后端和前端部署文档](backend/backend-ui-setup.md)来学习和配置,或者开启新特性以在不同场景下使用。
|
||||
|
||||
## 更新日志
|
||||
后端, 前端和Java探针的所有更新可[参考](../../../../CHANGES.md).
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,2 @@
|
|||
# 后端和前端
|
||||
TODO
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
# 配合Istio
|
||||
TODO
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
# 安装Java探针
|
||||
TODO
|
||||
Loading…
Reference in New Issue