1 网络代理

1.1 说明

在上一章节的监控中,我们讲到了监控AGENT的安装,同时也讲到了监控AGENT和发布AGENT是两个不同的AGENT。我们讲到我们安装完AGENT之后,Open-C3系统就可以采集所有的主机的监控数据。

监控AGENT监听端口:65110

发布AGENT监听端口:65111

但是现在我们考虑一个问题, 如果企业中划分了很多小的网络,比如VPC,他们之间没有互通怎么办?

如果你的企业中不存在这个问题,可以跳过这个章节。

Open-C3的监控和发布的AGENT,内置代理功能,每个隔离的网络区域中,Open-C3只要能访问这个区域里面其中一台机器,监控和发布的AGENT就能正常工作。

只需要在Open-C3的页面中配置好网段信息,系统就会自动进行代理。

1.2 配置

进到“业务管理”->”代理设置(AGENT安装)”页面。 同时因为代理是和服务树节点是相关的,现在我们配置一个缺省的代理(配置在ROOT服务树节点上)。

点击右上角的➕按钮创建代理。

 

创建代理的时候只需要提供代理的名称

 

代理创建完后,我们需要设置代理的IP和代理的网段。代理的IP就是指这个网络不通的区域,我们需要一台机器能同,这个机器就是代理的IP,一般情况下是个公网IP。

 

添加完代理IP,我们需要添加代理网关,也就是说,Open-C3在遇到这些网段的时候,会从刚才的代理IP进入。

 

网段的配置越精确优先级越高。举个例子:

比如当前你配置了两个区域:

区域A: 代理ip是 100.100.100.1 , 代理的网段是 10.0.0.0/8

区域B: 代理ip是100.100.100.2, 代理的网段是 10.10.10.0/24

当监控系统或者发布系统想调用IP 10.10.10.2 时,它可以匹配上区域A和区域B,但是因为区域B描述的网段更精确,所以会选择区域B中的代理ip 100.100.100.2来代理10.10.10.2。

1.3 关于代理的继承

这里我以发布AGENT举个例子,比如现在我在服务树节点 ROOT.open-c3.test 上配置了一个主机发布流水线【不是KUBERNETES类型的发布】。

那么在给要发布的机器发送指令的时候。 Open-C3系统首先会在 ROOT.open-c3.test 节点的代理配置中找是否有匹配的代理,如果没有,会到它的父节点 ROOT.open-c3查找,如果在没有接着往上找,知道找到ROOT节点。

所以里面存在了一个继承的关系,我们可以在ROOT节点配置全局的代理,如果哪个服务树需要微调,可以在自己本服务树上在进行配置。

监控代理的说明:

我们这里可以想到,发布和监控连接主机的区别。发布的时候,因为发布流水线是配置某个服务树上的,发布AGENT调用的时候就可以很明确的匹配到代理的配置【匹配当前服务树节点的代理配置,如果不匹配就往父节点查找,一直查到到ROOT节点】。 但是监控AGENT调用的时候有一个区别。因为服务器节点可以挂在多个服务树下,然后采集监控数据的时候,我们不会做重复的采集,所以一个节点挂在多个服务树上,但是我们只会采集一次。这样就会导致代理配置不明确的问题,比如一个节点挂在两个服务树上,但是两个服务树对该节点的代理配置以哪个为准?对于这种情况,监控系统默认全部从某个服务树节点获取配置,而不在区分资源挂在了哪个服务树下面。该节点默认是ROOT节点,也可以在系统配置中自己定义。

自定义监控节点的代理服务树节点,到“管理”->”系统参数”下面进行设置:

 

1.4 总结

代理解决了让Open-C3能调用通所有机器和数据库的问题。有了代理功能,企业在使用多隔离网络区域的情况下,只需要极小的调整,就可以让Open-C3可以访问通所有的资源。同时代理功能可以减少网络传输的流量,在跨区域传输文件的时候,每个区域只需要同步一份数据,然后会自动的在区域内部进行分发。