centos7.2系统搭建Zabbix分布式监控系统

直接进入主题,网卡模式不做要求,主机nat均可。个人地址规划如下:

|--------------|---------------|----------|
| IP | 主机名 | 节点 |
| 172.16.51.5 | zabbix-server | Server节点 |
| 172.16.51.38 | zabbix-agent | Agent节点 |

本次实验所需的软件包已上传至百度网盘,需要自取。

链接:https://pan.baidu.com/s/1a-7_iAIX0DBAMkF9bhiTcA?pwd=2333

提取码:2333

复制这段内容后打开百度网盘手机App,操作更方便哦。

先开启一台已经安装好centos7.2系统的虚拟机进行基础环境配置,修改网卡ip地址、主机映射文件、挂载本地镜像源和关闭防火墙。

然后关闭防火墙。

bash 复制代码
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.
[root@localhost ~]# setenforce 0
[root@localhost ~]# vi /etc/selinux/config

修改主机名

bash 复制代码
[root@localhost ~]# hostnamectl set-hostname zabbix-server
[root@localhost ~]# bash
[root@zabbix-server ~]#

顺带一提,另一个节点的基础环境配置如上,当然你也可以这个节点做完这些配置以后完整克隆出一台节点然后修改下主机名和ip地址即可。

然后通过ssh上传所需软件包并挂载镜像源,注意本次上传的软件包我放在了opt目录下,主要是为了方便另一个节点使用yumftp下载。

随后将本地的网络源移走,手动编辑一份本地源。再挂载本地仓库。

bash 复制代码
[root@zabbix-server ~]# mkdir /opt/centos
[root@zabbix-server ~]# mv /etc/yum.repos.d/* /home/
[root@zabbix-server ~]# vi /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[zabbix]
name=zabbix
baseurl=file:///opt/zabbix
gpgcheck=0
enabled=1
[root@zabbix-server ~]# mount /dev/cdrom /opt/centos/
mount: /dev/sr0 写保护,将以只读方式挂载

我们接着在server节点上安装ftp服务,我们再学习一种新的yum源仓库,yum命令使用ftp来实现拉取不同主机的资源软件进行下载。

bash 复制代码
[root@zabbix-server ~]# yum install vsftpd -y

修改vsftpd服务的配置文件vsftpd.conf,在配置文件的最上面,添加一行代码。指定ftp拉取寻找资源在/opt目录下。

bash 复制代码
[root@zabbix-server ~]#  vi /etc/vsftpd/vsftpd.conf

anon_root=/opt
# Example config file /etc/vsftpd/vsftpd.conf
#

然后启动服务。

bash 复制代码
[root@zabbix-server ~]# systemctl start vsftpd

接着我们到agent节点上,我这边agent节点也按照上述的server节点基础环境一样配置好了,修改了网络地址关闭防火墙和修改主机名。我们这边另外再配置一下ftp下载拉取yum源就可以了。

bash 复制代码
[root@zabbix-agent ~]# mv /etc/yum.repos.d/* /home/
[root@zabbix-agent ~]# vi /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=ftp://172.16.51.5/centos
gpgcheck=0
enabled=1
[zabbix]
name=zabbix
baseurl=ftp://172.16.51.5/zabbix
gpgcheck=0
enabled=1

然后安装LAMP+Zabbix服务。(在zabbix-server节点执行)

安装各类所需服务。

bash 复制代码
[root@zabbix-server ~]#  yum install httpd -y
[root@zabbix-server ~]#  yum install -y mariadb-server mariadb
[root@zabbix-server ~]#  yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb-server
[root@zabbix-server ~]# yum install trousers -y

接着我们配置启动zabbix服务。

先启动httpd和数据库服务。

bash 复制代码
[root@zabbix-server ~]# systemctl start httpd
[root@zabbix-server ~]# systemctl enable httpd
[root@zabbix-server ~]# systemctl start mariadb
[root@zabbix-server ~]# systemctl enable mariadb

然后登录数据库,创建zabbix库。(采用中文编码格式)并授予zabbix用户的访问权限。

bash 复制代码
[root@zabbix-server ~]#  mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.44-MariaDB MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]>  grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]>

退出数据库,进入到/usr/share/doc/zabbix-server-mysql-3.4.15/目录,导入数据库文件。

bash 复制代码
MariaDB [(none)]> Ctrl-C -- exit!
Aborted
[root@zabbix-server ~]# cd /usr/share/doc/zabbix-server-mysql-3.4.15/
[root@zabbix-server zabbix-server-mysql-3.4.15]#  ll
总用量 2120
-rw-r--r--. 1 root root      98 11月 12 2018 AUTHORS
-rw-r--r--. 1 root root  866545 11月 12 2018 ChangeLog
-rw-r--r--. 1 root root   17990 11月 12 2018 COPYING
-rw-r--r--. 1 root root 1267039 11月 12 2018 create.sql.gz
-rw-r--r--. 1 root root      52 11月 12 2018 NEWS
-rw-r--r--. 1 root root    1062 11月 12 2018 README
[root@zabbix-server zabbix-server-mysql-3.4.15]# zcat create.sql.gz |mysql -uroot zabbix

接着设置时区。编辑/etc/php.ini文件,设置时区,在[Date]字段下,设置date.timezone=PRC。

bash 复制代码
[root@zabbix-server zabbix-server-mysql-3.4.15]# cd
[root@zabbix-server ~]# vi /etc/php.ini

编辑/etc/httpd/conf.d/zabbix.conf文件,修改时区,修改php_value date.timezone 为Asia/Shanghai。直接加一段也行,修改原来的也行。修改原来的记得把前面的#号注释去掉。

bash 复制代码
[root@zabbix-server ~]# vi /etc/httpd/conf.d/zabbix.conf

修改完配置文件后重启httpd服务。

修改Zabbix配置文件并启动。

修改/etc/zabbix/zabbix_server.conf配置文件。

bash 复制代码
[root@zabbix-server ~]# vi /etc/zabbix/zabbix_server.conf

一行一行参照着修改吧,主要是减少了一些条目和多了一些条目,(就是去掉注释)。

主要91,124,132这3行,其他完全每变化,检索出来的行数和我没对上也没关系,你东西不乱删除,该有的有就行。

之后启动Zabbix服务。查看端口号,验证zabbix-server的服务端口10051是否存在。

bash 复制代码
[root@zabbix-server ~]# systemctl start zabbix-server
[root@zabbix-server ~]# yum install -y net-tools
[root@zabbix-server ~]# netstat -ntpl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      4615/mysqld
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1577/sshd
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      2051/master
tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      4740/zabbix_server
tcp6       0      0 :::80                   :::*                    LISTEN      4698/httpd
tcp6       0      0 :::21                   :::*                    LISTEN      4103/vsftpd
tcp6       0      0 :::22                   :::*                    LISTEN      1577/sshd
tcp6       0      0 ::1:25                  :::*                    LISTEN      2051/master
tcp6       0      0 :::10051                :::*                    LISTEN      4740/zabbix_server
[root@zabbix-server ~]#

接着我们就能使用本地机浏览器用ip地址上web界面操作了。

在浏览器访问172.16.51.5/zabbix,进入Zabbix安装向导,单击右下角"Next step"按钮,进入下一步操作。

显示PHP版本信息等内容,然后单击右下角"Next step"按钮,进入下一步操作。

填写连接数据库的必要信息,Password为zabbix。填写完毕后单击右下角"Next step"按钮,进行下一步操作。

填写Zabbix服务端的详细信息,Name字段可以随意填写,是给监控平台起个名字。然后单击右下角"Next step"按钮。

平台配置概况如图。继续下一步。

安装Zabbix,安装成功后,单击右下角"Finish"按钮,结束安装。

进入登录界面,使用默认的用户名和密码Admin/zabbix登录。

进入主页。

设置中文界面。

单击右上角的头像按钮,进入设置界面。

选择语言为汉语点击更新按钮。

中文界面。

web界面已经部署好了,接下里是回到zabbix-agent节点,安装zabbix-agent服务。添加被监控机器用于测试。

bash 复制代码
[root@zabbix-agent ~]# yum install -y zabbix-agent

修改/etc/zabbix/zabbix_agentd.conf配置文件,配置zabbix-agent。

bash 复制代码
[root@zabbix-agent ~]#  vi /etc/zabbix/zabbix_agentd.conf
[root@zabbix-agent ~]# grep -n '^'[a-Z] /etc/zabbix/zabbix_agentd.conf
13:PidFile=/var/run/zabbix/zabbix_agentd.pid
32:LogFile=/var/log/zabbix/zabbix_agentd.log
43:LogFileSize=0
97:Server=172.16.51.5
138:ServerActive=172.16.51.5
149:Hostname=zabbix-agent
267:Include=/etc/zabbix/zabbix_agentd.d/*.conf
[root@zabbix-agent ~]#

主要修改97和138行指定监控主机ip以及149行的主机名。

启动zabbix-agent服务,并查看10050端口是否存在。

bash 复制代码
[root@zabbix-agent ~]# systemctl start zabbix-agent
[root@zabbix-agent ~]# netstat -ntpl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:110             0.0.0.0:*               LISTEN      1632/dovecot
tcp        0      0 0.0.0.0:143             0.0.0.0:*               LISTEN      1632/dovecot
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      2564/dnsmasq
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1614/sshd
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1609/cupsd
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      2032/master
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      5253/sshd: root@pts
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      5787/zabbix_agentd
tcp6       0      0 :::110                  :::*                    LISTEN      1632/dovecot
tcp6       0      0 :::143                  :::*                    LISTEN      1632/dovecot
tcp6       0      0 :::80                   :::*                    LISTEN      1621/httpd
tcp6       0      0 :::22                   :::*                    LISTEN      1614/sshd
tcp6       0      0 ::1:631                 :::*                    LISTEN      1609/cupsd
tcp6       0      0 :::25                   :::*                    LISTEN      2032/master
tcp6       0      0 ::1:6010                :::*                    LISTEN      5253/sshd: root@pts
tcp6       0      0 :::10050                :::*                    LISTEN      5787/zabbix_agentd
[root@zabbix-agent ~]#

回到Web界面,选择菜单栏"配置"→"主机"→"创建主机"命令。创建主机在右边。

填写信息,将zabbix-agent节点添加到被监控机器。然后单击下方"添加"按钮。

添加完毕后如图。

添加监控项,单击"zabbix-agent"名称,然后单击"模板"标签,进入添加模板操作界面。

点击"选择"按钮,进行监控模板添加,在跳转界面勾选用户想要监控的复选框,然后单击下方"选择"按钮。

选择完所有需要的模板后。

单击"添加"按钮,显示链接的模板,然后单击"更新"按钮。

单击"更新"按钮后,zabbix-agent节点被添加到监控中。

最后我们监控测试机器。

在最上面的选择菜单栏中"监测中"→"图形"命令,群组选择Linux server,主机选择zabbix-agent,图形选择需要显示的监控项,此处选择为CPU jumps。我们可以用这台主机随便下载一些东西来调度cpu,来让我们看到监控波动线。

需要被监控的主机,首先安装zabbix-agent服务,然后修改配置文件并启动服务。登录Zabbix的Web界面,添加主机,并添加监控模板。成功添加后,就可以通过Zabbix界面进行主机的监控。

那么本次使用centos7.2系统搭建Zabbix分布式监控系统实验完成!

相关推荐
单音GG7 分钟前
推荐一个基于协程的C++(lua)游戏服务器
服务器·c++·游戏·lua
huaqianzkh8 分钟前
了解Hadoop:大数据处理的核心框架
大数据·hadoop·分布式
Shepherd061934 分钟前
【Jenkins实战】Windows安装服务启动失败
运维·jenkins
安步当歌35 分钟前
【WebRTC】视频发送链路中类的简单分析(下)
网络·音视频·webrtc·视频编解码·video-codec
shitian081139 分钟前
用轻量云服务器搭建一个开源的商城系统,含小程序和pc端
服务器·小程序·开源
jlting1951 小时前
Kafka--关于broker的夺命连环问
分布式·kafka
Biomamba生信基地1 小时前
Linux也有百度云喔~
linux·运维·服务器·百度云
米饭是菜qy1 小时前
TCP 三次握手意义及为什么是三次握手
服务器·网络·tcp/ip
yaoxin5211231 小时前
第十九章 TCP 客户端 服务器通信 - 数据包模式
服务器·网络·tcp/ip
new_abc1 小时前
Ubuntu 22.04 ftp搭建
linux·运维·ubuntu