iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >分分钟一键部署Zabbix Server
  • 303
分享到

分分钟一键部署Zabbix Server

2024-04-02 19:04:59 303人浏览 薄情痞子
摘要

为了方便把安装Zabbix的过程整理成自动化一键部署脚本,有兴趣可以参考,都是些基本的命令:#!/bin/bash #Zabbix 一键部署脚本 #安装zabbix3.0.4,依赖PHP-5.6.


为了方便把安装Zabbix的过程整理成自动化一键部署脚本,有兴趣可以参考,都是些基本的命令:


#!/bin/bash
#Zabbix 一键部署脚本
#安装zabbix3.0.4,依赖PHP-5.6.25

src_home=`pwd`
echo -n "正在配置iptables防火墙……"
/etc/init.d/iptables save >> /dev/null
chkconfig  iptables off
if [ $? -eq 0 ];then
echo -n "Iptables防火墙初始化完毕!"
fi

echo -n "正在关闭SElinux……"
setenforce 0 > /dev/null 2>&1
sed -i '/^SELINUX=/s/=.*/=disabled/' /etc/selinux/config
if [ $? -eq 0 ];then
        echo -n "SELinux初始化完毕!"
fi

echo -n "正在安装Nginx yum 源……"
yum -y install wget
wget Http://nginx.org/packages/Centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm
if [ $? -eq 0 ];then
        echo -n "Nginx yum 源 初始化完毕!"
fi

echo -n "正在安装epel-release yum 源……"
rpm -Uvh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
if [ $? -eq 0 ];then
        echo -n "epel-release yum 源 初始化完毕!"
fi

echo -n "正在安装php-5.6.25的编译所需相关软件……"
yum -y install make GCc nginx  libmcrypt php-mcrypt Mysql-server mysql-devel net-snmp-devel libcurl-devel php php-mysql php-bcmath php-mbstring php-gd php-xml bzip2-devel libmcrypt-devel libxml2-devel gd gd-devel libcurl*
if [ $? -eq 0 ];then
        echo -n "php-5.6.25依赖初始化完毕!"
fi

echo -n "正在添加zabbix用户……"
useradd -M -s /sbin/nologin zabbix && echo "OK"
echo -n "正在启动mysqld服务……"
service mysqld start
if [ $? -eq 0 ];then
        echo -n "Mysql启动完毕!"
fi

#echo -n "正在为mysql的root用户设置密码……"
#mysql_user_root_passWord="password"
#mysql_user_zabbix_password="zabbix"
#mysqladmin -uroot -p password $mysql_user_root_password
echo "正在执行mysql语句,创建zabbix数据库,授权zabbix访问数据库"
mysql -e "create database zabbix character set utf8;grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';grant all privileges on zabbix.* to zabbix@'127.0.0.1' identified by 'zabbix';grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';flush privileges;"
#echo "正在执行mysql语句,创建zabbix数据库,授权zabbix访问数据库"
#mysql -uroot -p"$mysql_user_root_password" -e "create database zabbix character set utf8" && echo "创建zabbix数据库完成"
#mysql -uroot -p"$mysql_user_root_password" -e "grant all privileges on zabbix.* to zabbix@localhost identified by '$mysql_user_zabbix_password'" && echo "授权zabbix本地登录数据库"
#mysql -uroot -p"$mysql_user_root_password" -e "grant all privileges on zabbix.* to zabbix@'%' identified by '$mysql_user_zabbix_password'" && echo "授权任何主机本地登录数据库"

#zabbix一键部署第三方软件包的解压目录
echo -n "编译安装php-5.6.25....可能需要几分钟"
tar zxf ${src_home}/php-5.6.25.tar.gz
cd ${src_home}/php-5.6.25 && ./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fpm   --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf  --enable-mbstring --enable-exif  --with-pear --with-curl --enable-bcmath --with-gettext --with-mysqli --enable-Sockets
cd ${src_home}/php-5.6.25 && make -j 4 && make install
cd

