zabbix简易一键安装脚本

脚本执行时候要输入的参数:

  • Enter db_ip (172.16.%.%)> #输入数据库访问授权ip范围,例如172.16.%.%、192.168.%.%、192.168.1.%
  • Enter db_root_password > #输入root用户数据库密码
  • Enter zabbix_dbuser > 输入zabbix用户名
  • Enter zabbix_dbpassword >输入zabbix用户密码
  • Enter zabbix_version (3.x).* > 输入zabbix主版本号,例如:3.0、3.2
  • Enter zabbix_subversion ..(x) > 输入zabbix子版本号,例如:3.0.28中的28
~]# vi zabbix_autoinstall.sh
#!/bin/bash
# zabbix 3.x一键安装脚本 单机
# 环境 centos 7.4.1708 x86_64
 read  -p "Enter db_ip (172.16.%.%)> " dbip  #输入数据库访问授权ip范围
 read  -p "Enter db_root_password > " dbrootpw  #输入数据库密码
 read  -p "Enter zabbix_dbuser > " dbuser  #输入zabbix数据库名
 read -p "Enter zabbix_dbpassword >" dbpassword #输入zabbix数据密码
 read -p "Enter zabbix_version (3.x).*  > " zabbix_version #输入zabbix版本号
 read -p "Enter zabbix_subversion *.*.(x) > " zabbix_subversion #输入zabbix子版本号

 IP=`ip add|grep global|awk -F'[ /]+' '{ print $3 }'|head -n 1` 

#1、设置
echo  '调整selinux、关闭防火墙'
systemctl stop firewalld.service
systemctl disable firewalld.service
firewall-cmd --state
sed -i '/^SELINUX=.*/c SELINUX=disable' /etc/selinux/config
grep --color=auto '^SELINUX' /etc/selinux/config
setenforce 0
#安装必要的软件
echo  '正在安装必要的软件,请稍后................'

yum install -y epel-release &> /dev/null
yum install -y ntp wget vim net-tools openssh tree &> /dev/null

#修改阿里云源
mkdir -p /etc/yum.repos.d/remark && mv  /etc/yum.repos.d/* /etc/yum.repos.d/remark/
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

sed -i '/aliyuncs.com/d' /etc/yum.repos.d/*.repo
#清理缓存
yum clean all && yum makecache

echo  '修改成阿里源!'

#同步时间
[[ -f /usr/sbin/ntpdate ]] || { echo "install ntp";yum install ntp ntpdate -y &> /dev/null; }
#若没NTP则安装
/usr/sbin/ntpdate ntp6.aliyun.com
echo "*/3 * * * * /usr/sbin/ntpdate ntp6.aliyun.com  &> /dev/null" > /tmp/crontab
crontab /tmp/crontab

echo  '时间同步完成,正在升级软件,请稍后................'

#升级所有包,不改变软件设置和系统设置,系统版本升级,内核不改变
yum -y upgrade &> /dev/null
        
 echo '------------执行完毕---------' 

##########################################
#2 安装
yum  install mariadb-server -y

echo 'skip_name_resolve = ON
innodb_file_per_table = ON
' >> /etc/my.cnf
echo '启动数据库服务'
systemctl start mariadb && systemctl enable mariadb

sleep 5
netstat -antp|grep mysqld
#mysql_secure_installation #初始化设置密码,自动交互
[[ -f /usr/bin/expect ]] || { yum install expect -y; } #若没expect则安装
/usr/bin/expect << EOF
set timeout 30
spawn mysql_secure_installation
expect {
    "enter for none" { send "\r"; exp_continue}
    "Y/n" { send "Y\r" ; exp_continue}
    "password:" { send "$dbrootpw\r"; exp_continue}
    "new password:" { send "$dbrootpw\r"; exp_continue}
    "Y/n" { send "Y\r" ; exp_continue}
    eof { exit }
}
EOF
#测试
mysql -u root -p$dbrootpw -e "show databases;"
[ $? = 0 ] || { echo "mariadb初始化失败";exit; }

#创建zabbix库并授权
echo '创建数据库、用户授权'
mysql -u root -p$dbrootpw -e "
CREATE DATABASE zabbix CHARSET 'utf8';
GRANT ALL ON zabbix.* TO '$dbuser'@'$dbip' IDENTIFIED BY '$dbpassword';
GRANT ALL ON zabbix.* TO '$dbuser'@'127.0.0.1' IDENTIFIED BY '$dbpassword';
GRANT ALL ON zabbix.* TO '$dbuser'@'localhost' IDENTIFIED BY '$dbpassword';
FLUSH PRIVILEGES;
"

echo '安装zabbix----------------------------------------------------------------------------------------------------------'
#安装zabbix
yum -y install httpd php php-mysql php-mbsting php-gd php-bcmath php-ldap php-xml
sleep 5

