#!/bin/bash

 #    检查操作系统版本,该脚本只能运行在 Centos .x 系统上

 cat /etc/redhat-release |grep -i centos |grep '7.[[:digit:]]' >/dev/null

 if [[ $? !=  ]]
then
echo -e "不支持的操作系统,该脚本只适用于CentOS 7.x x86_64 操作系统"
exit
fi # 配置无人值守的安装,定义安装过程中需要用到的一些信息 DBPassword=zabbix_db_password
CacheSize=256M
ZBX_SERVER_NAME=XXX-Zabbix-Server
http_port= # 配置 Zabbix 4.2 YUM 源 rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-1.el7.noarch.rpm
sed -i 's/repo.zabbix.com/mirrors.aliyun.com\/zabbix/g' /etc/yum.repos.d/zabbix.repo
yum clean all # 安装 Zabbix 4.2 Server、Web、Agent、DB
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent mysql mariadb-server # 配置 Zabbix 数据库(创建账号,并导入zabbix库结构) systemctl enable mariadb.service
systemctl start mariadb.service
mysql -e "create database zabbix character set utf8 collate utf8_bin;"
mysql -e "grant all privileges on zabbix.* to zabbix@localhost identified by '$DBPassword';"
mysql -e "flush privileges;"
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql zabbix # 配置 Zabbix Web Server sed -i 's/# php_value date.timezone Europe\/Riga/php_value date.timezone Asia\/Shanghai/' /etc/httpd/conf.d/zabbix.conf
sed -i 's/Listen 80/Listen '$http_port'/' /etc/httpd/conf/httpd.conf cp /usr/share/zabbix/conf/zabbix.conf.php.example /etc/zabbix/web/zabbix.conf.php
sed -i "10c \$DB[\"PASSWORD\"] = '$DBPassword';" /etc/zabbix/web/zabbix.conf.php
sed -i "16c \$ZBX_SERVER_NAME = '$ZBX_SERVER_NAME';" /etc/zabbix/web/zabbix.conf.php # 配置 Zabbix Server sed -i "/^# DBPassword=/a DBPassword=$DBPassword" /etc/zabbix/zabbix_server.conf
sed -i "/^# CacheSize=8M/a CacheSize=$CacheSize" /etc/zabbix/zabbix_server.conf
sed -i "/^# StartPingers=1/a StartPingers=10" /etc/zabbix/zabbix_server.conf # 启动 Zabbix 相关服务,并设置开机自启动 systemctl enable zabbix-server zabbix-agent httpd
systemctl start zabbix-server zabbix-agent httpd # 配置 Zabbix 防火墙 firewall-cmd --permanent --zone=public --add-port=/tcp
firewall-cmd --permanent --zone=public --add-port=/udp
firewall-cmd --permanent --zone=public --add-port=$http_port/tcp
firewall-cmd --reload # 禁用服务器 SELinux etenforce
sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/sysconfig/selinux # 安装成功,提示访问方式 echo -e "\n您可以通过以下地址来访问 Zabbix Web Page\n"
for i in `ip a | grep 'inet ' | awk '{print $2}' | awk -F '/' '{print $1}'` ; do echo -e "\thttp://$i:$http_port/zabbix" ; done

最新文章

  1. [LeetCode] Excel Sheet Column Title 求Excel表列名称
  2. FUND
  3. android- 菜单
  4. 【Spring】利用AOP来做系统性能监控
  5. 浏览器兼容的css hack
  6. iOS 抓取 UIwebview 上 所有 图片 并进行滚动播放
  7. Yii 打造带有缓存功能的AR
  8. log4j的properties详细配置,分级输出日志文件
  9. Objective-C 字典、可变字典
  10. 以程序的方式操纵NTFS的文件权限
  11. 有向图的邻接矩阵表示法(创建,DFS,BFS)
  12. Smarty include
  13. 7 -- Spring的基本用法 -- 10...
  14. FI 创建资产接口AS01
  15. python-flask-配置文件的源码分析
  16. CentOS 服务器安全设置 --摘抄自https://www.kafan.cn/edu/8169544.html
  17. ArcGIS基于DEM计算水流方向的方法(D8算法)
  18. VB CompactDatabase 压缩/修复数据库
  19. Android原生webview中js交互
  20. python 常见的内置函数

热门文章

  1. Jmeter -- 同步定时器
  2. python学习之路(2)(渗透信息收集)
  3. spark 笔记 9: Task/TaskContext
  4. Use an Excel RTD Server with DCOM
  5. 使用conda安装命令时一直出现问题,因为从2019年4月添加的国内镜像都不能用了
  6. java之消息队列ActiveMQ实践
  7. PS 之图片中抠出大树
  8. oracle的表分析
  9. LeetCode.1002-寻找共有字符(Find Common Characters)
  10. spring实战第五版总结