echo -n "正在配置启动php-fpm....请稍等"
/bin/cp ${src_home}/php-5.6.25/php.ini-production /etc/php.ini
cp ${src_home}/php-5.6.25/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod 777 /etc/init.d/php-fpm
cd /usr/local/php/etc/ && cp php-fpm.conf.default php-fpm.conf
cd
service php-fpm start
if [ $? -eq 0 ];then
        echo -n "php-fpm启动完毕!"
fi

#zabbix编译安装
echo -n "正在导入zabbix数据到mysql数据库中...."
tar zxf ${src_home}/zabbix-3.0.4.tar.gz
mysql -uzabbix -pzabbix zabbix < ${src_homie}/zabbix-3.0.4/database/mysql/schema.sql
mysql -uzabbix -pzabbix zabbix < ${src_homie}/zabbix-3.0.4/database/mysql/p_w_picpaths.sql
mysql -uzabbix -pzabbix zabbix < ${src_homie}/zabbix-3.0.4/database/mysql/data.sql
if [ $? -eq 0 ];then
        echo -n "zabbix数据导入启动完毕!"
fi
echo -n "正在安装zabbix编译依赖软件包....可能需要几分钟"
yum -y install net-snmp-devel curl-devel javacc java-1.8*
echo -n "编译安装Zabbix-server....可能需要几分钟"
cd ${src_home}/zabbix-3.0.4 && ./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent  --with-net-snmp --with-libcurl --enable-java --with-mysql
make -j 4 && make install


echo -n "正在制作Zabbix-server启动脚本...."
echo -e "zabbix-agent 10050/tcp #ZabbixAgent\nzabbix-agent 10050/udp #Zabbix Agent\nzabbix-trapper 10051/tcp #ZabbixTrapper\nzabbix-trapper 10051/udp #Zabbix Trapper" >> /etc/services
cp ${src_home}/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_server /etc/init.d/
cp ${src_home}/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
cd

chmod 777 /etc/init.d/zabbix_*
sed -i '/BASEDIR=/s/$/\/zabbix/' /etc/init.d/zabbix_server
sed -i '/BASEDIR=/s/$/\/zabbix/' /etc/init.d/zabbix_agentd

echo -n "正在配置zabbix配置文件...."
cd /usr/local/zabbix/etc
sed '/# DBHost=localhost/a\DBHost=localhost' zabbix_server.conf -i
sed '/# DBPassword=/a\DBPassword=zabbix' zabbix_server.conf -i
sed '/# EnableRemoteCommands=0/a\EnableRemoteCommands=1' zabbix_agentd.conf -i
sed '/# ListenPort=10050/a\ListenPort=10050' zabbix_agentd.conf -i
sed '/# User=zabbix/a\User=zabbix' zabbix_agentd.conf -i
sed '/# AllowRoot=0/a\AllowRoot=1' zabbix_agentd.conf -i
sed '/# UnsafeUserParameters=0/a\UnsafeUserParameters=1' zabbix_agentd.conf -i
if [ $? -eq 0 ];then
        echo -n "zabbix配置完毕!"
fi

echo -n "正在启动zabbix_server and zabbix_agent...."
service zabbix_server start
service zabbix_agentd start
chkconfig zabbix_server on
chkconfig zabbix_agentd on
cd

echo -n "正在配置nginx反代zabbix...."
cp -r ${src_home}/zabbix-3.0.4/frontends/php /usr/share/nginx/html/zabbix
cd /etc/nginx/conf.d/ && mv default.conf default.conf.bak
cp ${src_home}/zabbix.conf /etc/nginx/conf.d/
echo -n "配置完成,正在启动nginx WEB server...."
service nginx start
if [ $? -eq 0 ];then
        echo -n "Nginx启动完毕!"
fi

