CentOS7 zabbix-3.4.4安装手册

zabbix-3.4.4安装手册

zabbix-3.4.4脚本

什么是zabbix

Zabbix 是一个企业级的分布式开源监控方案。

Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。这些功能使得Zabbix成为容量规划的理想方案。

Zabbix支持主动轮询和被动捕获。Zabbix所有的报告、统计信息和配置参数都可以通过基于Web的前端页面进行访问。基于Web的前端页面可以确保您从任何方面评估您的网络状态和服务器的健康性。适当的配置后,Zabbix可以在IT基础架构监控方面扮演重要的角色。对于只有少量服务器的小型组织和拥有大量服务器的大型公司也同样如此。

Zabbix是免费的。Zabbix是根据GPL通用公共许可证第2版编写和发行的。这意味着它的源代码都是免费发行的,可供公众任意使用。

zabbix的概述

Zabbix是一个高度集成的网络监控解决方案,一个简单的安装包中提供多样性的功能。

 数据收集
 可用性和性能检查
 自定义检查 
 实时图表绘制
 Web监控功能 
 报表
 数据库数据 
 PHP Web前端
 Zabbix API
 安全用户认证
 部署在被监控对象上 
 为了性能和更少内存的占用,用C语言编写
 使用Zabbix proxy代理服务器,使得远程监控更简单
zabbix的组件
  1. SERVER
    Zabbix server 是agent程序报告系统可用性、系统完整性和统计数据的核心组件,是所有配置信息、统计信息和操作数据的核心存储器。
  2. 数据库存储
    所有配置信息和Zabbix收集到的数据都被存储在数据库中。
  3. WEB界面
    为了从任何地方和任何平台都可以轻松的访问Zabbix, 我们提供基于Web的Zabbix界面。该界面是Zabbix Server的一部分,通常(但不一定)跟Zabbix Server运行在同一台物理机器上。
  4. PROXY代理服务器
    Zabbix proxy 可以替Zabbix Server收集性能和可用性数据。Proxy代理服务器是Zabbix软件可选择部署的一部分;当然,Proxy代理服务器可以帮助单台Zabbix Server分担负载压力。
  5. AGENT监控代理
    Zabbix agents监控代理 部署在监控目标上,能够主动监控本地资源和应用程序,并将收集到的数据报告给Zabbix Server。
  6. 数据流
    此外,了解Zabbix内部的数据流同样很重要。监控方面,为了创建一个监控项(item)用于采集数据,必须先创建一个主机(host)。告警方面,在监控项里创建触发器(trigger),通过触发器(trigger)来触发告警动作(action)。 因此,如果你想收到Server XCPU负载过高的告警,你必须: 1. 为Server X创建一个host并关联一个用于对CPU进行监控的监控项(Item)。 2. 创建一个Trigger,设置成当CPU负载过高时会触发 3. Trigger被触发,发送告警邮件 虽然看起来有很多步骤,但是使用模板的话操作起来其实很简单,Zabbix这样的设计使得配置机制非常灵活易用
zabbix安装步骤
  1. 源码包的获取方式:
    1>百度网盘
    链接:https://pan.baidu.com/s/1u4Ci3oOvvmn_eacFdEB9_Q
    提取码:5n0g
    2>官方源码库

  2. 通过百度网盘下载源码离线包,xftp上传到服务器或者是云服务器上
    在这里插入图片描述

  3. 源码编译安装nginx(selinux和防火墙请关闭 )

yum  -y install gcc pcre-devel openssl-devel tar httpd-tools #安装相应的依赖包
tar -xvf nginx-1.17.6.tar.gz -C /root/  # 把nginx源码包解压放到/root/下
cd nginx-1.17.6   #相对路径进行源码编译安装
./configure --with-http_ssl_module --with-http_stub_status_module 
make && make install   #源码编译安装
  1. 使用system管理nginx服务
    在 /usr/lib/systemd/system/路径下创建nginx.service,内容如下
[Unit]
Description=The Nginx HTTP Server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT ${MAINPID}
[Install]
WantedBy=multi-user.target
  1. 安装php模块