if ! yum -y install https://mirrors.aliyun.com/zabbix/zabbix/"$zabbix_version"/rhel/7/x86_64/zabbix-release-"$zabbix_version"-1.el7.noarch.rpm ; then yum -y install  https://mirrors.aliyun.com/zabbix/zabbix/"$zabbix_version"/rhel/7/x86_64/zabbix-release-"$zabbix_version"-2.el7.noarch.rpm ; fi
yum clean all && yum makecache
sleep 5

wget https://mirrors.aliyun.com/zabbix/zabbix/"$zabbix_version"/rhel/7/x86_64/zabbix-agent-"$zabbix_version"."$zabbix_subversion"-1.el7.x86_64.rpm
wget https://mirrors.aliyun.com/zabbix/zabbix/"$zabbix_version"/rhel/7/x86_64/zabbix-java-gateway-"$zabbix_version"."$zabbix_subversion"-1.el7.x86_64.rpm
wget https://mirrors.aliyun.com/zabbix/zabbix/"$zabbix_version"/rhel/7/x86_64/zabbix-server-mysql-"$zabbix_version"."$zabbix_subversion"-1.el7.x86_64.rpm
wget https://mirrors.aliyun.com/zabbix/zabbix/"$zabbix_version"/rhel/7/x86_64/zabbix-web-mysql-"$zabbix_version"."$zabbix_subversion"-1.el7.noarch.rpm
wget https://mirrors.aliyun.com/zabbix/zabbix/"$zabbix_version"/rhel/7/x86_64/zabbix-web-"$zabbix_version"."$zabbix_subversion"-1.el7.noarch.rpm
yum -y install *.rpm

#导入数据库
gzip -d /usr/share/doc/zabbix-server-mysql-"$zabbix_version"."$zabbix_subversion"/create.sql.gz
mysql -u$dbuser -h127.0.0.1 -p$dbpassword zabbix  < /usr/share/doc/zabbix-server-mysql-"$zabbix_version"."$zabbix_subversion"/create.sql
 
#配置zabbix
sed -i '/^# DBHost=/c DBHost='$IP'' /etc/zabbix/zabbix_server.conf
sed -i '/^DBUser=/c DBUser='$dbuser'' /etc/zabbix/zabbix_server.conf
sed -i '/^# DBPassword=/c DBPassword='$dbpassword'' /etc/zabbix/zabbix_server.conf
sed -i '/^# JavaGateway=/c JavaGateway='$IP'' /etc/zabbix/zabbix_server.conf
sed -i '/^# JavaGatewayPort=10052/c JavaGatewayPort=10052' /etc/zabbix/zabbix_server.conf
sed -i '/^# StartJavaPollers=0/c StartJavaPollers=5' /etc/zabbix/zabbix_server.conf

sed -i '/php_value date.timezone*/c php_value date.timezone Asia/shanghai' /etc/httpd/conf.d/zabbix.conf

#配置zabbix-java-geteway
sed -i '/^# LISTEN_IP="0.0.0.0"/c LISTEN_IP="0.0.0.0"' /etc/zabbix/zabbix_java_gateway.conf
sed -i '/^# LISTEN_PORT=10052/c LISTEN_PORT=10052' /etc/zabbix/zabbix_java_gateway.conf
sed -i '/^TIMEOUT=3/c TIMEOUT=30' /etc/zabbix/zabbix_java_gateway.conf

#启动服务并添加为开机启动项
if  systemctl start zabbix-server.service && systemctl start httpd && systemctl start zabbix-agent && systemctl start zabbix-java-gateway ; then systemctl enable zabbix-server.service && systemctl enable httpd && systemctl enable zabbix-agent && systemctl enable zabbix-java-gateway
        ss -tnl
        echo ‘=================================安装完成========================================’
        echo 'Please visit http://'$IP'/zabbix  to further configuration!!!!!'
else
        echo 'The install is fail!!!!!!!!'
fi

执行安装脚本
~]# . zabbix_autoinstall.sh
Enter db_ip (172.16.%.%)> 172.16.%.%    #授权访问的ip地址范围
Enter db_root_password > 123456           #数据库root密码
Enter zabbix_dbuser > zbxuser
Enter zabbix_dbpassword >123456
Enter zabbix_version (3.x).*  > 3.4
Enter zabbix_subversion *.*.(x) > 1         #这里输入的是zabbix版本号为3.4.1
........
  • 整个过程大概需要10-20分钟,最后出现安装完成
‘=================================安装完成========================================’
Please visit http://172.16.16.250/zabbix  to further configuration!!!!!

  • 用浏览器访问提示URL进行下一步配置


    浏览器访问url

    数据库设置

    服务节点设置

    前端配置完成

    登录
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 222,104评论 6 515
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,816评论 3 399
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 168,697评论 0 360
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,836评论 1 298
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,851评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,441评论 1 310
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,992评论 3 421
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,899评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,457评论 1 318
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,529评论 3 341
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,664评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,346评论 5 350
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 42,025评论 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,511评论 0 24
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,611评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 49,081评论 3 377
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,675评论 2 359

推荐阅读更多精彩内容