# 高可用运维观测平台部署手册

# 1.系统拓扑图

1723538122955.png

部署设计特点:

  • 运维监控服务部署在客户内网不对外发布
  • 指标数据拉取、链路数据推送均工作在内网段
  • 数据传输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最新版本下载地址中获取 1728870413905.png

注意:OA低版本也使用最新的观测平台部署包,同时需要联系研发获取对应的OA补丁包

# 4.安装部署

网络拓扑图:

1728870897424.png

安装流程:

  1. 确认需要监控的服务器、数据库、OA节点等
  2. 在被监控服务器上部署采集端组件
  3. 准备监控服务器,在服务器上部署mysql和redis
  4. 在监控服务器上部署服务端
  5. 将采集端数据接入服务端,最后启动服务

# 4.1采集端部署

将安装包上传至被监控服务所在服务器并解压 **注意:**除服务端以外,采集端部署需要将安装包上传至被监控服务所在服务器,如mysql监控需到mysql服务器上进行采集端组件部署

# 4.1.1 linux服务器采集端部署

运行安装脚本./install.sh,根据提示填写对应的信息,如下图,首先选择【1.部署模式】再选择【1.采集端】,再次输入1 进入采集端部署 1723539458915.png

如下图输入采集端安装目录后回车 (初次部署建议选择全新目录,路径不存在会自动创建) 1723539506081.png

再选择需要部署的监控组件,并填写序号触发对应采集组件部署 根据实际的数据库类型选择对应的监控组件进行部署 1723539527529.png

注意:运行安装脚本时,会根据默认端口检测与当前系统环境是否有端口冲突,并高亮提示;修改端口可以编辑该脚本vim install.sh顶部默认配置进行修改,如果需要部署的组件服务不在冲突端口之内,则可以忽略 1723539543042.png

提示:部分终端环境删除键乱码,可通过ctrl+删除键 删除输错的字符

# 4.1.1.1主机(服务器)监控

监控应用服务器输入【1】,如下图,主机监控部署成功,如不需继续部署,输入【q】退出安装

1723539652590.png

# 4.1.1.2 OA JVM监控

linux: 编辑ApacheJetspeed/bin/catalina_custom.sh 1723539691109.png

windows: 编辑ApacheJetspeed/bin/catalina_custom.bat 1723539708472.png 去掉注释,随后重启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监控 1723539926184.png

Sqlserver监控 1723539942370.png

Oracle监控 1723539956222.png

达梦数据库监控 1723539962257.png

# 4.1.1.4 Redis监控

1723539981818.png

在各个服务器分别部署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 默认端口可编辑启动脚本修改

1723540455442.png

启动后,可通过浏览器访问 http://ip:9182/metrics 查看数据指标,如果有数据,代表部署成功

# 4.1.2.2Mysql监控

解压mysqld_exporter-0.14.0.windows-amd64.zip 编辑mysqld_exporter.conf配置文件,输入被监控mysql的地址端口、账号密码 运行启动脚本start_mysqld_exporter.bat(可修改默认端口)

1723540533283.png

启动后,可通过浏览器访问 http://ip:19104/metrics 查看数据指标,如果有数据,代表部署成功

提示:windows服务器的其他采集端,与linux采集端使用相同服务,请统一部署到linux服务器,并通过网络连接到被监控服务

# 4.2服务端部署

环境准备

准备一台干净的监控服务器,用于部署监控服务端,要求:

  1. linux(如centos7、ubuntu18 lts以上版本)
  2. 操作系统,支持x86_64、aarch64架构
  3. 最低配置:8C16G以上,磁盘可用空间200G以上(默认保留30天监控数据)
  4. 服务端运行需要Mysql(5.7+稳定版)和Redis(3.2+稳定版),请提前准备

服务端依赖Mysql和redis,可以和监控服务端部署在一起(mysql、redis安装可参考协同部署手册),也可以另行单独部署,但不得与OA服务共用一套环境

注意: 监控服务器时间需要与客户端时间一致,否则无法正常查看监控数据,建议使用时间同步服务 禁止修改服务器时间使时间倒退,该操作会导致监控数据写入异常,并无法启动

# 4.2.1初始化服务端数据库

服务端初始化数据库脚本仅支持mysql

  1. 部署mysql参考在线文档: https://open.seeyoncloud.com/v5doc/34/973/974/976.html

  2. 将安装包上传至监控服务器解压,获取初始化sql与版本更新sql文件(seeyon-apm-init.sql、seeyon-apm-upgrade.sql)

1725328854782.png

连接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.服务端】

1723540803504.png

如下图输入服务端安装路径后回车 (初次部署建议选择全新目录,路径不存在会自动创建)

再填写4.2.1和4.2.2小节准备的mysql和redis服务信息,此步不校验数据库 redis服务连接正确性,填写后如需修改请根据提示修改对应配置信息,到此服务端安装完成。

1723540825357.png

# 4.3监控配置

监控配置过程需要在服务端进行,并保证采集端和服务端均已部署完成;同时服务端组件可以正常访问采集端暴露的端口

在监控服务器上在此运行安装脚本,选择2进入监控配置模式,并输入服务端安装路径 该操作会自动触发配置文件备份操作

1723540862907.png

按提示输入对应序号,可以触发对应监控数据的接入

输入1,并填写已部署的主机监控组件IP地址(多个IP以空格隔开)

1723540891182.png

注意:新输入的组件IP会覆盖原有配置,同时脚本会根据默认的组件端口配置添加到配置文件中,如图

1723540901116.png

其他监控组件配置也类似

注意: 当采集组件部署在windows服务器时,由于sqlserver、oracle、redis没有提供windows的二进制包,因此其采集组件只能部署到linux服务器(如监控服务器)

此时采集组件获取的标签address_ip不是数据库的真实IP,需要我们修改以下配置: 编辑服务端prometheus配置文件 prometheus.yml vim /opt/test_install/Prometheus/prometheus.yml 将下图红框中的 $1 替换为各自实际IP

1723541022057.png

例如:当监控windows环境下的sqlserver时,采集端组件部署在linux服务器上,此时还需要我们修改prometheus.yml配置文件,将sqlserver中address_ip的标签替换成sqlserver服务器的IP(10.10.2.100)

1723541125671.png

# 4.4启动监控系统

全部配置完成后,需要启动所有采集端组件和服务端组件才能正常查看监控数据

# 4.4.1服务端启动

进入安装目录下,执行./start_apm_server_full.sh进行启动服务端 访问地址:http://ip:17000/login 默认账号密码: admin/123456
(登录后请修改默认账号密码) 1723541188309.png

# 4.4.2采集端启动

采集端涉及到主机服务,数据库,redis,分别进入对应安装后的目录,分别执行start_xxxx_xxx.sh启动。 如启动redis采集端,进入redis安装后的目录/ApmCollector/redis_exporter/目录,执行start_redis_exporter.sh

1723541197651.png

启动后检查目录下.log日志是否有报错,并通过浏览器访问http://IP:port/metrics (端口即部署时配置的,可在启动脚本修改)查看是否有监控数据

# 4.5关闭监控系统

每个服务部署成功后,都带有一个启动和关闭脚本,执行脚本进行启停

# 4.6 License授权

观测平台部署完成后需要激活,目前请联系研发获取

# 5.卸载

确认关闭目录服务后,直接删除部署的目录即可正常卸载

创建人:wangyxyf
修改人:wangyxyf