运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统(七)
- #!binbash
- LANG="zh_CN.UTF-8"
- LANG=C
- #mysql info
- mysql_ip='1.1.1.1'
- ##数据库的ip
- mysql_username='root'
- ##数据库的用户名
- mysql_passwd='****'
- ##数据库的密码
- mysql_database='monitor'
- ##登录的数据库
- new_here='shanxi'
- ##需要添加的省份中文拼音
- new_name='陕西'
- ##需要添加省份的中文名称
- old_here='gansu'
- ##已经添加过省份中文拼音
- old_name='甘肃'
- ##已经添加过的省份中文名字
- memory_table=''$new_here'_memory'
- load_table=''$new_here'_load'
- io_table=''$new_here'_io'
- hardware_table=''$new_here'_hardware'
- message_table=''$new_here'_message'
- user_table=''$new_here'_user'
- disk_table=''$new_here'_disk'
- cpu_table=''$new_here'_cpu'
- service_table=''$new_here'_service'
- monitor_dir='/tmp/monitor'
- ##当前php监控存放的位置
- test_dir='/tmp/old'
- ##如果想添加新省份,临时存放的位置
- #create table module
- create_table ()
- {
- #create table memory
- mysql -h $mysql_ip -u$mysql_username -p$mysql_passwd $mysql_database -e "create table $memory_table(id int(10) not null primary key auto_increment,province varchar(30) not null,server varchar(30) not null,ip varchar(20) not null,monitor_server varchar(30) not null,service varchar(20) not null,alert int(10) not null,value int(10) not null,status varchar(10) not null,date datetime)ENGINE=InnoDB DEFAULT CHARSET=utf8;"
- #create table load
- mysql -h $mysql_ip -u$mysql_username -p$mysql_passwd $mysql_database -e "create table $load_table(id int(10) not null primary key auto_increment,province varchar(30) not null,server varchar(30) not null,ip varchar(20) not null,monitor_server varchar(30) not null,service varchar(20) not null,alert int(10) not null,value int(10) not null,status varchar(10) not null,date datetime)ENGINE=InnoDB DEFAULT CHARSET=utf8;"
- #create table io
- mysql -h $mysql_ip -u$mysql_username -p$mysql_passwd $mysql_database -e "create table $io_table(id int(10) not null primary key auto_increment,province varchar(30) not null,server varchar(30) not null,ip varchar(20) not null,monitor_server varchar(30) not null,service varchar(20) not null,alert int(10) not null,value int(10) not null,status varchar(10) not null,date datetime)ENGINE=InnoDB DEFAULT CHARSET=utf8;"
- #create table hardware
- mysql -h $mysql_ip -u$mysql_username -p$mysql_passwd $mysql_database -e "create table $hardware_table(id int(10) not null primary key auto_increment,province varchar(30) not null,server varchar(30) not null,ip varchar(20) not null,monitor_server varchar(30) not null,service varchar(20) not null,alert int(10) not null,value int(10) not null,status varchar(10) not null,date datetime)ENGINE=InnoDB DEFAULT CHARSET=utf8;"
- #create table message
- mysql -h $mysql_ip -u$mysql_username -p$mysql_passwd $mysql_database -e "create table $message_table(id int(10) not null primary key auto_increment,province varchar(30) not null,server varchar(30) not null,ip varchar(20) not null,monitor_server varchar(30) not null,service varchar(20) not null,alert int(10) not null,value int(10) not null,status varchar(10) not null,date datetime)ENGINE=InnoDB DEFAULT CHARSET=utf8;"
- #create table user
- mysql -h $mysql_ip -u$mysql_username -p$mysql_passwd $mysql_database -e "create table $user_table(id int(10) not null primary key auto_increment,province varchar(30) not null,server varchar(30) not null,ip varchar(20) not null,monitor_server varchar(30) not null,service varchar(20) not null,alert int(10) not null,value int(10) not null,status varchar(10) not null,date datetime)ENGINE=InnoDB DEFAULT CHARSET=utf8;"
- #create table disk
- mysql -h $mysql_ip -u$mysql_username -p$mysql_passwd $mysql_database -e "create table $disk_table(id int(10) not null primary key auto_increment,province varchar(30) not null,server varchar(30) not null,ip varchar(20) not null,monitor_server varchar(30) not null,service varchar(20) not null,alert int(10) not null,partition varchar(30) not null,value int(10) not null,status varchar(10) not null,date datetime)ENGINE=InnoDB DEFAULT CHARSET=utf8;"
- #create table cpu
- mysql -h $mysql_ip -u$mysql_username -p$mysql_passwd $mysql_database -e "create table $cpu_table(id int(10) not null primary key auto_increment,province varchar(30) not null,server varchar(30) not null,ip varchar(20) not null,monitor_server varchar(30) not null,service varchar(20) not null,alert int(10) not null,value int(10) not null,status varchar(10) not null,date datetime)ENGINE=InnoDB DEFAULT CHARSET=utf8;"
- #create table service
- mysql -h $mysql_ip -u$mysql_username -p$mysql_passwd $mysql_database -e "create table $service_table(id int(10) not null primary key auto_increment,province varchar(30) not null,server varchar(30) not null,ip varchar(20) not null,monitor_server varchar(30) not null,service varchar(20) not null,status varchar(10) not null,date datetime)ENGINE=InnoDB DEFAULT CHARSET=utf8;"
- }
- #create test directory
- if [ ! -d "$test_dir" ];then
- /bin/mkdir $test_dir
- fi
- #mondiy monitor software module
- mondiy_software ()
- {
- #copy monitor province software
- /usr/bin/rsync -avz $monitor_dir/*$old_here* $test_dir/ >>/dev/null 2>&1
- cd $test_dir
- #rename old_name to here_name
- /usr/bin/rename $old_here $new_here *
- #mondiy old_here and old_name
- sed -i 's/'$old_here'/'$new_here'/g' *$new_here*
- sed -i 's/'$old_name'/'$new_name'/g' *$new_here*
- #mondiy province.php
- sed -i 's/<\/b>/ | <a href="'$new_here'.php">'$new_name'<\/a><\/b>/' $monitor_dir/province.php
- #mondiy warn_province.php
- sed -i 's/<\/b>/ | <a href="'$new_here'_warn.php">'$new_name'<\/a><\/b>/' $monitor_dir/warn_province.php
- #mondiy view_day_province.php
- sed -i 's/<\/b>/ | <a href="'$new_here'_day_view.php">'$new_name'<\/a><\/b>/' $monitor_dir/view_day_province.php
- #mondiy view_month_province.php
- sed -i 's/<\/b>/ | <a href="'$new_here'_month_view.php">'$new_name'<\/a><\/b>/' $monitor_dir/view_month_province.php
- #mondiy view_year_province.php
- sed -i 's/<\/b>/ | <a href="'$new_here'_year_view.php">'$new_name'<\/a><\/b>/' $monitor_dir/view_year_province.php
- #copy test_dir to monitor_dir
- /usr/bin/rsync -avz $test_dir/*$new_here* $monitor_dir/ >>/dev/null 2>&1
- #delete test_dir file
- /bin/rm -rf $test_dir/*$new_here*
- }
- #check table is or not exist
- /usr/bin/mysql -h $mysql_ip -u$mysql_username -p$mysql_passwd $mysql_database -e "desc $io_table">>/dev/null 2>&1
- if [ $? -eq 0 ];then
- echo "$io_table is exist!"
- else
- echo "$io_table is not exist!"
- echo "Do you want to create $new_here table?If you want to create $new_here table,please input:(yes|no)"
- read -t 30 -p "Please input you choose:" choose
- case $choose in
- yes|y)
- echo "Now start creaet $new_here table......"
- create_table
- echo "$new_here table crease finish!"
- echo "Now start to mondiy monitor software......"
- mondiy_software
- echo "$new_name has been added monitor software!"
- ;;
- no|n)
- echo "Your choose is no,so we will to exit!"
- exit
- ;;
- *)
- echo "please input:(yes|no)"
- ;;
- esac
- fi
- #!/bin/bash
- old_dir='/tmp/old_dir'
- ##当前已经存在的数据实体化脚本目录
- new_dir='/tmp/new_dir'
- ##临时存放省份的数据实体化脚本目录
- if [ ! -d "$new_dir" ];then
- mkdir $new_dir
- fi
- for i in gansu tianjin guangxi guizhou hainan hebei hunan qinghai xinjiang henan xizang baotou hubei jiangxi ningxia shanxi
- ##在这里输入你想添加省份的中午拼音
- do
- ls $i.sh>>/dev/null 2>&1
- if [ $? -eq 0 ];then
- echo "$i.sh is exist!"
- else
- echo "$i.sh is not exist!"
- echo "Start to create $i.sh..."
- /usr/bin/rsync -avz $old_dir/gansu.sh $new_dir/$i.sh>>/dev/null 2>&1
- sed -i 's/gansu/'$i'/g' $new_dir/$i.sh
- /usr/bin/rsync -avz $new_dir/$i.sh $old_dir/$i.sh>>/dev/null 2>&1
- fi
- done
运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统(七)相关推荐
- 运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统(二)
现在开始介绍php+mysql+shell监控系统 1.目的 此监控系统主要是通过php+mysql+shell的方式,通过shell脚本对各个机器的其各个服务进行监控,达到及时的了解其各个应用服务的 ...
- 运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统(一)
前言 记得刚来这家公司的时候,我部门就我一个运维工程师,然后就是经理,刚开始公司平台什么监控都没有,在我与经理的努力下,先搭建nagios+cacti监控平台,后来随着公司业务的增加,平台的功能与服务 ...
- 运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统(五)
4.监控视图 主要是通过shell脚本进行收集mysql的数据,然后同gnuplot软件进行数据视图化,然后php加载这些图片到web里显示,用到的php文件为view.php day.php.mon ...
- 运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统(四)
(5)数据库服务器(以甘肃数据库为例,脚本解释参照甘肃web) #!/bin/bash #ip db_ip=$(/sbin/ifconfig eth0|grep "inet addr&quo ...
- 运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统
转载来自:http://dl528888.blog.51cto.com/2382721/1034992 前言 记得刚来这家公司的时候,我部门就我一个运维工程师,然后就是经理,刚开始公司平台什么监控都没 ...
- php自动运维,运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统(五)
include("conn.php"); include("head.php"); include("province.php"); ?&g ...
- linux运维自动化脚本,linux运维自动化shell脚本小工具
linux运维shell 脚本小工具,如要分享此文章,请注明文章出处,以下脚本仅供参考,若放置在服务器上出错,后果请自负 1.检测cpu剩余百分比 #!/bin/bash #Inspect CPU # ...
- Servicehot和你说说运维自动化的那些事儿
2019独角兽企业重金招聘Python工程师标准>>> 运维管理兜兜转转十几余载,大家的运维管理再也不是小米加步枪.人工费力拉线扛服务器的传统时代,如你所知,这些年大家张口闭口谈的都 ...
- 舍本求末的运维自动化技术热潮
运维自动化是2010年开始炒得很热的一个概念,也让很多工程师.用人单位瞎激动了很久,我也跟风学过puppet和python,求职双方也经常在面试时花大量时间谈运维自动化. 但冷静下来想想,所谓自动化, ...
最新文章
- 使用 Eigen 库写第一个程序
- Go如何使用session
- SAP WebClient UI的会话重启原理
- 双绞线直连法如何才能使两台电脑实现共享
- dvd vlc 复制_如何使用VLC翻录DVD
- 结对项目开发-电梯调度
- 关于设置不同linux主机之间ssh免密登录简易方法
- Spring中的@ImportResource
- dubbo服务化最佳实践
- Int VS Integer
- IDEA 访问Maven私服与上传组件
- 炼丹手册——梯度弥散和爆炸
- python 类继承 baseclass_Python:Dataclass继承自base Dataclass,如何将值从base升级到新类?...
- 机器人基础之雅克比矩阵
- vue使用bulma
- Stewart六自由度平台正反解算法
- 吴军三部曲见识(三) 谈谈见识
- 2022-09-29 C++并发编程(二十八)
- Canvas之translate、scale、rotate、skew
- 模仿某招聘网站的Js搜索菜单
热门文章
- python编程从入门到精通实践_《Python编程:从入门到实践》总结_Day01
- linux防火墙多个 多个ip配置,iptables一次性封多个ip,使用ipset 工具
- python控件随窗口变化而适配_python pyqt5 设置控件随窗体拉伸
- 最长公共子序列-动态规划(C/C++)
- php用户同步,ucenter同步用户登录【转】
- ccd视觉定位教程_CCD与CMOS哪个更能推动工业相机市场的发展
- 文件夹在哪里_在Mac电脑上截图和照片放在哪里?
- 计算机二级mysql大题_2016年计算机二级MySQL练习题及答案
- c#点击按钮调出另一个窗体_在类库或winform项目中打开另一个winform项目窗体的方法...
- 美国签证过不了,ICLR 2020搬到埃塞俄比亚,同性恋学者:不去,保命要紧