热点新闻
Zabbix-2·部署安装使用
2023-07-14 14:32  浏览:1399  搜索引擎搜索“手机财发网”
温馨提示:信息一旦丢失不一定找得到,请务必收藏信息以备急用!本站所有信息均是注册会员发布如遇到侵权请联系文章中的联系方式或客服删除!
联系我时,请说明是在手机财发网看到的信息,谢谢。
展会发布 展会网站大全 报名观展合作 软文发布

一、Zabbix安装部署思路:

想要实现实施监控要解决的几个方面:
  • 数据采集:
    可以使用agent(安装在被控端的软件)或者SNMP(简单网络管理协议,用于网络设备的数据采集)
  • 数据存储:
    可以使用mysql或其他数据库
  • 数据展示:
    nginx+php展示web页面

简单来说就是,zabbix通过在远程主机上安装agent进行数据采集,存储到mysql数据库,通过web页面进行展示。
Zabbix中文手册:https://www.zabbix.com/documentation/3.4/zh/manual

二、环境准备:

准备二台主机:

主机名 地址
zabbixserver 192.168.88.5/24
web1 192.168.88.100/24

PS:

  1. 关闭SELINUX和防火墙
  2. 配置yum源(系统yum)

三、部署的流程:

  1. 安装Zabbix软件
  2. 数据库创建初始化
  3. 配置并启动zabbix_server服务
  4. 配置并启动zabbix_agent服务
  5. 配置nginx+php环境
  6. 登录Zabbix网站使用

三、实现步骤

第一步:服务端安装Zabbix软件

  • 安装zabbix的依赖包

# 安装依赖 [root@zabbixserver lnmp_soft]# yum install -y net-snmp-devel curl-devel autoconf libevent-devel

  • 解压zabbix包(当前使用的版本为zabbix-3.4.4)

[root@zabbixserver ~]# cd lnmp_soft/ [root@zabbixserver lnmp_soft]# ls zabbix-3.4.4.tar.gz zabbix-3.4.4.tar.gz [root@zabbixserver lnmp_soft]# tar xf zabbix-3.4.4.tar.gz # 进入zabbix目录 [root@zabbixserver lnmp_soft]# cd zabbix-3.4.4/

  • 开始编译安装zabbix

# 编译,zabbixserver 主机需要监控自己,所以--enable-server和--enable-agent都需要 [root@zabbixserver zabbix-3.4.4]# ./configure --enable-server --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl # 安装 [root@zabbixserver zabbix-3.4.4]# make && make install

--enable-server: 安装服务器端
--enable-agent: 安装被控端
--with-mysql: 指定mysql数据库配置程序
--with-net-snmp: 配置可以通过snmp收集数据
--with-libcurl: 启用curl库,以便zabbix可以通过curl连接web服务

第二步:数据库创建初始化

  • 创建数据库

# 创建zabbix存储数据的数据库。创建名为zabbix的数据库,使用的字符集是utf8 [root@zabbixserver ~]# mysql MariaDB [(none)]> create database zabbix default charset utf8;

  • 创建数据库用户

# 创建名为zabbix的用户,密码也是zabbix,可以对zabbix数据库拥有全部权限。zabbix@'%'格式是:zabbix@客户端地址 # 在mysql中,%表示0到多个任意字符 MariaDB [(none)]> grant all on zabbix.* to zabbix@'%' identified by 'zabbix';

  • 授权

# 授权zabbix用户可以在本机登陆 MariaDB [(none)]> grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix'; MariaDB [(none)]> exit

  • 导入表结构

# 查看zabbix的表结构 [root@zabbixserver ~]# cd lnmp_soft/zabbix-3.4.4/database/mysql/ [root@zabbixserver mysql]# ls data.sql images.sql schema.sql

# -u指定用户名,-p指定密码,第3个zabbix是数据库 # 导入zabbix表结构,3个sql文件按顺序导入 [root@zabbixserver mysql]# mysql -uzabbix -pzabbix zabbix < schema.sql [root@zabbixserver mysql]# mysql -uzabbix -pzabbix zabbix < images.sql [root@zabbixserver mysql]# mysql -uzabbix -pzabbix zabbix < data.sql

第三步:配置并启动zabbix_server服务

  • 配置zabbix_server服务

# 修改zabbix_server.conf [root@zabbixserver ~]# vim /usr/local/etc/zabbix_server.conf 12 # ListenPort=10051 # 不用改,了解端口号 38 LogFile=/tmp/zabbix_server.log # 不用改,日志文件位置 85 DBHost=localhost # 数据库服务器地址 95 DBName=zabbix # 不用改,数据库名 111 DBUser=zabbix # 不用改,连接数据库的用户 119 DBPassword=zabbix # 连接数据库的密码

  • 创建服务用户

# 创建用于运行zabbix的用户 # -s /sbin/nologin: 用户不能登陆系统 [root@zabbixserver ~]# useradd -s /sbin/nologin zabbix

  • 创建用于管理zabbix的service文件,service文件格式参考:https://www.cnblogs.com/gongxianjin/p/15673132.html

# 创建service文件 [root@zabbixserver ~]# vim /usr/lib/systemd/system/zabbix_server.service [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

  • 启动zabbix_server服务

# 新建service文件,一般需要执行systemctl daemon-reload,否则有可能识别不到 [root@zabbixserver ~]# systemctl daemon-reload

# 设置开机自启动 [root@zabbixserver ~]# systemctl enable zabbix_server.service # 启动服务 [root@zabbixserver ~]# systemctl start zabbix_server.service

  • 检查端口10051

# 查看端口(10051) [root@zabbixserver ~]# ss -tlnp | grep :10051 LISTEN 0 128 *:10051

第四步:配置并启动zabbix_agent服务

  • 配置zabbix_agent服务

#配置agent,将自己被监控 [root@zabbixserver ~]# vim /usr/local/etc/zabbix_agentd.conf 30 LogFile=/tmp/zabbix_agentd.log # 不用改,日志位置 93 Server=127.0.0.1,192.168.88.5 # 指定接受哪些服务器监控 101 # ListenPort=10050 # 不用改,指定端口号 134 ServerActive=127.0.0.1,192.168.88.5 # 主动汇报信息给哪些服务器 145 Hostname=zabbixserver # 本机的主机名 280 UnsafeUserParameters=1 # 允许用户自定义监控项

  • 创建用于管理zabbix_agent的service文件

# 配置agent服务的service文件 [root@zabbixserver ~]# vim /usr/lib/systemd/system/zabbix_agentd.service [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

  • 启动zabbix_agent服务

# 新建service文件,一般需要执行systemctl daemon-reload,否则有可能识别不到 [root@zabbixserver ~]# systemctl daemon-reload

# 启动服务 [root@zabbixserver ~]# systemctl start zabbix_agentd.service [root@zabbixserver ~]# systemctl enable zabbix_agentd.service

  • 检查端口10050

# 查看端口(10050) [root@zabbixserver ~]# ss -tlnp | grep :10050 LISTEN 0 128 *:10050

第五步:配置nginx+php环境(用于展示zabbix的web页面)

  • 安装nginx的依赖包

# 安装依赖 [root@zabbixserver ~]# yum install -y gcc pcre-devel openssl-devel

  • 编译并安装nginx

# 解压nginx压缩包 [root@zabbixserver ~]# tar xf lnmp_soft.tar.gz [root@zabbixserver ~]# cd lnmp_soft/ [root@zabbixserver lnmp_soft]# tar xf nginx-1.12.2.tar.gz

# 进入nginx工作目录 [root@zabbixserver lnmp_soft]# cd nginx-1.12.2/ # 编译nginx支持https [root@zabbixserver nginx-1.12.2]# ./configure --with-http_ssl_module # 安装 [root@zabbixserver nginx-1.12.2]# make && make install

  • 安装php相关软件包

# 配置nginx支持php。配置php可以连接mysql [root@zabbixserver ~]# yum install -y php php-fpm php-mysql mariadb-server mariadb-devel

# 5. 根据zabbix手册,修改nginx参数 [root@zabbixserver ~]# vim /usr/local/nginx/conf/nginx.conf 34 fastcgi_buffers 8 16k; #缓存php生成的页面内容,8个16k 35 fastcgi_buffer_size 32k; #缓存php生产的头部信息,32k 36 fastcgi_connect_timeout 300; #连接PHP的超时时间,300秒 37 fastcgi_send_timeout 300; #发送请求的超时时间,300秒 38 fastcgi_read_timeout 300; #读取请求的超时时间,300秒 70 location ~ \.php$ { 71 root html; 72 fastcgi_pass 127.0.0.1:9000; 73 fastcgi_index index.php; 74 # fastcgi_param script_FILENAME /script s$fastcgi_script_name; 75 include fastcgi.conf; # 注意改成fastcgi.conf 76 }

  • 启动nginx相关服务

# 启动mariadb服务 [root@zabbixserver ~]# systemctl enable mariadb --now # 启动php-fpm服务 [root@zabbixserver ~]# systemctl enable php-fpm --now # 检查php-fpm端口(9000) [root@zabbixserver ~]# ss -tlnp | grep :9000 LISTEN 0 128 127.0.0.1:9000 # 启动nginx服务 [root@zabbixserver ~]# /usr/local/nginx/sbin/nginx # 检查80端口 [root@zabbixserver ~]# ss -tlnp | grep :80 LISTEN 0 128 *:80 # 写入到rc.local中的命令,开机时自动执行 [root@zabbixserver ~]# echo '/usr/local/nginx/sbin/nginx' >> /etc/rc.d/rc.local # 给与rc.local执行权限 [root@zabbixserver ~]# chmod +x /etc/rc.d/rc.local

  • 导入zabbix的web页面

# 拷贝zabbix的web页面到nginx [root@zabbixserver ~]# ls lnmp_soft/zabbix-3.4.4/frontends/ php [root@zabbixserver ~]# cp -r lnmp_soft/zabbix-3.4.4/frontends/php/* /usr/local/nginx/html/

  • 修改nginx html的属主和属组

# nginx运行期间,调用php-fpm服务,php-fpm需要向web目录中修改文件。 # php-fpm的运行用户是apache,所以apache用户需要对该目录有写权限 [root@zabbixserver ~]# chown -R apache:apache /usr/local/nginx/html/

  • 访问192.168.88.5/index.php,首次访问,将会自动跳转到安装页面:http://192.168.88.5/setup.php



    图片.png





    图片.png

  • 根据上面红色报错,解决zabbix web依赖的问题

# 安装依赖的软件包 [root@zabbixserver ~]# yum install -y php-gd php-xml php-bcmath php-mbstring # 修改php.ini文件 [root@zabbixserver ~]# vim /etc/php.ini 672 post_max_size = 16M 384 max_execution_time = 300 394 max_input_time = 300 878 date.timezone = Asia/Shanghai [root@zabbixserver ~]# systemctl restart php-fpm

  • 刷新web页(没有错误视为成功)





    图片.png

第六步:登录Zabbix网站使用

  • 连接数据库的密码,也是zabbix。





    连接数据库.png




    图片.png





    图片.png





    图片.png

  • 登录 默认的登陆用户是admin,密码是zabbix。





    登录.png

  • 配置zabbix





    修改语言1.png





    修改语言2.png

  • 启用监控自身





    检测中.png





    配置主机.png





    启用.png

发布人:1454****    IP:117.173.23.***     举报/删稿
展会推荐
让朕来说2句
评论
收藏
点赞
转发