金仓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函数 

 \set SQLTERM /

注: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地址),如果注册服务时填写错误,需要在此处填写错误服务进行注销

 

  1. 使用监控系统

4.1 启动

在monitor目录下执行下面命令启动KMonitor监控系统(注意:启动命令仅为提交启动命令,应许程序真实启动状态需要查看status参数或查看详细启动日志)

提示:1. 脚本中判断端口是否被占用依赖于netstat命令,如果服务器没有此命令请下载rpm包进行安装

  1. alertmanager需要手动配置后才可以启动
  2. 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)

  • 25
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值