yum -y install   php  php-mysql        php-fpm
在nginx的主配置文件中,修改如下
fastcgi_buffers 8 16k;                  #缓存php生成的页面内容,8个16k
        fastcgi_buffer_size 32k;              #缓存php生产的头部信息,32k
        fastcgi_connect_timeout 300;         #连接PHP的超时时间,300秒
        fastcgi_send_timeout 300;             #发送请求的超时时间,300秒
        fastcgi_read_timeout 300;            #读取请求的超时时间,300秒

在location上添加如上几行

  location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            include        fastcgi.conf;
        }
#使nginx支持PHP模块
  1. 启动nginx服务
systemctl enable --now nginx.service
ss -ntulp | grep 80  #检测到80端口,表示nginx服务启动成功,启动失败绝大部分是配置文件书写错误,请详细检查
  1. 源码安装zabbix server
 yum -y install  net-snmp-devel curl-devel autoconf libevent-devel 
tar -xf zabbix-3.4.4.tar.gz -C /root/
cd zabbix-3.4.4/
./configure  --enable-server   --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config  --with-net-snmp --with-libcurl  
 #--enable-server安装部署zabbix服务器端软件  
 #--enable-agent安装部署zabbix被监控端软件
 #--enable-proxy安装部署zabbix代理相关软件
 #--with-mysql指定mysql_config路径
 #--with-net-snmp允许zabbix通过snmp协议监控其他设备(如交换机、路由器等)
 #--with-libcurl安装相关curl库文件,这样zabbix就可以通过curl连接http等服务,测试被监控主机服务的状态
 make && make install   #编译安装

#修改配置文件zabbix_server.conf

#85行,定义哪台主机为数据库主机,localhost为本机
sed -i '85s/# DBHost=localhost/DBHost=localhost/' /usr/local/etc/zabbix_server.conf
#95行,设置数据库名称
#sed -n '95p' /usr/local/etc/zabbix_server.conf
#111行,设置数据库账户
sed -i '111s/DBUser=zabbix/DBUser=zabbix/' /usr/local/etc/zabbix_server.conf
#119行,设置数据库密码
sed -i '119s/# DBPassword=/DBPassword=zabbix/' /usr/local/etc/zabbix_server.conf
#38行,日志的位置,排错使用,该行仅查看即可

#编写service文件

echo "
[Unit]
Description=zabbix server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/tmp/zabbix_server.pid
ExecStart=/usr/local/sbin/zabbix_server
ExecStop=/bin/kill $MAINPID
[Install]
WantedBy=multi-user.target" > /usr/lib/systemd/system/zabbix_server.service

#启动zabbix_service服务

systemctl start zabbix_server.service 
systemctl enable zabbix_server.service  
  1. 安装mariadb数据库相关软件包
yum -y install   mariadb   mariadb-server   mariadb-devel
systemctl enable   --now  mariadb
ss -ntulp |grep 3306 #检测到3306端口,则服务启动成功
mysql -e 'create database zabbix character set utf8;'   #创建mariadb的zabbix库
mysql -e 'grant all on zabbix.* to zabbix@"localhost" identified by "zabbix";'   #授权用户
cd /root/zabbix-3.4.4/database/mysql                #相对路径下导入数据
mysql -uzabbix -pzabbix zabbix < schema.sql   #导入数据表,顺序不能乱哦!!!
mysql -uzabbix -pzabbix zabbix < images.sql
mysql -uzabbix -pzabbix zabbix < data.sql
  1. 设置网站的页面
useradd -s /sbin/nologin zabbix
cd /root/zabbix/lnmp_soft/zabbix-3.4.4/frontends/php/
cp -r * /usr/local/nginx/html/
chown -R apache:apache /usr/local/nginx/html/
  1. 满足Zabbix_server的环境要求
yum -y install php-gd php-xml php-bcmath php-mbstring &> /dev/null
sed -i '384s/30/300/' /etc/php.ini
sed -i '672s/8/32/' /etc/php.ini
sed -i '394s/60/300/' /etc/php.ini
echo "date.timezone = Asia/Shanghai" >> /etc/php.ini
systemctl restart php-fpm
  1. 为服务端安装agent被监控端(IP地址根据自己的实际情况更改)
