跳到主要内容

嘉为蓝鲸WeOps 3.15 技术说明

1、资源需求说明

服务器资源需求

标准架构说明

WeOps采用蓝鲸PaaS+SaaS的基础架构,通过PaaS的管控平台能力和在客户端安装Agent实现纳管,并为企业的IT运维部门提供覆盖资源管理、监控告警、健康扫描、运维工具等多项功能为一体的运维工具,以故障定位和全生命周期管理为核心,持续保障业务连续性。

标准资源需求

服务器资源需求为标准3台架构,推荐配置如下:

序号节点角色推荐操作系统内存推荐配置CPU最低配置数据盘空间(务必划分至/data,建议支持在线扩容)组件清单
1中控机RedHat/CentOS7.9 64位8核32GB200GBiam,ssm,usermgr,gse,license,redis,consul,es7,monitorv3(influxdb-proxy),monitorv3(monitor),monitorv3(grafana)
2APPORedHat/CentOS7.9 64位8核32GB200GBnginx,consul,mongodb,rabbitmq,appo,influxdb(bkmonitorv3),monitorv3(transfer),fta,beanstalk
3APPTRedHat/CentOS7.9 64位8核32GB200GBpaas,cmdb,job,mysql,zk(config),kafka(config),appt,consul,log(api),nodeman(nodeman)

网络权限需求

直连Agent网络需求

直连即客户端Agent与蓝鲸3台服务器直接连接通信,需开通以下网络权限,蓝鲸各组件所在服务器IP请参考“标准资源需求”。

源服务方向目标服务协议端口用途
appo/appt/gse-->agentTCP22节点管理推送Linux-Agent(高危端口,安装完成可关闭)
appo/appt/gse-->agentTCP445节点管理推送Windows-Agent(高危端口,安装完成可关闭)默认情况下,RPC为未指定侦听端口的端点动态分配49152-65535范围内的端口
appo/appt/gse-->agentTCP135节点管理推送Windows-Agent(高危端口,安装完成可关闭)默认情况下,RPC为未指定侦听端口的端点动态分配49152-65535范围内的端口
appo/appt/gse-->agentTCP139节点管理推送Windows-Agent(高危端口,安装完成可关闭)默认情况下,RPC为未指定侦听端口的端点动态分配49152-65535范围内的端口
appo/appt/gse-->agentTCPRPC动态端口节点管理推送Windows-Agent(高危端口,安装完成可关闭)默认情况下,RPC为未指定侦听端口的端点动态分配49152-65535范围内的端口
gse_btsvr-->agentTCP,UDP60020-60030bt传输,主要用于文件传输
agent-->nodemanTCP80、443上报日志/获取配置,蓝鲸下发配置信息
agent-->zkTCP2181获取配置,蓝鲸下发配置信息
agent-->gse_taskTCP48533任务服务端口,主要是监控、批量作业等任务
agent-->gse_taskTCP48668任务服务端口,主要是监控、批量作业等任务
agent-->gse_dataTCP58625数据上报端口,主要是监控数据等
agent-->gse_btsvrTCP58925bt传输,主要用于文件传输
agent-->gse_btsvrTCP59173bt传输,主要用于文件传输
agent-->gse_btsvrTCP,UDP10020bt传输,主要用于文件传输
agent-->gse_btsvrUDP10030bt传输,主要用于文件传输
agent-->nodemanTCP10300nodeman服务回调地址

非直连Agent网络需求

非直连安装Agent即通过Proxy进行网络中转实现Agent和蓝鲸间接互访,一般用于跨云管控或跨网络区域管控,该方案需要在各网络区域准备一台或多台Proxy服务器,资源和网络需求如下,Proxy和Agent之间一般网络是互通的,重点关注蓝鲸和Proxy之间网络开通即可。

角色操作系统CPU配置内存推荐配置数据盘空间场景说明
Proxy服务器RedHat/CentOS 7.964位2核4GB100GB非直连区域纳管需要中转
源服务方向目标服务协议端口用途
Proxy-->PagentTCP22节点管理推送Linux-Agent(高危端口,安装完成可关闭)
Proxy-->PagentTCP445节点管理推送Windows-Agent(高危端口,安装完成可关闭)
Proxy-->PagentTCP135节点管理推送Windows-Agent(高危端口,安装完成可关闭)
Proxy-->PagentTCP139节点管理推送Windows-Agent(高危端口,安装完成可关闭)
Proxy-->PagentTCPRPC动态端口节点管理推送Windows-Agent(高危端口,安装完成可关闭)
Proxy-->PagentTCP,UDP60020-60030bt传输
Pagent-->ProxyTCP17980、17981nginx下载/nginx代理
Pagent-->ProxyTCP48533任务服务端口
Pagent-->ProxyTCP48668任务服务端口
Pagent-->ProxyTCP58625数据上报端口
Pagent-->ProxyTCP58925bt传输
Pagent-->ProxyTCP59173bt传输
Pagent-->ProxyTCP,UDP10020bt传输
Pagent-->ProxyUDP10030bt传输
appo/appt/gse-->ProxyTCP22节点管理推送Linux-Agent(高危端口,安装完成可关闭)
gse_btsvr-->ProxyTCP58930bt传输
gse_btsvr-->ProxyTCP,UDP10020bt传输
gse_btsvr-->ProxyUDP10030bt传输
Proxy-->nodemanTCP80、443上报日志/获取配置
Proxy-->zkTCP2181获取配置
Proxy-->gse_taskTCP48533任务服务端口
Proxy-->gse_taskTCP48668任务服务端口
Proxy-->gse_dataTCP58625数据上报端口
Proxy-->gse_opsTCP58725ping告警数据上报端口
Proxy-->gse_btsvrTCP58930bt传输
Proxy-->gse_btsvrTCP59173bt传输
Proxy-->gse_btsvrTCP,UDP10020bt传输
Proxy-->gse_btsvrUDP10030bt传输
Proxy-->nodemanTCP10300nodeman服务回调地址


