# 高可用运维观测平台部署手册
# 1.系统拓扑图
部署设计特点:
- 运维监控服务部署在客户内网不对外发布
- 指标数据拉取、链路数据推送均工作在内网段
- 数据传输HTTP / HTTPS 协议
访问安全设计特点:
- 访问运维监控服务在管理网段
- 支持HTTP/HTTPS协议
- 支持TLS - x509证书
采集性能、吞吐量指标 不涉及用户敏感数据
# 2.系统默认端口
服务 | 端口 | 用途 | 端口开放规则 |
---|---|---|---|
ApmOps | 17000 | 用户访问监控平台的端口 | 对运维PC开放 |
Prometheus | 19090 | 提供数据查询 | 对运维PC和ApmOps开放 |
Node_exporter | 19100 | 提供数据指标获取接口 | 对Prometheus开放 |
Prosses-exporter | 19256 | 提供数据指标获取接口 | 对Prometheus开放 |
Mysqld_exporter | 19104 | 提供数据指标获取接口 | 对Prometheus开放 |
Mysql_sql_exporter | 19398 | 提供数据指标获取接口 | 对Prometheus开放 |
Sqlserver_exporter | 19399 | 提供数据指标获取接口 | 对Prometheus开放 |
Oracledb_exporter | 19161 | 提供数据指标获取接口 | 对Prometheus开放 |
Redis_exporter | 19121 | 提供数据指标获取接口 | 对Prometheus开放 |
Jmx_exporter | 12345 | 提供数据指标获取接口 | 对Prometheus开放 |
windows_exporter | 8192 | 提供数据指标获取接口 | 对Prometheus开放 |
# 3.获取安装包
通过公司生产盘获取最新安装包,可以从OA最新版本下载地址中获取
注意:OA低版本也使用最新的观测平台部署包,同时需要联系研发获取对应的OA补丁包
# 4.安装部署
网络拓扑图:
安装流程:
- 确认需要监控的服务器、数据库、OA节点等
- 在被监控服务器上部署采集端组件
- 准备监控服务器,在服务器上部署mysql和redis
- 在监控服务器上部署服务端
- 将采集端数据接入服务端,最后启动服务
# 4.1采集端部署
将安装包上传至被监控服务所在服务器并解压 **注意:**除服务端以外,采集端部署需要将安装包上传至被监控服务所在服务器,如mysql监控需到mysql服务器上进行采集端组件部署
# 4.1.1 linux服务器采集端部署
运行安装脚本./install.sh,根据提示填写对应的信息,如下图,首先选择【1.部署模式】再选择【1.采集端】,再次输入1 进入采集端部署
如下图输入采集端安装目录后回车 (初次部署建议选择全新目录,路径不存在会自动创建)
再选择需要部署的监控组件,并填写序号触发对应采集组件部署 根据实际的数据库类型选择对应的监控组件进行部署
注意:运行安装脚本时,会根据默认端口检测与当前系统环境是否有端口冲突,并高亮提示;修改端口可以编辑该脚本vim install.sh
顶部默认配置进行修改,如果需要部署的组件服务不在冲突端口之内,则可以忽略
提示:部分终端环境删除键乱码,可通过ctrl+删除键 删除输错的字符
# 4.1.1.1主机(服务器)监控
监控应用服务器输入【1】,如下图,主机监控部署成功,如不需继续部署,输入【q】退出安装
# 4.1.1.2 OA JVM监控
linux: 编辑ApacheJetspeed/bin/catalina_custom.sh
windows: 编辑ApacheJetspeed/bin/catalina_custom.bat 去掉注释,随后重启OA服务 OA启动成功后可以通过访问http://OA_IP:12345/metrics查看是否有监控数据
# 4.1.1.3 数据库监控
注意:
(1)监控数据库时,建议使用较高权限账号,避免部分数据采集没有权限
mysql: performance_schema.、information_schema. 以及REPLICATION CLIENT, PROCESS
mysql> GRANT SELECT,REPLICATION CLIENT, PROCESS ON *.* TO mysqld_exporter'@'localhost' identified by 'password';
sqlserver: 查看服务器状态 view_server_state 权限以上 oracle: SELECT、CREATE SESSION 、SELECT_CATALOG_ROLE角色等
(2)前期(20240904之前的包)安装脚本没有对特殊字符进行转义,如果密码中带有特殊字符,需要将特殊字符通过url encode转义,再填写入配置文件;(新脚本已对 "@" "#" "%" "^" "&" "/" 字符做转义处理)
根据数据库类型,选择不同的监控,如Mysql监控
Sqlserver监控
Oracle监控
达梦数据库监控
# 4.1.1.4 Redis监控
在各个服务器分别部署mysql、sqlserver、oracle、redis监控组件时,需要提供被监控数据库的IP(可以用127.0.0.1)、端口、用户名、密码等,以便采集组件可以连接对应的数据库获取数据 注意:输入的连接信息不要掺杂空格,密码字段不要使用‘#’等特殊字符
# 4.1.2 Windows服务器采集端部署
Windows环境下采集端部署暂未提供脚本,需直接下载对应服务监控的exporter压缩包
# 4.1.2.1主机监控
解压windows_exporter-0.23.1.zip,双击运行start_windows_exporter.bat 默认端口可编辑启动脚本修改
启动后,可通过浏览器访问 http://ip:9182/metrics 查看数据指标,如果有数据,代表部署成功
# 4.1.2.2Mysql监控
解压mysqld_exporter-0.14.0.windows-amd64.zip 编辑mysqld_exporter.conf配置文件,输入被监控mysql的地址端口、账号密码 运行启动脚本start_mysqld_exporter.bat(可修改默认端口)
启动后,可通过浏览器访问 http://ip:19104/metrics 查看数据指标,如果有数据,代表部署成功
提示:windows服务器的其他采集端,与linux采集端使用相同服务,请统一部署到linux服务器,并通过网络连接到被监控服务
# 4.2服务端部署
环境准备
准备一台干净的监控服务器,用于部署监控服务端,要求:
- linux(如centos7、ubuntu18 lts以上版本)
- 操作系统,支持x86_64、aarch64架构
- 最低配置:8C16G以上,磁盘可用空间200G以上(默认保留30天监控数据)
- 服务端运行需要Mysql(5.7+稳定版)和Redis(3.2+稳定版),请提前准备
服务端依赖Mysql和redis,可以和监控服务端部署在一起(mysql、redis安装可参考协同部署手册),也可以另行单独部署,但不得与OA服务共用一套环境
注意: 监控服务器时间需要与客户端时间一致,否则无法正常查看监控数据,建议使用时间同步服务 禁止修改服务器时间使时间倒退,该操作会导致监控数据写入异常,并无法启动
# 4.2.1初始化服务端数据库
服务端初始化数据库脚本仅支持mysql
部署mysql参考在线文档: https://open.seeyoncloud.com/v5doc/34/973/974/976.html
将安装包上传至监控服务器解压,获取初始化sql与版本更新sql文件(seeyon-apm-init.sql、seeyon-apm-upgrade.sql)
连接mysql,创建apm数据库
mysql -h 127.0.0.1 -P 3306 -uroot -p
> create database apm default character set utf8mb4;
# 到apm库下执行初始化sql文件、版本更新sql文件
> use apm;
> source /app/SeeyonApmInstall/ApmOpsServer/seeyon-apm-init.sql # 注意sql文件跟绝对路径
> source /app/SeeyonApmInstall/ApmOpsServer/seeyon-apm-upgrade.sql
# 4.2.2 准备Redis
监控平台的运行依赖redis,请提前部署好redis数据库,并保证网络可以正常连接 部署redis可参考在线文档: https://open.seeyoncloud.com/v5doc/142/1187/1226.html
# 4.2.3安装部署服务端
运行安装脚本install.sh,根据提示填写对应的信息,如下图,首先选择【1.部署模式】再选择【2.服务端】
如下图输入服务端安装路径后回车 (初次部署建议选择全新目录,路径不存在会自动创建)
再填写4.2.1和4.2.2小节准备的mysql和redis服务信息,此步不校验数据库 redis服务连接正确性,填写后如需修改请根据提示修改对应配置信息,到此服务端安装完成。
# 4.3监控配置
监控配置过程需要在服务端进行,并保证采集端和服务端均已部署完成;同时服务端组件可以正常访问采集端暴露的端口
在监控服务器上在此运行安装脚本,选择2进入监控配置模式,并输入服务端安装路径 该操作会自动触发配置文件备份操作
按提示输入对应序号,可以触发对应监控数据的接入
输入1,并填写已部署的主机监控组件IP地址(多个IP以空格隔开)
注意:新输入的组件IP会覆盖原有配置,同时脚本会根据默认的组件端口配置添加到配置文件中,如图
其他监控组件配置也类似
注意: 当采集组件部署在windows服务器时,由于sqlserver、oracle、redis没有提供windows的二进制包,因此其采集组件只能部署到linux服务器(如监控服务器)
此时采集组件获取的标签address_ip不是数据库的真实IP,需要我们修改以下配置:
编辑服务端prometheus配置文件 prometheus.yml
vim /opt/test_install/Prometheus/prometheus.yml
将下图红框中的 $1 替换为各自实际IP
例如:当监控windows环境下的sqlserver时,采集端组件部署在linux服务器上,此时还需要我们修改prometheus.yml配置文件,将sqlserver中address_ip的标签替换成sqlserver服务器的IP(10.10.2.100)
# 4.4启动监控系统
全部配置完成后,需要启动所有采集端组件和服务端组件才能正常查看监控数据
# 4.4.1服务端启动
进入安装目录下,执行./start_apm_server_full.sh进行启动服务端
访问地址:http://ip:17000/login 默认账号密码: admin/123456
(登录后请修改默认账号密码)
# 4.4.2采集端启动
采集端涉及到主机服务,数据库,redis,分别进入对应安装后的目录,分别执行start_xxxx_xxx.sh启动。 如启动redis采集端,进入redis安装后的目录/ApmCollector/redis_exporter/目录,执行start_redis_exporter.sh
启动后检查目录下.log日志是否有报错,并通过浏览器访问http://IP:port/metrics (端口即部署时配置的,可在启动脚本修改)查看是否有监控数据
# 4.5关闭监控系统
每个服务部署成功后,都带有一个启动和关闭脚本,执行脚本进行启停
# 4.6 License授权
观测平台部署完成后需要激活,目前请联系研发获取
# 5.卸载
确认关闭目录服务后,直接删除部署的目录即可正常卸载