echo -n "正在进行最后的zabbix Install ,php参数修改....."
sed '/^post_max_size =/s/=.*/= 16M/' /etc/php.ini -i
sed '/^max_execution_time =/s/=.*/= 300/' /etc/php.ini -i
sed '/^max_input_time =/s/=.*/= 300/' /etc/php.ini -i
sed -i '/^;date.timezone/a\date.timezone =  Asia/Shanghai' /etc/php.ini
sed -i '/^;always_populate_raw_post_data.*/a\always_populate_raw_post_data = -1' /etc/php.ini
sed -i '/^mysqli.default_socket =/s/=.*/= \/var\/lib\/mysql\/mysql.sock/' /etc/php.ini
echo -n "正在重新启动php服务....."
/etc/init.d/php-fpm restart
echo -n "正在初始化zabbix Server...."
cp ${src_home}/zabbix.conf.php /usr/share/nginx/html/zabbix/conf/
echo -n "正在做最后的Zabbix Server重启....."
/etc/init.d/zabbix_server restart
if [ $? -eq 0 ];then
        echo -n "Zabbix Server 启动完毕!"
fi

echo -n "正在解决zabbix server 乱码问题,请你耐心等待....."
cd /usr/share/nginx/html/zabbix/fonts && mv DejaVuSans.ttf DejaVuSans.ttf.bak
cp ${src_home}/msyh.ttf .
cd ../include/ && sed -i 's/DejaVuSans/msyh/g' defines.inc.php
cd
echo -n "恭喜你,Zabbix 部署到此完成,如有问题,请参照脚本单独解决!!!"
echo -e -n "后续的操作:1、通过http://ip/zabbix 访问你的zabbix Web页面,下一步....一直到底。2、你可能需要配置Nginx域名,通过域名访问Zabbix Server.... 3、你需要自己自定义或者使用系统自带模板,添加主机等等...."


脚本跑完没报错,在你的浏览器里输入:http://172.16.2.21/zabbix/ 应该可以看到下面的页面:


分分钟一键部署Zabbix Server


一键部署tar包我已经打包好了,请到附件下载:

连接:http://pan.baidu.com/s/1nuTaX2D 密码:yckv

您可能感兴趣的文档:

--结束END--

本文标题: 分分钟一键部署Zabbix Server