2、告警源接入API

1、调用方式

POST

2、调用格式

{

"ip": '10.0.0.1', // 告警对象

"source_time": " 2022-04-13 17:00:53 ", // 告警发生的时间,格式:YYYY-MM-DD HH:mm:ss,必须

"alarm_type": "api_default", // 告警指标,必须

"level": "remain", // 告警级别,必须,枚举:remain/warning/fatal(提醒/警告/致命)

"alarm_name": "FAILURE for production/HTTP", // 告警名称,可选

"alarm_content": "FAILURE for production/HTTP on machine 10.0.0.1", // 告警详情,可选

"meta_info": "结算中心", // 告警其余信息,可选

"action": "firing", // 告警事件动作,可选,不传默认是firing, 枚举:firing/resolved(产生告警/消除告警)

"bk_obj_id": "host", // CMDB模型ID,可选,

"bk_inst_id": 2, // CMDB模型实例ID,可选

}

3、参数列表

参数必须备注
ipY告警对象
source_timeY告警发生的时间,格式:YYYY-MM-DD HH:mm:ss
alarm_typeY告警指标
levelY告警级别
alarm_nameN告警名称
alarm_contentN告警详情
meta_infoN告警其余信息
actionN告警事件动作
bk_obj_idNCMDB模型ID
bk_inst_idNCMDB模型实例ID

备注信息:告警源为REST API的告警,会根据告警源ID+告警对象+告警指标+告警级别,自动生成唯一的告警事件I

4、标准返回字段说明

名称类型说明
resultbool请求成功与否,true:请求成功,false:请求失败
codestring返回状态码:1200为成功,其余为失败
dataobject请求成功返回的数据
messagestring请求失败返回的错误消息

5、调用示例

3、通知支持方式说明

邮件

邮件是相对较为常见的通知方式,对接配置比较简便,需提供一个发件箱,并允许蓝鲸对SMTP服务器的访问权限。参数说明如下:

dest_url: 若用户不擅长用 Python,可以提供一个其他语言的接口,填到dest_url,ESB 仅作请求转发即可打通邮件配置

smtp_host: SMTP 服务器地址 (注意区分企业邮箱还是个人邮箱)

smtp_port: SMTP 服务器端口 (注意区分企业邮箱还是个人邮箱)

smtp_user: SMTP 服务器帐号

smtp_pwd: SMTP 服务器帐号密码 (一般为授权码)

smtp_usessl: 默认为 False

smtp_usetls: 默认为 False

mail_sender: 默认的邮件发送者 (smtp_user 相同)

短信

企业采用的短信服务厂商不尽相同,目前蓝鲸仅支持腾讯云sms服务开箱即用,其他厂商对接需企业提供短信服务接口文档,并在蓝鲸侧做定制适配,以下以腾讯云sms为例列举参数说明:

dest_url: 若用户不擅长用 Python,可以提供一个其他语言的接口,填到 dest_url,ESB 仅作请求转发即可打通短信配置

qcloud_app_id: SDK AppID

qcloud_app_key: App Key

qcloud_sms_sign: 在腾讯云 SMS 申请的签名,比如:腾讯科技

微信公众号

1)微信公众号对接需要满足以下先决条件:

  a)企业需提供一个微信公众号;

  b)蓝鲸平台发布在公网。

2)创建微信公众号:打开微信公众平台(https://mp.weixin.qq.com/)自行注册微信公众号服务号,所在行业选择IT科技/IT软件与服务(和后面的模板消息有关联);

3)添加模板消息

4)统一告警中心配置公众号相关信息:

APPID,AppSecret:在服务号管理后台-开发-基本配置中可获取到

Token:自行设置 (必须是英文或数字, 长度3-32字符)

template_id:在服务号管理后台-功能-模板消息中可获取到

5)然后,在微信服务号管理后台-开发-基本配置,须填写以下参数:

IP白名单:填写统一告警中心服务器出口IP

服务器地址:填写内容为{{alarmcenter_url}}/alarm/mobile/wechat/event/,{{alarmcenter_url}}为统一告警中心地址

令牌(token):上一步中填写的token

消息加解密密钥:不需要设定

消息加解密方式:选择 “明文模式”

6)在服务号管理后台-设置-公众号设置-功能设置,设置网页授权域名处需下载授权文件提供给实施工程师进行蓝鲸服务器Nginx配置,然后填写网页授权域名为paas域名, 即可通过验证。

企业微信

1)企业微信对接需要满足以下先决条件:

  a)统一告警中心SaaS(这里指SaaS所在蓝鲸appo服务器)能够访问外网(统一告警中心的告警会先把消息推送到企业微信服务器,然后企业微信再转发推送到客户的企业微信上,所以蓝鲸服务器需要能够访问公网);

  b)蓝鲸平台的域名需要发布在公网;

  c)外部访问蓝鲸公网域名+端口和在客户内网环境访问蓝鲸域名+端口需要一致,这是由告警中心这个SaaS的底层代码和企信的回调域设置决定的。事实上,告警中心移动端的配置是通过企信扫二维码实现的,这个二维码由SaaS生成,其实质是一个url,这个url只能从内网的蓝鲸服务器获取。因此,企信去访问这个url时,要先访问发布在公网的蓝鲸域名。强烈推荐蓝鲸平台采用https方式部署。

2)逻辑架构参考下图:

3)企业微信对接需在统一告警中心填写以下参数:

企业ID:在企业微信后台“我的企业”中可以获取到;

AgentID,Secret:在应用的基础信息中可以获取到