Author:Skate Time:2014/12/23 數(shù)據(jù)庫(kù)可用率監(jiān)控工具 [root@skatedb66 tmp]# ./db_availability --help usage: Used to view server availability v0.1 ,(C) Copyright Skate 2014 [-h] --host HOST --user USER --passwd PASSWD [--port PORT] [--dbname
Author:Skate
Time:2014/12/23
數(shù)據(jù)庫(kù)可用率監(jiān)控工具
[root@skatedb66 tmp]# ./db_availability --help
usage: Used to view server availability v0.1 ,(C) Copyright Skate 2014
[-h] --host HOST --user USER --passwd PASSWD [--port PORT]
[--dbname DBNAME] --rhost RHOST --ruser RUSER --rpasswd RPASSWD
[--rport RPORT] [--rdbname RDBNAME] [--type TYPE] [--interval INTERVAL]
optional arguments:
-h, --help show this help message and exit
--host HOST = Data configuration center ip address
--user USER = Data configuration center database user
--passwd PASSWD = Data configuration center database passwo【本文來(lái)自鴻網(wǎng)互聯(lián) (http://www.68idc.cn)】rd
--port PORT = Data configuration center database port
--dbname DBNAME = Data configure center database name
--rhost RHOST = Monitored ip address
--ruser RUSER = Monitored database user
--rpasswd RPASSWD = Monitored database password
--rport RPORT = Monitored database port
--rdbname RDBNAME = Monitored database name
--type TYPE = Monitored type(db or host)
--interval INTERVAL = The monitoring time interval, this is very important,
please fill out in strict accordance with the call
interval
[root@skatedb66 tmp]# ./db_availability --host=10.20.0.55 --user=root --passwd=root --port=3306 --dbname=test6 --rhost=10.20.0.56 --ruser=root --rpasswd=root --rport=3306 --rdbname=mysql --type=db --interval 60
ipaddr 10.20.0.56:
database:3306 vailability is :
month 100.0000%
3month 100.0000%
year 100.0000%
total 100.0000%
uptime(s) 1116020
downtime(s) 0
[root@skatedb66 tmp]#
[root@skatedb66 tmp]# ./db_availability --host=10.20.0.55 --user=root --passwd=root --port=3306 --dbname=test6 --rhost=10.20.0.65 --ruser=root --rpasswd=root --rport=3306 --rdbname=mysql --type=db --interval 60
ipaddr 10.20.0.65:
database:3306 vailability is :
month 97.6200%
3month 99.2200%
year 99.8000%
total 99.9800%
uptime(s) 0
downtime(s) 61620
[root@skatedb66 tmp]#
簡(jiǎn)述:
這個(gè)工具可以通過(guò)監(jiān)控得到database和host的最近一個(gè)月,3個(gè)月,一年和所有時(shí)間的內(nèi)的可用率(默認(rèn)在未監(jiān)控時(shí),database和host是可用的,沒(méi)有用uptime/uptime+downtime的方式計(jì)算),而且還可以看到database和host在被監(jiān)控到的時(shí)期的在線和離線時(shí)間。這樣可以了解database和host各個(gè)時(shí)期的使用情況。
使用環(huán)境:
可以監(jiān)控mysql服務(wù)和server的可用率和離線時(shí)間
使用方法:
本工具是通過(guò)把配置監(jiān)控信息寫(xiě)入的監(jiān)控配置中心,然后實(shí)時(shí)分析采集的數(shù)據(jù),可以把這個(gè)工具部署到服務(wù)端,通過(guò)并發(fā)批量檢查大量的database和host
安裝方法:
本工具是用python開(kāi)發(fā)并已經(jīng)打包,可以直接下載使用,沒(méi)有環(huán)境依賴(lài)
特別說(shuō)明:
1. interval參數(shù)特別重要,為了提高可用率的準(zhǔn)確率,這個(gè)間隔時(shí)間的選取必須和本工具被調(diào)用時(shí)間間隔一樣。
配置中心的數(shù)據(jù)庫(kù)腳本:
CREATE TABLE `db_availability` (
`id` INT(11) UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT,
`createtime` DATETIME NULL DEFAULT NULL COMMENT '創(chuàng)建時(shí)間',
`updatetime` DATETIME NULL DEFAULT NULL COMMENT '更新時(shí)間',
`downtime` INT(11) NULL DEFAULT '0' COMMENT '宕機(jī)時(shí)間,計(jì)量單位秒',
`uptime` INT(11) NULL DEFAULT '0' COMMENT '在線時(shí)間,計(jì)量單位秒',
`weekavailability` DECIMAL(10,4) NULL DEFAULT '1.0000' COMMENT '周在線率',
`monthavailability` DECIMAL(10,4) NULL DEFAULT '1.0000' COMMENT '月在線率',
`month3availability` DECIMAL(10,4) NULL DEFAULT '1.0000' COMMENT '3個(gè)月在線率',
`yearavailability` DECIMAL(10,4) NULL DEFAULT '1.0000' COMMENT '年在線率',
`allavailability` DECIMAL(10,4) NULL DEFAULT '1.0000' COMMENT '總在線率',
`type` VARCHAR(50) NULL DEFAULT NULL COMMENT '兩種類(lèi)型:host和db',
`interval` INT(11) NULL DEFAULT NULL COMMENT '時(shí)間間隔,計(jì)量單位秒',
`ipaddr` VARCHAR(50) NULL DEFAULT NULL COMMENT 'IP地址',
`port` VARCHAR(50) NULL DEFAULT NULL,
`hostname` VARCHAR(50) NULL DEFAULT NULL COMMENT '主機(jī)名稱(chēng)',
`idc` VARCHAR(50) NULL DEFAULT NULL COMMENT '所屬I(mǎi)DC',
PRIMARY KEY (`id`),
UNIQUE INDEX `ipaddr_port_type` (`ipaddr`, `port`, `type`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB;
CREATE TABLE `db_downtime_detail` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`ipaddr` VARCHAR(50) NULL DEFAULT NULL COMMENT 'IP地址',
`port` VARCHAR(50) NULL DEFAULT NULL,
`hostname` VARCHAR(50) NULL DEFAULT NULL COMMENT '主機(jī)名稱(chēng)',
`createtime` DATETIME NULL DEFAULT NULL COMMENT '創(chuàng)建時(shí)間',
`interval` INT(11) NULL DEFAULT NULL COMMENT '時(shí)間間隔,計(jì)量單位秒',
`type` VARCHAR(50) NULL DEFAULT NULL COMMENT '宕機(jī)類(lèi)型:host和db',
`idc` VARCHAR(50) NULL DEFAULT NULL COMMENT '所屬I(mǎi)DC',
PRIMARY KEY (`id`),
INDEX `createtime` (`createtime`)
)
COMMENT='宕機(jī)詳細(xì)時(shí)間記錄表'
COLLATE='utf8_general_ci'
ENGINE=InnoDB;
----end----
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com