跳到主要内容

SkyWalking 源码分析 Collector Cluster 集群管理

1. 概述

本文主要分享 SkyWalking Collector Cluster Module,负责集群的管理,即 Collector 节点的注册于发现。

> 友情提示:建议先阅读 《SkyWalking 源码分析 —— Collector 初始化》 ,以了解 Collector 组件体系。

Cluster Module 在 SkyWalking 架构图处于如下位置( 红框 ) :

> FROM https://github.com/apache/incubating-skywalking > >  

下面我们来看看整体的项目结构,如下图所示 :

 

  • collector-cluster-define :定义集群管理接口。

  • collector-cluster-standalone-provider :基于 H2 的 集群管理实现。该实现是单机版,建议仅用于 SkyWalking 快速上手,生产环境不建议使用

  • collector-cluster-redis-provider :基于 Redis 的集群管理实现。目前暂未完成

  • collector-cluster-zookeeper-provider :基于 Zookeeper 的集群管理实现。生产环境推荐使用

下面,我们从接口到实现的顺序进行分享。

2. collector-cluster-define

collector-cluster-define :定义集群管理接口。项目结构如下 :