kmonitor安装部署

1、解压安装包
执⾏下⾯命令解压后得到monitor⽂件夹,并将脚本⽂件scripts/kmonitor.sh和 scripts/register.sh复制到monitor路径下,最终目录结构如下:
[root@node1 opt]# tar -xvf KMonitor_v2.0.0_linux_amd64.tar.gz
[root@node1 opt]# cd monitor/
[root@node1 monitor]# cp scripts/kmonitor.sh ./
[root@node1 monitor]# cp scripts/register.sh ./
在这里插入图片描述
2、用户管理
2.1 创建kmonitor用户
使⽤system⽤户登陆监控⽬标数据库,执⾏scripts/KmonitorUserInit.sql中语句,创建kmonitor⽤户并进⾏授权

-- 创建监控用户
CREATE USER kmonitor with password 'kmonitor';
-- 添加用户标注
COMMENT ON ROLE kmonitor IS 'kingbase KMonitor user';
-- 授权监控用户
GRANT pg_monitor TO kmonitor;  -- V008R006 
GRANT SYS_SIGNAL_BACKEND TO kmonitor;  -- V008R003 
-- 授权监控用户使用kwr扩展
GRANT USAGE ON SCHEMA perf TO kmonitor;

如未开启kwr插件或不支持kwr插件版本执行以下语句创建perf schema:

CREATE SCHEMA IF NOT EXISTS perf;

2.2 创建tps和qps函数

注:oracle模式执行
-- V008R006(oracle mode)

create or replace function perf.tps()
 returns int as $$
declare
 v1 int8;
 v2 int8;
 v3 int8;
begin
 select sum(xact_commit + xact_rollback) from sys_stat_database into v1;
 perform sys_sleep(1);
 perform sys_stat_clear_snapshot();
 select sum(xact_commit + xact_rollback) from sys_stat_database into v2;
 select v2-v1 into v3;
 return v3;
end;
$$ language plpgsql;
create or replace function perf.qps()
 returns int as $$
declare
 v1 int8;
 v2 int8;
 v3 int8;
begin
 select sum(calls) from sys_stat_msgaccum
 where message = 'Simple Query' or message = 'Execute' into v1;
 perform sys_sleep(1);
 perform sys_stat_clear_snapshot();
 select sum(calls) from sys_stat_msgaccum
 where message = 'Simple Query' or message = 'Execute' into v2;
 select v2-v1 into v3;
 return v3;
end;
$$ language plpgsql;

注:PG模式执行-- V008R006(pg mode)

create or replace function perf.tps()
 returns int as $$
declare
 v1 int8;
 v2 int8;
 v3 int8;
begin
 select sum(xact_commit + xact_rollback) from pg_stat_database into v1;
 perform pg_sleep(1);
 perform pg_stat_clear_snapshot();
 select sum(xact_commit + xact_rollback) from pg_stat_database into v2;
 select v2-v1 into v3;
 return v3;
end;
$$ language plpgsql;
create or replace function perf.qps()
 returns int as $$
declare
 v1 int8;
 v2 int8;
 v3 int8;
begin
 select sum(calls) from pg_stat_msgaccum
 where message = 'Simple Query' or message = 'Execute' into v1;
 perform pg_sleep(1);
 perform pg_stat_clear_snapshot();
 select sum(calls) from pg_stat_msgaccum
 where message = 'Simple Query' or message = 'Execute' into v2;
 select v2-v1 into v3;
 return v3;
end;
$$ language plpgsql;

V008R003版本

create or replace function perf.tps()
 returns int as $$
declare
 v1 int8;
 v2 int8;
 v3 int8;
begin
 select sum(xact_commit + xact_rollback) from sys_stat_database into v1;
 perform sys_sleep(1);
 perform sys_stat_clear_snapshot();
 select sum(xact_commit + xact_rollback) from sys_stat_database into v2;
 select v2-v1 into v3;
 return v3;
end;
$$ language plsql;
create or replace function perf.qps()
    returns int as $$
declare
    v1 int8;
    v2 int8;
    v3 int8;
begin
    select sum(calls) from sys_stat_statements into v1;
    perform sys_sleep(1);
    perform sys_stat_clear_snapshot();
    select sum(calls) from sys_stat_statements into v2;
    select v2-v1 into v3;
    return v3;
end;
$$ language plsql;
-- 授权kmonitor用户对sys_stat_msgaccum视图的查看权限
grant SELECT ON sys_stat_msgaccum to kmonitor ;

