嘉为蓝鲸WeOps 4.14 技术说明
1、资源需求说明
服务器资源需求
标准架构说明
WeOps采用蓝鲸PaaS+SaaS的基础架构,通过PaaS的管控平台能力和在客户端安装Agent实现纳管,并为企业的IT运维部门提供覆盖资源管理、监控告警、健康扫描、运维工具等多项功能为一体的运维工具,以故障定位和全生命周期管理为核心,持续保障业务连续性。
标准资源需求
服务器资源需求为标准3台架构,推荐配置如下:
序号 | 节点角色 | 推荐操作系统 | CPU最低配置 | 内存推荐配置 | 数据盘空间(务必划分至/data,建议支持在线扩容) | 组件清单 |
---|---|---|---|---|---|---|
1 | 中控机 | RedHat/CentOS7.9 64位 | 8核 | 32GB | 200GB | iam,ssm,usermgr,gse,license,redis,consul,es7,monitorv3(influxdb-proxy),monitorv3(monitor),monitorv3(grafana) |
2 | APPO | RedHat/CentOS7.9 64位 | 8核 | 32GB | 200GB | nginx,consul,mongodb,rabbitmq,appo,influxdb(bkmonitorv3),monitorv3(transfer),fta,beanstalk |
3 | APPT | RedHat/CentOS7.9 64位 | 8核 | 32GB | 200GB | paas,cmdb,job,mysql,zk(config),kafka(config),appt,consul,log(api),nodeman(nodeman) |
网络权限需求
纳管对象 | 源地址 | 方向 | 目标地址 | 协议 | 端口 | 用途 |
---|---|---|---|---|---|---|
直连主机 | linux | nodeman --> agent | TCP | 22 | SSH协议,节点管理推送Linux-Agent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | |
windows | nodeman --> agent | TCP | 135,137,139 | RPC协议,节点管理推送Windows-Agent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | ||
TCP | 445 | SMB协议,节点管理推送Windows-Agent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | ||||
TCP | 1025-5000 | RPC动态端口(WinSvr08或以前),节点管理推送Windows-Agent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | ||||
TCP | 49152-65535 | RPC动态端口(WinSvr08R2之后),节点管理推送Windows-Agent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | ||||
linux/windows | gse_btsvr --> agent | TCP | 60020-60030 | BT传输 | ||
agent --> nodeman | TCP | 80,443 | 节点管理后台Nginx端口,用于介质下载、上报日志、获取配置 | |||
TCP | 10300 | 节点管理后台CallBack端口,用于回调获取配置 | ||||
agent --> zk | TCP | 2181 | agent从zk获取GSE配置 | |||
agent --> gse_task | TCP | 48533 | GSE任务服务端口 | |||
agent --> gse_data | TCP | 58625 | GSE数据上报端口 | |||
agent --> gse_btsvr | TCP | 59173 | BT传输 | |||
agent --> gse_btsvr | TCP,UDP | 10020 | BT传输 | |||
agent --> gse_btsvr | UDP | 10030 | BT传输 | |||
非直连主机 | linux | Proxy --> Pagent | TCP | 22 | SSH协议,节点管理推送Linux-Pagent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | |
windows | Proxy --> Pagent | TCP | 135,137,139 | RPC协议,节点管理推送Windows-Pagent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | ||
TCP | 445 | SMB协议,节点管理推送Windows-Pagent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | ||||
TCP | 1025-5000 | RPC动态端口(WinSvr08或以前),节点管理推送Windows-Pagent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | ||||
TCP | 49152-65535 | RPC动态端口(WinSvr08R2之后),节点管理推送Windows-Pagent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | ||||
linux/windows | nodeman --> Proxy | TCP | 22 | SSH协议,节点管理推送Linux-Pagent(仅用于一次性远程安装,可临时开通,手动安装可不开通) | ||
gse_btsvr --> Proxy | TCP | 60020-60030 | BT传输 | |||
Proxy --> Pagent | ||||||
Pagent --> Proxy | TCP | 17980,17981 | Proxy CallBack 端口,用于转发Pagent的回调 | |||
Proxy --> nodeman | TCP | 80,443 | 节点管理后台Nginx端口,用于介质下载、上报日志、获取配置 | |||
TCP | 10300 | 节点管理后台CallBack端口,用于回调获取配置 | ||||
Proxy --> zk | TCP | 2181 | Proxy从zk获取GSE配置 | |||
Pagent --> Proxy | TCP | 48533 | GSE任务服务端口 | |||
Proxy --> gse_task | ||||||
Pagent --> Proxy | TCP | 58625 | GSE数据上报端口 | |||
Proxy --> gse_data | ||||||
Pagent --> Proxy | TCP | 58725 | Ping告警数据上报端口 | |||
Pagent --> Proxy | TCP | 59173 | BT传输 | |||
Proxy --> gse_btsvr | ||||||
Pagent --> Proxy | TCP,UDP | 10020 | BT传输 | |||
Proxy --> gse_btsvr | ||||||
Pagent --> Proxy | TCP | 10030 | BT传输 | |||
Proxy --> gse_btsvr | ||||||
云平台 | Vmware | "automate接入点 (如默认区域采集节点)" --> vSphere API | TCP | 443 | 使用HTTPS协议连接vSphere API进行自动发现及监控采集 | |
腾讯云 | --> CVM API | 使用HTTPS协议连接CVM API进行自动发现及监控采集,采集腾讯云需要访问 *.tencentcloudapi.com的域名 | ||||
阿里云 | --> ECS API | 使用HTTPS协议连接ECS API进行自动发现及监控采集,采集阿里云需要访问 *.aliyuncs.com的域名 | ||||
华为云ManageOne | --> RESTful API | 使用HTTPS协议连接RESTful API进行自动发现及监控采集 | ||||
华为公有云 | --> OpenStack API | 使用HTTPS协议连接OpenStack API进行自动发现及监控采集,采集华为云需要访问 *.myhuaweicloud.com的域名 | ||||
深信服超融合 | --> RESTful API | 使用HTTPS协议连接RESTful API进行自动发现及监控采集 | ||||
网络设备 | 防火墙/路由器/负载均衡/交换机 "weops-proxy接入点 (如默认区域采集节点)" --> 防火墙/路由器/负载均衡/交换机 | UDP | 161 | 使用SNMP协议连接目标网络设备进行自动发现及监控采集 | ||
防火墙/路由器/负载均衡/交换机 --> SNMP Trap服务端 | UDP | 162 | 网络设备通过SNMP Trap向服务端发送告警信息 | |||
硬件设备 | 硬件服务器 "weops-proxy接入点 (如默认区域采集节点)" --> 硬件服务器 | UDP | 161 | 使用SNMP协议连接目标硬件服务器进行监控采集 | ||
UDP | 623 | 使用IPMI协议连接目标硬件服务器进行监控采集 | ||||
K8S | / | K8S集群 --> weops-chart接入点 | TCP | 9093 | 数据回写到WeOps的Prometheus | |
自定义上报 | / | 自定义上报源 --> weops指定自定义上报服务器 | TCP | 10205 | 自定义上报默认端口 |
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、参数列表
参数 | 必须 | 备注 |
---|---|---|
ip | Y | 告警对象 |
source_time | Y | 告警发生的时间,格式:YYYY-MM-DD HH:mm:ss |
alarm_type | Y | 告警指标 |
level | Y | 告警级别 |
alarm_name | N | 告警名称 |
alarm_content | N | 告警详情 |
meta_info | N | 告警其余信息 |
action | N | 告警事件动作 |
bk_obj_id | N | CMDB模型ID |
bk_inst_id | N | CMDB模型实例ID |
备注信息:告警源为REST API的告警,会根据告警源ID+告警对象+告警指标+告警级别,自动生成唯一的告警事件I
4、标准返回字段说明
名称 | 类型 | 说明 |
---|---|---|
result | bool | 请求成功与否,true:请求成功,false:请求失败 |
code | string | 返回状态码:1200为成功,其余为失败 |
data | object | 请求成功返回的数据 |
message | string | 请求失败返回的错误消息 |
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:在应用的基础信息中可以获取到