您的位置:首页 > 运维架构 > Shell

shell输入显示带颜色字体的模块脚本

2017-02-11 07:40 423 查看
颜色变量脚本展示
把文件里的sql文件按从高到下的顺序导进数据库############# 需求 #############依序从上到下把文件里面的每行sql文件导进数据库############# 执行方法 #############sh import_ku.sh 变量1 变量2 变量3变量1:存储数据库脚本文件名的文件变量2:数据库用户名变量3: 数据库密码代码展示
MySQL主从同步监控#此脚本为监控MySQL主从IO和SQL的两个YES,NO代表为不同步#Zabbix一分钟采集一次数据#触为器为大于1则报警#!/bin/bashmysql="/usr/bin/mysql"user="root"password="123456"IO=`$mysql -u$user -p$password -e "show slave status\G" | grep 'Slave_IO_Running:' | awk '{print $2}'`SQL=`$mysql -u$user -p$password -e "show slave status\G" | grep 'Slave_SQL_Running:' | awk '{print $2}'`#[ "$IO" == "Yes" -a "$SQL" == "Yes" ] && echo "1" || echo "2"[ "$IO" == "Yes" -o "$IO" == "Connecting" ] && [ "$SQL" == "Yes" -o "$SQL" == "Connecting" ] && echo "1" || echo "2"#此脚本为监控MySQL主从同步的中继日志点,不变化代表不同步,#Zabbix三分钟采集一次数据#触为器为日志点数字不变化则报警#!/bin/bashmysql="/usr/bin/mysql"user="root"password="123456"Relay=`$mysql -u$user -p$password -e "show slave status\G" | grep 'Relay_Log_Pos:' | awk '{print $2}'`echo $Relay#此脚本为监控MySQL主从同步延迟时间#Zabbix一分钟采集一次数据#触为器为超过3600秒延迟时间则报警#!/bin/bashmysql="/usr/bin/mysql"user="root"password="123456"Seconds=`$mysql -u$user -p$password -e "show slave status\G" | grep 'Seconds_Behind_Master:' | awk '{print $2}'`echo $Seconds上述三个监控脚本写后,在Slave的机器上相应位置放置三个脚本,再去Zabbix Web界面添加监控,设置好Item和Key即可#telnet放到子shell执行退出
#通过telnet监控22端口
#通过nmap监控22端口
#通过nc监控22端口
#通过wget判断www.baidu.com状态是否为200