yum -y install gcc pcre-devel autoconf
yum -y install /root/zabbix/lnmp_soft/zabbix-3.4.4-22.x86_64.rpm

##93行,谁可以监控本机(被动监控模式)
sed -i '93s/127.0.0.1/127.0.0.1,192.168.1.55/' /usr/local/etc/zabbix_agentd.conf

#134行,谁可以监控本机(主动监控模式)
sed -i '134s/127.0.0.1/127.0.0.1,192.168.1.55/' /usr/local/etc/zabbix_agentd.conf

#145行,被监控端自己的主机名(根据实际情况 )
sed -i '145s/Zabbix server/mysql_11/' /usr/local/etc/zabbix_agentd.conf

#69行,监控异常后,是否允许服务器远程过来执行命令,如重启某个服务
sed -n '69s/^# EnableRemoteCommands=0/EnableRemoteCommands=1/' /usr/local/etc/zabbix_agentd.conf
#280行,是否允许自定义key传参
sed -i '280s/# UnsafeUserParameters=0/UnsafeUserParameters=1/' /usr/local/etc/zabbix_agentd.conf

#编写zabbix_agentd的service文件,通过systemd管理服务

echo "
[Unit]
Description=zabbix agent
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/tmp/zabbix_agentd.pid
ExecStart=/usr/local/sbin/zabbix_agentd
ExecStop=/bin/kill $MAINPID
[Install]
WantedBy=multi-user.target" >  /usr/lib/systemd/system/zabbix_agentd.service

#启动zabbix_agent服务

systemctl enable zabbix_agentd.service  
systemctl start zabbix_agentd.service 
ss -ntulp | grep 10050 #检测端口,有则服务启动成功。
 
  1. 浏览器访问http://192.168.1.55/index.php

在这里插入图片描述
点击进入下一步检查是否有报错;有报错进行解决
在这里插入图片描述
输入用户名/密码/端口
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
输入账号/密码
在这里插入图片描述
登录后出现
在这里插入图片描述
表示zabbix安装成功

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
你好!要在CentOS 7上安装Zabbix Server 5.0,可以按照以下步骤进行操作: 1. 添加Zabbix存储库: ``` sudo rpm -ivh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm ``` 2. 安装Zabbix Server、Frontend和Agent: ``` sudo yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent ``` 3. 创建Zabbix数据库: ``` sudo mysql -u root -p ``` 在MySQL提示符下,输入以下命令: ``` create database zabbix character set utf8 collate utf8_bin; grant all privileges on zabbix.* to zabbix@localhost identified by 'password'; flush privileges; quit; ``` 4. 导入初始数据库模式和数据: ``` sudo zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | sudo mysql -u zabbix -p zabbix ``` 5. 配置Zabbix Server: 打开Zabbix Server配置文件: ``` sudo nano /etc/zabbix/zabbix_server.conf ``` 修改以下参数(根据数据库设置进行修改): ``` DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=password ``` 6. 启动Zabbix Server和Agent服务,并设置开机自启动: ``` sudo systemctl start zabbix-server zabbix-agent sudo systemctl enable zabbix-server zabbix-agent ``` 7. 配置防火墙允许Zabbix Web访问: ``` sudo firewall-cmd --permanent --add-port=80/tcp sudo firewall-cmd --reload ``` 8. 配置Zabbix Web界面: 将Zabbix Web配置文件复制到Nginx配置目录: ``` sudo cp /usr/share/doc/zabbix-web-mysql-*/nginx.conf /etc/nginx/conf.d/zabbix.conf ``` 打开Zabbix Web配置文件: ``` sudo nano /etc/nginx/conf.d/zabbix.conf ``` 修改以下行(如果已经存在): ``` listen 80; server_name your_domain_or_IP; ``` 保存并关闭文件。 9. 重启Nginx和PHP-FPM服务: ``` sudo systemctl restart nginx php-fpm ``` 现在,你应该能够通过在Web浏览器中输入服务器的IP地址或域名来访问Zabbix Web界面。默认的登录凭据为Admin / zabbix。请确保修改默认密码以增加安全性。 希望这些步骤对你有帮助!如有任何疑问,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北城 半夏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值