zabbix监控服务部署脚本
搭建平台脚本:
#!/bin/bash
#zabbix监控服务部署
#脚本使用前提:yum搭建,nginx-1.12.2源码包,zabbix-3.4.4源码包,要求源码包尽量在单一目录下,最好在默认管理员家目录下
#数据库主机,名称,账户,密码,日志为默认,不可修改
#选择部署和一键部署的选择需要注释脚本操作,默认为选择部署;一键部署将选择部署的1和2合并
source /root/moudle.sh
while :
do
echo "############################__menu__################################"
echo "1.环境部署"
echo "2.安装监控平台"
echo "3.启动监控服务"
echo "4.部署被监控主机(在被监控主机上)"
echo "5.exit"
echo "####################################################################"
read -p "请输入您要部署的服务:选择部署(1|2|3|4|5);一键部署(1|2|3|4):" select #选择部署
if [ "$select" == "" ];then
install_nginx
elif [ "$select" == "" ];then
install_zabbix
elif [ "$select" == "" ];then
start_zabbix
elif [ "$select" == "" ];then
install_zabbix_webx
elif [ "$select" == "" ];then
exit
else
echo "I AM SORRY"
fi #一键部署
#if [ $select == "1" ];then
# install_nginx;install_zabbix
#elif [ $select == "2" ];then
# start_zabbix
#elif [ $select == "3" ];then
# install_zabbix_webx
#elif [ "$select" == "4" ];then
# exit
#else
# echo "I AM SORRY"
#fi
done
执行脚本:/root/moudle.sh
#!/bin/bash
#函数定义
install_nginx()
{
yum -y install gcc pcre-devel zlib-devel openssl-devel if [ -f */nginx-1.12..tar.gz ];then
find / -name "nginx-1.12.2.tar.gz" > /.txt && sed -i 's/\/nginx-1.12.2.tar.gz//' /.txt
cd `cat /.txt`
tar -xf nginx-1.12..tar.gz
cd nginx-1.12.
./configure --with-http_ssl_module
make && make install
else
echo "没有nginx源码包"
exit
fi yum -y install php php-mysql mariadb mariadb-server mariadb-devel php-fpm sed -i '65,68s/#//' /usr/local/nginx/conf/nginx.conf
sed -i '70,71s/#//' /usr/local/nginx/conf/nginx.conf
sed -i '/fastcgi/,70s/_params/.conf/' /usr/local/nginx/conf/nginx.conf systemctl start mariadb
systemctl start php-fpm
/usr/local/nginx/sbin/nginx
ss -untlp | grep : >/dev/null
if [ $? -eq ];then
echo "环境部署完毕,请进行监控平台安装"
else
echo "部署失败,请检查!"
fi
} install_zabbix()
{
yum -y install net-snmp-devel curl-devel libevent-devel if [ -f */zabbix-3.4..tar.gz ];then
find / -name "zabbix-3.4.4.tar.gz" > /.txt ; sed -i '2,100d' /.txt ; sed -i '1s/\/zabbix-3.4.4.tar.gz//' /.txt
cd `cat /.txt`
tar -xf zabbix-3.4..tar.gz
cd zabbix-3.4.
./configure \
--enable-server --enable-proxy --enable-agent \
--with-mysql=/usr/bin/mysql_config \
--with-net-snmp --with-libcurl
make install
else
echo "没有zabbix源码包"
exit
fi cd frontends/php/
cp -a * /usr/local/nginx/html/
chmod -R /usr/local/nginx/html/* sed -i "/keepalive_timeout 65;/a fastcgi_buffers 8 16k;\nfastcgi_buffer_size 32k;\nfastcgi_connect_timeout 300;\nfastcgi_send_timeout 300;\nfastcgi_read_timeout 300;" /usr/local/nginx/conf/nginx.conf
/usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx echo "开始数据库配置,请耐心等待......"
mysql -e "create database zabbix character set utf8"
mysql -e "grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix'"
cd `cat /1.txt`
cd zabbix-3.4.4/database/mysql/
mysql -uzabbix -pzabbix zabbix < schema.sql
mysql -uzabbix -pzabbix zabbix < images.sql
mysql -uzabbix -pzabbix zabbix < data.sql cd /root/
yum -y install php-gd php-xml php-ldap php-bcmath php-mbstring sed -i '/;date.timezone/s/;date.timezone =/date.timezone = Asia\/Shanghai/' /etc/php.ini
sed -i '/max_exe/s/30/300/' /etc/php.ini
sed -i '/post_max/s/8/32/' /etc/php.ini
sed -i '/^max_input/s/60/300/' /etc/php.ini systemctl restart php-fpm
ip=`ifconfig eth1 | awk '/inet/ {print $2}'`
echo "请访问http://$ip/index.php进行监控平台配置"
} start_zabbix()
{
sed -i '/^# DBHost/s/#//' /usr/local/etc/zabbix_server.conf
sed -i '/^# DBPassword/s/# DBPassword=/DBPassword=zabbix/' /usr/local/etc/zabbix_server.conf
useradd zabbix
zabbix_server
netstat -utnlp | grep :10051 &>/dev/null
if [ $? -eq 0 ];then
echo "监控启动成功"
else
echo "失败,请检查"
fi
} install_zabbix_webx()
{
yum -y install gcc pcre-devel if [ -f */zabbix-3.4..tar.gz ];then
find / -name "zabbix-3.4.4.tar.gz" > /.txt ; sed -i '2,100d' /.txt ; sed -i '1s/\/zabbix-3.4.4.tar.gz//' /.txt
cd `cat /.txt`
tar -xf zabbix-3.4..tar.gz
cd zabbix-3.4.
./configure --enable-agent
make install
else
echo "没有zabbix源码包"
exit
fi read -p "请输入监控平台主机IP:" ip
sed -i "/^server=/s/127.0.0.1/127.0.0.1,$ip/" /usr/local/etc/zabbix_agentd.conf
sed -i "/^serveractive/s/127.0.0.1/$ip:10051/" /usr/local/etc/zabbix_agentd.conf
echo "正在开启,请耐心等待......"
useradd zabbix
zabbix_agentd
ss -untlp | grep : &>/dev/null
if [ $? -eq ];then
echo "监控启动成功"
else
echo "失败,请检查"
fi
}
zabbix监控服务部署脚本的更多相关文章
- zabbix监控服务部署
目录 zabbix监控服务部署 1. zabbix介绍 1.1 zabbix的组件 1.2 zabbix的进程 1.3 zabbix常用术语 2. zabbix工作原理 3. zabbix监控架构 4 ...
- Zabbix监控系统部署:源码安装
1. 概述1.1 基础环境2. 部署过程2.1 创建用户组2.2 下载源码解压编译安装2.2.1 下载源码解压2.2.2 YUM安装依赖环境2.2.3 编译安装最新版curl2.2.4 更新GNU构建 ...
- Zabbix 监控系统部署
Zabbix 监控系统部署 实验环境 Zabbix server:RHEL8 ip:192.168.121.10 一.关闭防火墙和selinux [root@Zabbix-server ~]# sys ...
- Zabbix监控系统部署:基本功能测试
1. 概述2. 登陆2.1 登陆账号密码2.1 设置中文语言环境3. 创建用户3.1 用户创建入口3.2 添加用户信息3.3 用户报警媒介3.4 用户权限4. 创建监控主机4.1 添加一台监控主机4. ...
- Zabbix监控系统部署:前端初始化
1. 概述 在上一篇博客<Zabbix监控系统部署:源码安装.md>中,主要进行了zabbix最新版的源码编译安装. (博客园地址:https://www.cnblogs.com/liwa ...
- centos6.5安装部署zabbix监控服务端和客户端
部署zabbix服务端需要LNMP环境(nginx,mysql,php),其它数据库也可以,我这里使用mysql,关于LNMP环境部署,可以参考我的另一遍文章:http://www.cnblogs.c ...
- 【zabbix部署】基于linux安装zabbix监控服务和被监控服务
环境配置 zabbix_server:10.0.0.1 zabbix_agentd:10.0.0.1,10.0.0.2(暂定) 操作系统:centos7.6 安装环境配置 1. LNMP环境 zabb ...
- 四十八.监控概述 、 Zabbix基础 、 Zabbix监控服务
1.常用系统监控命令 查看内存信息 查看交换分区信息 查看磁盘信息 查看CPU信息 查看网卡信息 查看端口信息 查看网络连接信息 一般企业做监控的目的:实时报告系统状态,提前发现系统的问题. 监 ...
- zabbix监控MySQL部署实战
1.部署zabbix监控. 1.1 建用户组和用户 groupadd zabbix useradd -d /home/zabbix -g zabbix -m zabbix passwd zabbix ...
随机推荐
- jdk8-》reduce操作
什么是reduce操作 聚合操作,中⽂意思是 “减少” 根据⼀定的规则将Stream中的元素进⾏计算后返回⼀个唯⼀的值 常⽤⽅法⼀: Optional<T> reduce(BinaryOp ...
- style.display = "inline或inline";和style.display = "";的区别
function a(){ if($('#b').attr('checked')){ $('.c').css("display",""); //"di ...
- 终极教程【zhong】
just for a better future! 资源教程 aiim 综合类 前端知识体系 前端知识结构 Web前端开发大系概览 We ...
- Web设计精髓(转)
作者:zhouwenqi 地址:http://www.zhouwenqi.com/blog/board_43.html 这篇文章说实际问题的,所以不多强调,下面是我总结的一些比较突出的细节问题,而且 ...
- jQuery实现TAB选项卡切换特效简单演示
本文实例为大家分享jQuery实现TAB选项卡切换特效,供大家参考,具体内容如下 1.tab切换 on ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 ...
- jsonp实现js跨域请求
sonp是跨域通信的一个协议 具体来说jsonp实现跨域请求其实是使用js文件引用(js文件不一定是.js结尾)可跨域的性质,将请求的结果包裹在客户端需要调用的js方法内部.需要前后端配合使用. 前段 ...
- STM32F103之ADC学习记录
1.问题 1)10位ADC的误差是多少? 首先要分清分辨率与精度的区别. 10cm的尺子,有100个等分刻度,则该尺子的分辨率为1mm. 但不能说这把尺子的精度是1mm. 在冬天,尺子会热胀冷缩,依然 ...
- while、for循环结构_python
一.while循环的基础例子: 例子1:判断是否大于50 例子2:按需打印乘法口诀 例子3:无限循环 while True: print (“true”) 二.for循环 1.for循环的常见范围的用 ...
- 【游戏体验】FlyGuy(小飞人)
关于FlyGuy这款游戏:https://en.wikipedia.org/wiki/Fly_Guy_(video_game) 这款游戏可以说是古董了 游戏的自由度比较高,玩法简单. 个人测评 游戏性 ...
- nginx的学习
什么是反向代理? 参考这个帖子的‘刘志军’的回答 https://www.zhihu.com/question/24723688 nginx的配置 http://baijiahao.baidu.com ...