本文链接: https://www.lsjlt.com/news/38517.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • zabbix6.0.1部署系列(一)zabbix-server部署
    文章目录 前言一、zabbix6.0二、安装步骤1.linux环境优化&&前期准备1.1linux环境优化1.2用户组和工具1.3相关安装包 2.myql8.0安装3.php7.4安装...
    99+
    2023-09-02
    zabbix linux 运维 mysql php
  • zabbix部署(一)
    服务端部署备份原有的yum[root@ns1 ~]# find /etc/yum.repos.d/ -name '*.repo' ...
    99+
    2024-04-02
  • zabbix一键部署脚本----亲测可用
    环境:centos7.9 网络:外网通 其他:无 两个脚本任选一执行即可 基于nginx,脚本如下: #!/bin/bash#function:zabbix#author:tommypeng 20220727#####root判断####...
    99+
    2023-09-02
    php 开发语言 运维 centos 服务器
  • 5分钟教会你用Docker部署一个Python应用
    目录前言1. Dockerfile 描述文件2. 实战一下2-1 项目开发2-2 编写 Dockerfile2-3 构建镜像2-4 运行镜像容器2-5 测试一下3. 总结前言 在使用...
    99+
    2024-04-02
  • CentOS6.9系统下部署Zabbix-server 3.0的步骤
    这篇文章主要讲解了“CentOS6.9系统下部署Zabbix-server 3.0的步骤”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CentOS6.9系统下部署Zabbix-server ...
    99+
    2023-06-05
  • openstack 一键部署
    OpenStack是一个开源的云计算平台,用于构建和管理公有云和私有云。在部署OpenStack时,可以使用一键部署工具来简化部署过...
    99+
    2023-10-11
    openstack
  • 10分钟学会VS NuGet包私有化部署
    目录前言什么是BaGet搭建私有化BaGet服务器使用私有化程序包前言 我们之前实现了打包发布NuGet,但是发布后的引用是公有的,谁都可以访问,显然这种方式是不可取的。 命令版本:...
    99+
    2024-04-02
  • packstack一键部署openstack
    Packstack是一个用于快速部署OpenStack的一键部署工具。它使用了puppet模块来自动化安装和配置OpenStack的...
    99+
    2023-10-11
    openstack
  • 基于Centos7系统一键部署EFK服务的示例分析
    本篇文章给大家分享的是有关基于Centos7系统一键部署EFK服务的示例分析,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。最近平台EFK版本均作了升级,平台采用EFK(Elas...
    99+
    2023-06-05
  • 教你使用Docker Compose一键部署前后端分离项目
    目录前言一、安装Docker和docker Compose二、准备工作1. 新建工作目录2. 工作目录结构3. 后台打包 4. 前台打包 5. 数据库文件上传&n...
    99+
    2023-01-09
    docker前后端分离部署 docker compose使用 docker-compose教程
  • 基于Centos7系统一键部署EFK服务的脚本分享
    本篇内容介绍了“基于Centos7系统一键部署EFK服务的脚本分享”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!架构EFK采用集中式的日志管...
    99+
    2023-06-16
  • MySQL 分区表中分区键为什么必须是主键的一部分
    目录水平拆分 VS 垂直拆分分区表MySQL 8.0 中分区表的变化为什么分区键必须是主键的一部分?本地分区索引 VS 全局索引总结前言: 分区是一种表的设计模式,通俗地讲表分区是将...
    99+
    2024-04-02
  • 怎么用10分钟创建和部署NFT智能合约
    今天就跟大家聊聊有关怎么用10分钟创建和部署NFT智能合约,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。什么是NFTNFT代表不可替代的令牌,例如,一个美元钞票是可替代的,因为您可以...
    99+
    2023-06-15
  • 一键完成!五分钟搞定Golang环境安装
    一键完成!五分钟搞定Golang环境安装,需要具体代码示例 前言 Golang(又称Go)是由Google开发的一种编程语言,具有强大的并发特性和高效的编译速度,深受开发者喜爱。安装G...
    99+
    2024-02-22
    golang 环境安装 一键完成 go语言
  • 一分钟解决 The server selected protocol version TLS10 is not accepted 问题
    一、问题描述 技术群有个朋友使用 JDBC 连接 SQL Server 遇到以下报错: 关键字为: The server selected protocol version TLS10 is no...
    99+
    2023-09-01
    java 开发语言
  • 分部署存储Ceph
    文章目录 Ceph一.deploy-ceph部署1.系统环境初始化1.1 修改主机名,DNS解析1.2 时间同步1.3 配置apt基础源与ceph源1.4关闭selinux与防火墙1.5 创建 ceph 集群部署用户cephadmi...
    99+
    2023-08-30
    ceph
  • docker compose 一键部署分布式配置中心Apollo的过程详解
    简介 说起分布式肯定要想到分布式配置中心、分布式日志、分布式链路追踪等 在分布式部署中业务往往有很多配置比如: 应用程序在启动和运行时需要读取一些配置信息,配置基本上伴随着应用程序的...
    99+
    2024-04-02
  • Redis如何一键部署脚本
    先将安装包拖入/opt目录 注意:这里的脚本bind修改后为 0.0.0.0 bind修改后为bind 127.0.0.1 +服务器IP在下面 #!/bin/bash #yu...
    99+
    2024-04-02
  • openstack一键部署安装cent OS7.5
    要在CentOS 7.5上进行OpenStack一键部署安装,您可以使用OpenStack-Ansible工具。下面是一个基本的步骤...
    99+
    2023-10-11
    openstack
  • MySQL分区表中分区键必须是主键一部分的原因是什么
    这篇文章主要介绍了MySQL分区表中分区键必须是主键一部分的原因是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySQL分区表中分区键必须是主键一部分的原因是什么文章都会有所收获,下面我们一起来看看吧。前...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作