2.3 修改kingbase.conf文件
追加以下内容:
shared_preload_libraries = ‘sys_stat_statements’ --已经有的无需添加
sys_stat_statements.track=‘all’
重启集群生效
3、脚本配置
进⼊monitor⽬录下对脚本中参数进⾏修改
3.1 kmonitor.sh
kmonitor端⼝号:默认3000端⼝
在这里插入图片描述
prometheus配置:默认9090端口、存储位置prometheus/data、存储日期15天、存储块最大为512MB
在这里插入图片描述
kingabse_exporter端口号:默认1234端口
在这里插入图片描述
node_exporter端口号:默认9100端口
在这里插入图片描述
consul端口号:默认8501端口、其余为内部通信端口号无特殊情况无需修改
在这里插入图片描述
数据库连接信息:默认端口54321、数据库test、用户kmonitor、密码kmonitor
在这里插入图片描述
alertmanager端口号:默认9093端口
在这里插入图片描述
3.2 register.sh
数据库名称:数据库标识字段,可替换为数据库业务系统名称,单套数据库可不修改,多套数据库时必须修改,否则无法区分集群节点
在这里插入图片描述
集群所属监控用户:区别于数据库用户,该用户为kmonitor登陆用户,无特殊情报禁止修改(默认用户为kingbase情况时,kmonitor仅kingbase用户登陆时可显示监控数据)
在这里插入图片描述
consul端口号:与kmonitor.sh中"CONSUL_HTTP_PORT"变量一致
在这里插入图片描述
node_exporter注册列表:需要严格按照格式添加元素(必须使用IPv4地址),如果为一主一备需要两个节点都部署node_exporter并注册,将ip替换成自己集群ip
在这里插入图片描述
kingbase_exporter注册列表:需要严格按照格式添加元素(必须使用IPv4地址),一套数据库只需部署一个kingbase_exporter连接master节点并注册,将ip替换为主节点ip
在这里插入图片描述
注销列表:需要严格按照格式添加元素(必须使用IPv4地址),如果注册服务时填写错误,需要在此处填写错误服务进行注销
在这里插入图片描述
4、使用监控系统
4.1 启动
在monitor目录下执行下面命令启动KMonitor监控系统(注意:启动命令仅为提交启动命令,应许程序真实启动状态需要查看status参数或查看详细启动日志)
提示:1. 脚本中判断端口是否被占用依赖于netstat命令,如果服务器没有此命令请下载rpm包进行安装
2.alertmanager需要手动配置后才可以启动
3.netstat -anp|grep 端口号 #查看端口占用
[root@node1 monitor]# ./kmonitor.sh start
在这里插入图片描述
4.2 备节点配置
将monitor/node_exporter目录和monitor/kmonitor/certs目录拷贝至备节点,保持目录结构不变(注:先启服务,再拷贝文件)
进入备节点node_exporter目录执行./start.sh 启动服务
4.3 状态
在monitor⽬录下执⾏下⾯命令查看KMonitor监控系统组件状态(注意:查看状态为应⽤程序的进程存活状态)
[root@node1 monitor]# ./kmonitor.sh status
在这里插入图片描述
4.4 停止
在monitor目录下执行下面命令停止KMonitor监控系统组件状态(注意:停止服务依赖于各个应用程序下的pid文件)
[root@node1 monitor]# ./kmonitor.sh stop
在这里插入图片描述
4.5 注册
在monitor目录下执行下面命令进行服务注册与注销,重复提交注册信息会覆盖历史信息,所以填写正确的全量信息即可,不用每次修改增量信息
提示:探针服务必须注册正确,如果有错误信息会影响监控显示
[root@node1 monitor]# ./register.sh
在这里插入图片描述
4.6 登陆
浏览器访问kmonitor配置端口(默认3000)进行用户登陆,admin具有增删改查权限(默认密码K1ngb@se),kingbase用户仅查看权限(默认密码kingbase)
在这里插入图片描述
5. 启动邮箱告警
5.1 配置告警邮箱服务
修改monitor/alertmanager/alertmanager.yml
邮箱发送服务:第3-6行,smtp服务端口、发送名称、邮箱用户名、邮箱密码
在这里插入图片描述
邮箱接收服务:第18行,告警邮件接收地址
在这里插入图片描述
5.2 启动kingbase_alertmanager组件
cd monitor/alertmanager && bash start.sh
在这里插入图片描述
5.3 停止kingabse_alertmanager组件
cd monitor/alertmanager && bash stop.sh
在这里插入图片描述
6. 可视化配置告警规则
6.1 添加告警渠道
使用admin用户登陆或者其他有编辑权限的用户
点击左侧导航栏 “告警”按钮 > 告警渠道
在这里插入图片描述
点击 “添加渠道”
在这里插入图片描述
选择 “Kingbase Alertmanager” 后,填写名称以及alertmanager服务地址,点击“保存”按钮
在这里插入图片描述
6.添加面板
可视化告警配置可以在新建仪表板和已有仪表板中配置,仅支持指定查询不支持变量查询
添加面板
在这里插入图片描述
输入想要配置的告警查询规则
在这里插入图片描述
点击告警选项页,点击创建告警
在这里插入图片描述
填写告警名称,评估规则,告警规则
在这里插入图片描述
选择告警渠道,可根据实际需求追加信息和标签
在这里插入图片描述
保存仪表板
在这里插入图片描述

  • 20
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值