一健安装Zabbix#!/bin/bash#定义变量Redh="\033[31m"Blueh="\033[36m"Yellow="\033[33m"Tails="\033[0m"Output="echo -e"Document=`dirname $0;pwd`dir=`echo $Document | sed s'/. //'`#加载函数库. /etc/init.d/functions#检查网络$Output --------------------$Blueh【 正在检查网络,请稍候 】$Tails--------------------echoping www.baidu.com -c 3 &> /dev/null[ $? -eq 0 ] && action "网络正常" /bin/true || {action "你的网络不通,请修复你的网络,然后再进行安装" /bin/falseexit 2}echo$Output --------------------$Redh【 准备安装Zabbix 】$Tails-------------------------sleep 3#下载yumrm -rf /etc/yum.repos.d/othermkdir /etc/yum.repos.d/othermv /etc/yum.repos.d/*.repo /etc/yum.repos.d/otherwget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
yum clean allyum makecache#关闭防火墙和selinuxservice iptables stopsetenforce 0chkconfig iptables offsed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux#修改主机名sed -i '2d' /etc/sysconfig/networksed -i '1a HOSTNAME=zabbix' /etc/sysconfig/networkhostname zabbix#服务端安装LAMP环境yum install -y gcc gcc-c++ autoconf httpd php mysql mysql-server php-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-gd php-xml php-ldap php-pear php-xmlrpc mysql-connector-odbc mysql-devel libdbi-dbd-mysql net-snmp-devel curl-devel php-mbstring php-bcmath
mail#服务端配置LAMP使用环境sed -i 's/;date.timezone =/date.timezone = Asia\/Shanghai/g' /etc/php.inised -i 's#max_execution_time = 30#max_execution_time = 300#g' /etc/php.inised -i 's#post_max_size = 8M#post_max_size = 32M#g' /etc/php.inised -i 's#max_input_time = 60#max_input_time = 300#g' /etc/php.inised -i 's/;mbstring.func_overload = 0/mbstring.func_overload = 2/g' /etc/php.iniservice mysqld start;chkconfig mysqld onservice httpd start;chkconfig httpd on#安装Zabbix server服务端groupadd -g 201 zabbixuseradd -g zabbix -u 201 zabbixtar xf zabbix-2.2.2.tar.gz -C /usr/src/cd /usr/src/zabbix-2.2.2/./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurlmakemake install#添加Zabbix到系统服务文件sed -i '$a zabbix-agent 10050/tcp #Zabbix Agent' /etc/servicessed -i '$a zabbix-agent 10050/udp #Zabbix Agent' /etc/servicessed -i '$a zabbix-server 10051/tcp #zabbix Trapper' /etc/servicessed -i '$a zabbix-server 10051/udp #zabbix Trapper' /etc/services#导入zabbix数据库mysqladmin -uroot password 'mysql_pass'mysql -uroot -pmysql_pass -e "create database zabbix default character set utf8;"mysql -uroot -pmysql_pass -e "grant all on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix';"mysql -uroot -pmysql_pass -e "flush privileges;"cd /usr/src/zabbix-2.2.2/database/mysql/mysql -uzabbix -pzabbix zabbix < schema.sqlmysql -uzabbix -pzabbix zabbix < images.sqlmysql -uzabbix -pzabbix zabbix < data.sql#创建链接mkdir /var/log/zabbixchown zabbix.zabbix /var/log/zabbixln -s /usr/local/zabbix/etc /etc/zabbixln -s /usr/local/zabbix/bin/* /usr/bin/ln -s /usr/local/zabbix/sbin/* /usr/sbin/#拷贝service启动脚本cp /usr/src/zabbix-2.2.2/misc/init.d/fedora/core/zabbix_* /etc/init.d/sed -i "s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#g" /etc/init.d/zabbix_serversed -i "s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#g" /etc/init.d/zabbix_agentd#配置zabbix_server.conf服务端文件sed -i 's#LogFile=/tmp/zabbix_server.log#LogFile=/var/log/zabbix/zabbix_server.log#' /etc/zabbix/zabbix_server.confsed -i 's#DBUser=root#DBUser=zabbix#' /etc/zabbix/zabbix_server.confsed -i 's/# DBPassword=/DBPassword=zabbix/' /etc/zabbix/zabbix_server.confservice zabbix_server start#配置zabbix_agentd.conf文件 (监控server本身,如对其他服务器进行监控,配置文件相同)IP=`ifconfig | head -2 | tail -1 | awk '{print $2}' | awk -F':' '{print $2}'`sed -i 's#LogFile=/tmp/zabbix_agentd.log#LogFile=/var/log/zabbix/zabbix_agentd.log#' /etc/zabbix/zabbix_agentd.confsed -i "s/Server=127.0.0.1/Server=127.0.0.1,$IP/" /etc/zabbix/zabbix_agentd.confsed -i "s/ServerActive=127.0.0.1/ServerActive=$IP:10051/" /etc/zabbix/zabbix_agentd.confsed -i 's/# UnsafeUserParameters=0/UnsafeUserParameters=1/' /etc/zabbix/zabbix_agentd.confsed -i 's/Hostname=Zabbix server/Hostname=Zabbix/' /etc/zabbix/zabbix_agentd.confsed -i 's$# EnableRemoteCommands=0$EnableRemoteCommands=1$' /etc/zabbix/zabbix_agentd.confsed -i 's$# Include=/usr/local/etc/zabbix_agentd.conf.d/$Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/$' /etc/zabbix/zabbix_agentd.confservice zabbix_agentd start#拷贝网页文件到apache目录cp /usr/src/zabbix-2.2.2/frontends/php/ /var/www/html/zabbix -rchown -R apache.apache /var/www/html/zabbix#设置zabbix开机启动chkconfig --add zabbix_serverchkconfig --add zabbix_agentdchkconfig zabbix_agentd onchkconfig zabbix_server on#配置邮件发送cat >> /etc/mail.rc <<EOFset from=q123456789@139.comset smtp=smtp.139.comset smtp-auth-user=q123456789@139.comset smtp-auth-password=testset smtp-auth=loginEOFcat >> /etc/postfix/main.cf <<EOFmyhostname = zabbix.test.commyorigin = zabbix.jenkins.commydomain = zabbix.jenkins.commynetworks = 127.0.0.0/8EOF#修改Hosts文件,做域名解析sed -i '1a 127.0.0.1 localhost localhost.localdomain zabbix.test.com zabbix.wsyht.com' /etc/hostssed -i 1d /etc/hosts#设置zabbix在web页面的字体cp $dir/msyhbd.ttf /var/www/html/zabbix/fonts/sed -i "s/define('ZBX_FONT_NAME', 'DejaVuSans');/define('ZBX_FONT_NAME', 'msyhbd');/" /var/www/html/zabbix/include/defines.inc.phpsed -i "39a define('ZBX_GRAPH_FONT_NAME', 'msyhbd');" /var/www/html/zabbix/include/defines.inc.phpsed -i 39d /var/www/html/zabbix/include/defines.inc.php#web登陆$Output $Yellow"[脚本功能]" $Tails$Output $Blueh"安装Zabbix" $Tails$Output $Blueh"安装agentd" $Tails$Output $Blueh"邮件服务配置" $Tails$Output $Blueh"配置PHP支持中文字体" $Tails$Output $Yellow"[浏览器登陆]" $Tails$Output $Redh"http://$IP/zabbix" $Tails$Output 用户名: $Redh"admin" $Tails$Output 密码: $Redh"zabbix" $Tails​
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: