金蝶云苍穹巡检工具使用手册V2.0.4
1. 基本概念
1.1 目的
本文档主要介绍金蝶云苍穹运维巡检卫士的产品说明,包括:应用场景、下载安装、使用指南等。旨在方便使用工具的相关运维人员、工程师等快速了解运维巡检卫士的使用方式,帮助其基于运维巡检卫士能够对苍穹环境执行检查,快速发现潜在问题,预防异常发生。
1.2 应用场景
金蝶云苍穹运维巡检卫士提供对苍穹主机、苍穹java进程、k8s、数据库(MySQL、PostgreSQL、MDD)、中间件(Redis、RabbitMQ、Nginx、Zookeeper、ElasticSearch、Kafka、Logstash等)的巡检,帮助运维人员或者工程师快速诊断系统,并提供巡检报告。
2. 安装部署
获取安装包后需要分别安装OpsInspCtl(服务端)和OpsInsp-exporter(采集器)服务。
2.1 安装OpsInspCtl
OpsInspCtl服务只需在一台机器上安装即可,用来执行巡检任务,生成巡检报告。
① 下载OpsInspCtl.tar.gz文件后,在对应的目录下执行解压解压操作:tar -xvzf OpsInspCtl.tar.gz
② 解压完成后,会生成一个workdir的文件目录,在该文件目录下,需要关注以下文件:
input_config.yml:配置文件,运行运维巡检卫士所需的配置信息如主机、密码等信息需要在此配置。
OpsInspCtl :执行巡检任务的二进制文件。
rule:检测规则,可进入后修改对应的规则阈值。
main.log:包括rule判断、巡检上配置文件以及巡检调用接口的日志。通常网络连接问题或者规则解析失败需要获取该文件进行排查。
deploy: 执行自动部署OpsInsp-exporter文件。
pdf.tar:pdf格式的巡检报告,在运行后生成。
report.xlsx: excel格式的巡检报告,在运行后生成。
2.2 自动部署OpsInsp-exporter
前置条件:
版本必须要V1.3及以上
未手动执行OpsInsp-exporter安装
已配置input_config.yml文件,且hosts信息已经填写用户名和密码
服务器支持SSH访问
注意:自动部署OpsInsp-exporter是通过命令将exporter安装文件拷贝到配置文件中hosts填写的机器中,并通过SSH的方式安装部署,需要服务器支持SSH并允许SSH。
在配置好input_config.yml后,在workdir路径下执行以下命令即可完成自动部署OpsInsp-exporter:
./OpsInspCtl deploy -f input_config.yml
说明:自动部署的OpsInsp-exporter程序通常在/opt/OpsInsp-exporter/workdir/目录下
说明:其中x-exporter.log文件主要记录获取指标的信息,如某个指标项巡检失败,可通过该日志进行查询。
2.3 手动安装OpsInsp-exporter
注意:在不满足自动安装OpsInsp-exporter的条件下,需要手动安装
OpsInsp-exporter采集器服务需在每台需要检测的机器上都进行安装,步骤如下:
①下载OpsInsp-exporter.tar.gz文件后,在对应的文件目录下执行解压操作:
tar -xvzf OpsInsp-exporter.tar.gz
说明:其中x-exporter.log文件主要记录获取指标的信息,如某个指标项巡检失败,可通过该日志进行查询。
② 解压完成后,会生成一个workdir的文件目录,切换到该目录下,执行启动脚本:
nohup ./OpsInsp-exporter > output.log 2>&1 &
3. 使用指南
3.1 配置input_config.yml
在安装好运维巡检卫士以后,如需使用,需要先配置input_config.yml文件,配置相关的主机、数据库、中间件等信息,以下为具体的配置信息:
rulePath: ./rule #规则文件路径
report: [excel,pdf] #默认生成报告,多个节点以英文逗号分隔
companyName: xx有限公司 #必填,公司名称,不超过48个字
hosts: #要检测的主机信息,注意:下方k8s 、中间件以及数据库填写的主机IP,都必须在下方登记IP信息
- ip: 172.25.*.* #必填,主机IP
user: "root" #选填,主机登录用户名,自动部署OpsInsp-exporter填写;支持root账号或sudo权限账号(注意:使用sudo账号时,系统的/etc/sudoers里加免密sudo 和 注释 Defaults requiretty 这一行)
password: "kiT2aWzszZYMOT17NqXerb02qhPAl4hfCExO" #选填,主机登录密码,自动部署OpsInsp-exporter填写;输入前请使用加密命令“./OpsInspCtl encrypt ‘password’”进行加密(注意:密码需要带单引号),以下所有密码均需做此加密操作
port: 38014 #必填,采集器端口,默认值为38014,可以在启动exporter时修改,<a href="#" _如何修改采集器默认端口"="" style="">详见常见问题5.1
sshPort: 22 #选填,自动部署OpsInsp-exporter 连接ssh机器端口,默认22
dbMount: [/var] #选填,数据库数据目录挂载点目录列表,如无则不填,多个目录以英文逗号分隔
networkDetectHost: [172.25.*.*] #选填,数据库所在主机地址列表,有数据库才需要填写,多个地址以英文逗号分隔
brandWidth: 100Mb/s #选填,带宽上限,单位MB/s,仅用于检测网卡流量
nicNames: [eth0 ] #选填,对外通信网卡列表,仅用于检测网卡流量,多个网卡以英文逗号分隔
- ip: 172.25.*.* #第二台主机ip,如有依次往下填写
user: "root"
Password: "kiT2aWzszZYMOT17NqXerb02qhPAl4hfCExO"
port: 8014
sshPort: 22
dbMount: [/var]
networkDetectHost: [172.25.*.*]
brandWidth: 100Mb/s
nicNames: [eth0 ]
cosmic: #苍穹相关信息
-namespace: ierp #必填,苍穹mservice所在的k8s 命名空间
k8sMaster: [ 172.17.*.*, 172.19.*.* ] #必填,苍穹k8s Master节点所在的主机IP列表,多个节点以英文逗号分隔
k8sSlave: [ 172.19.*.*, 172.19.*.* ] #选填,苍穹k8s Node所在的主机IP列表,多个节点以英文逗号分隔
middlewares: #以下为中间件相关信息
- type: "redis" #必填,redis检测
user: "root" #必填,redis登录用户名
password: "kiT2aWzszZYMOT17NqXerb02qhPAl4hfCExO" #必填,redis登录密码,需加密
objects:
- serviceIP: 172.25.*.* #必填,redis连接ip
hostIP: 172.25.*.* #必填,redis主机ip
port: 6379 #必填,redis对应的端口
redisCluster: true #选填,true代表按照安装器标准集群的节点检测,会检查7505 7506 7507三个哨兵,同时对redis 6379、6380、6381端口进行检测,不填表示仅检测当前填写端口
- type: "rabbitmq" #必填,rabbitmq检测
objects:
- serviceIP: 172.25.*.* #必填,rabbitmq连接ip
port: "5672" #必填,rabbitmq对应的端口
hostIP: 172.25.*.* #必填,rabbitmq对应的主机ip
- type: "elasticsearch" #必填,elasticsearch检测
user: "zy" #必填,elasticsearch登录用户名
password: "4Hm2MDC5QGFsJ59x5MKalLU7GtIYsQ==" #必填,elasticsearch登录密码,需加密
objects:
- serviceIP: 172.25.*.* #必填,elasticsearch连接ip
port: "9200" #必填,elasticsearch对应的端口
hostIP: 172.25.*.* #必填,elasticsearch对应的主机ip
- type: "postgresql" #必填,postgresql数据库检测
user: "cosmic" #必填,postgresql登录用户名
password: "kiT2aWzszZgPOzsXbfSeiCnf20l5qS6+TcRt" #必填,postgresql登录密码,需加密
objects:
- serviceIP: 172.25.*.*#必填,postgresql连接ip
port: "5432" #必填,postgresql对应端口
hostIP: 172.25.*.* #必填,postgresql对应的主机ip
backupPath: /var/lib/postgresql/data #选填,postgresql逻辑备份路径,仅用于备份目录相关检查
pgMaster: true #必填,【pg单节点部署也必填】,当前节点是否是postgresql Master节点
- serviceIP: 172.25.*.*
port: "5432"
hostIP: 172.25.*.*
backupPath: /data
pgSlave: true #选填,当前节点是否是postgresql Slave节点,如没配置则不填
- serviceIP: 172.25.*.*
port: "5432"
hostIP: 172.25.*.*
backupPath: /var/lib/postgresql/data
pgPAFMonitor: true #选填,当前节点是否是postgresql Monitor节点,如没配置则不填
- type: "mysql" #必填,mysql检测
user: "root" #必填,mysql登录用户名
password: "4Hm2MDC5QGFsJ59x5MKalLU7GtIYsQ==" #必填,mysql登录密码,需加密
objects:
- serviceIP: 172.25.*.* #必填,mysql连接ip
port: "3306" #必填,mysql对应的端口
hostIP: 172.25.*.* #必填,mysql对应的主机ip
mysqlMaster: true #选填,当前节点是否是mysql主数据库,如没配置主从则不填
- serviceIP: 172.25.*.*
port: "3306"
hostIP: 172.25.*.*
mysqlSlave: true #选填,当前节点是否是从数据库,如没配置主从则不填
- type: "logstash" #必填,logstash检测
objects:
- serviceIP: 172.25.*.* #必填,logstash连接ip
port: "9600" #必填,logstash对应端口
hostIP: 172.25.*.* #必填,logstash对应的主机ip
- type: " kafka" #必填, kafka检测
objects:
- serviceIP: 172.25.*.* #必填, kafka连接ip
port: "9092" #必填, kafka对应端口
hostIP: 172.25.*.* #必填, kafka对应的主机ip
- type: "zookeeper" #必填, zookeeper检测
objects:
- serviceIP: 172.25.*.* #必填, zookeeper连接ip
port: "2181" #必填, zookeeper对应端口
hostIP: 172.25.*.* #必填, zookeeper对应的主机ip
- type: "nginx" #必填, nginx检测
objects:
- serviceIP: 172.25.*.* #必填, nginx连接ip
hostIP: 172.25.*.* #必填, nginx对应的主机ip
- type: "mdd" #必填,mdd数据库检测
user: "admin" #必填,mdd登录用户名
password: "kiT2aWzszZgPOzsXbfSeiCnf20l5qS6+TcRt" #必填,mdd登录密码,需加密
objects:
- serviceIP: 172.25.*.* #必填,mdd连接ip
port: "8080" #必填,mdd对应端口
hostIP: 172.25.*.* #必填,mdd对应的主机ip
mddMaster: true #选填,配了主从的master节点,如没配置则不填
- serviceIP: 172.25.*.*
port: "8080"
hostIP: 172.25.*.*
mddSlave: true #选填,配了主从的 slave节点,如没配置则不填
3.2 执行巡检任务,获取巡检报告
① 在配置好巡检信息后,即可执行巡检任务,获取巡检报告,巡检命令如下:
./OpsInspCtl run -f input_config.yml
当看到结束巡检后,即表示巡检任务执行完成
② 巡检完成后,在workdir目录下会生成excel和pdf格式的巡检报告,下载文件到Windows机器。
注意:pdf.tar下载后,需要解压后找到html文件才能获取到pdf文件,具体步骤如下:
步骤一:解压pdf.tar,进入dist文件找到index.html文件
步骤二:点击此index文件,浏览器会自动执行下载该pdf文件,并生成预览文件。
巡检结果excel文件示例
巡检结果pdf文件示例(封面)
巡检结果pdf文件示例(概述)
4. 高级操作
4.1 修改规则文件
如需对检测规则进行更新,可以进入/workdir/rule路径下,执行更新。
说明:此操作请谨慎操作,操作前建议将原文件保存一份。
5. 常见问题
5.1 如何修改采集器默认端口
如果采集器默认端口占用,可进入exporter机器/workdir目录下执行以下操作即可对端口进行修改:
./OpsInsp-exporter -port 端口号
注意:OpsInspCtl(服务端)和OpsInsp-exporter(采集器)的端口要保证网络连通性。
5.2 运维巡检卫士在巡检时是否会影响系统的正常运行
不会。我们数据库的巡检脚本都是轻量级SQL,且只是查询,没有数据库的DML动作。
5.3 自动部署exporter失败是什么原因?
除了要满足自动部署exporter前置条件外,还需要确认input_config.yml文件格式是否正确,如缩进是否对齐等,否则会出现如下类似的报错。
5.4 巡检结果异常级别说明
我们根据问题影响程度将问题异常级别由高到低分别为:严重、错误、警告、提示。异常等级定义如下:
严重级:导致业务系统完全不可用,属于最紧急的运维事件;
错误级:短期内可能不影响系统的继续运行,但近期(1-15天)会导致系统不可用,属于紧急的运维事件;
警告级:不符合最佳实践,可能会出现隐藏Bug;
提示级:不符合最佳实践,但通常不影响系统正常运行。
5.5 巡检项巡检失败,该如何排查?
一般情况下,在对应采集端服务器上/workdir目录下获取x-exporter.log文件进行查询。但如果网络连接问题或者规则解析失败需要获取main.log文件进行排查。
金蝶云苍穹巡检工具使用手册V2.0.4
本文2024-09-23 01:09:45发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-144163.html