Zabbix 企业监控系统搭建
1、实验准备
centos7.5 系统服务器3台、 一台作为监控服务器, 两台台作为被监控节点, 配置好yum源、 防火墙关闭、 各节点时钟服务同步、 各节点之间可以通过主机名互相通信。1)所有机器关闭防火墙和selinux
setenforing0(修改配置文件关闭)
sed-i's/SELINUX=enforcing/SELINUX=disabled/'/etc/selinux/config
systemctlstopfirewalld.service
2)根据架构图,实验基本设置如下:
机器名称IP配置服务角色备注
server192.168.246.228zabbix-server开启监控功能
node1192.168.246.226zabbix-agent-none1开启
node2192.168.246.227zabbix-agent-none2开启
2、Zabbix的安装,安装server端
1)更新yum仓库
我们去官网下载一个包zabbix-release-3.4-2.el7.noarch.rpm,本地安装至我们的虚拟机,这样,我们本地就有了新的yum源,可以直接安装zabbix服务:
[root@zabbix-server ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
而后更新我们的yum仓库:
[root@zabbix-server ~]# yum repolist
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
zabbix-non-supported4/4
repo id repo name status
base base9,363
epel epel11,349
zabbix/x86_64 Zabbix Official Repository-x86_6480
zabbix-non-supported/x86_64 Zabbix Official Repository non-supported-4
repolist:20,796
安装:
[root@zabbix-server ~]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y
[root@zabbix-server ~]# yum install -y zabbix-get-3.4.0-1.el7.x86_64
zabbix-server-mysql数据库是用来存放采集到的数据,而zabbix-web-mysql的作用是Zabbix的web端会通过这些数据,来展示绘图
2)安装设置数据库:
1、安装 mariadb.repo
[root@zabbix-server ~]# yum install -y mariadb mariadb-server
2、重启我们的数据库服务:
[root@zabbix-server ~]# systemctl restart mariadb
[root@zabbix-server ~]# systemctl enable mariadb
[root@zabbix-server ~]# mysqladmin -u root password 'zabbix' #设置root密码
3、创建数据库并授权账号
[root@zabbix-server ~]# mysql -uroot -p'zabbix'
MariaDB [(none)]> create database zabbix charactersetutf8 collate utf8_bin;# 创建zabbix数据库
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by'zabbix'; # 注意授权网段
MariaDB [(none)]> flush privileges;# 刷新授权
MariaDB [(none)]> \q#退出
Bye
4、导入表
我们直接把表导入至我们的数据库即可:
[root@zabbix-server ~]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Enter password:#输入密码
导入以后,我们进去数据库查看一下:
[root@zabbix-server zabbix-server-mysql-3.4.15]# mysql -uzabbix -p
Enter password:
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| zabbix |
+--------------------+
MariaDB [(none)]> use zabbix;
Database changed
MariaDB [zabbix]> show tables;
+----------------------------+
| Tables_in_zabbix |
+----------------------------+
| acknowledges |
| actions |
.....
| proxy_dhistory |
| proxy_history |
| regexps |
| rights |
| screen_user |
+----------------------------+
140rowsinset(0.001 sec)
可以看出来,我们的数据已经导入成功了。
3、配置 server 端
我们的数据库准备好了以后,我们要去修改server端的配置文件。
[root@zabbix-server ~]# cd /etc/zabbix/
[root@zabbix-server zabbix]# ls
web zabbix_agentd.conf zabbix_agentd.d zabbix_server.conf
#为了方便我们以后恢复,我们把配置文件备份一下
[root@zabbix-server zabbix]# cp zabbix_server.conf zabbix_server.conf.bak
[root@zabbix-server zabbix]# vim zabbix_server.conf
DBHost=localhost#数据库对外的主机
DBName=zabbix#数据库名称
DBUser=zabbix#数据库用户
DBPassword=zabbix#数据库密码
#这里的配置文件打开后:如果有的就不用添加了。如果是注释了的也不用取消注释。直接把内容复制粘贴过去就可以 了。
以上,我们的基本配置已经完成,可以开启服务了:
[root@zabbix-server zabbix]# systemctl start zabbix-server
[root@zabbix-server zabbix]# systemctl enable zabbix-server
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
开启服务以后,我们一定要去确认一下我们的端口有没有开启:
[root@zabbix-server zabbix]# netstat -lntp | grep 10051
tcp000.0.0.0:100510.0.0.0:* LISTEN1574/zabbix_server
tcp600:::10051 :::* LISTEN1574/zabbix_server
如果查到的端口没有开启,我们就要去检查一下配置文件有没有出问题了。
4、配置 web GUI
有一个/etc/httpd/conf.d/zabbix.conf文件,这个配置文件就是帮我们做映射的文件
[root@zabbix-server zabbix]# vim /etc/httpd/conf.d/zabbix.conf #设置时区
#里面基本不用动。只需要添加一行时区即可
php_value date.timezone Asia/Shanghai---添加如下
接下来,我们就可以启动我们的httpd服务了:
[root@zabbix-server zabbix]# systemctl start httpd
[root@zabbix-server zabbix]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
我们的服务已经开启,接着我们就可以用浏览器来访问了。
5、浏览器访问并进行初始化设置
我们使用浏览器访问192.168.246.228/zabbix,第一次访问时需要进行一些初始化的设置,我们按照提示操作即可:
点击Finish以后,我们就会跳转到登录页面,使用我们的账号密码登录即可:
默认用户名为:Admin ,密码为:zabbix 。 登陆进来就可以看到我们的仪表盘了:
6、配置 agent 端
当我们把监控端配置启动以后,我们需要来设置一下我们的被监控端,我们在被监控的主机安装好agent,设置好他的server,并把他添加到server端,就能将其纳入我们的监控系统中去了。
1)安装 zabbix
同样的,我们先来安装zabbix。两台机器都操作
[root@zabbix-agent-none1 ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
[root@zabbix-agent-none1 ~]# yum install zabbix-agent zabbix-sender -y
安装完成以后,我们去修改配置文件。
2)修改配置文件
对配置文件做一个备份,然后去修改配置文件:
[root@zabbix-agent-none1 ~]# cd /etc/zabbix/
[root@zabbix-agent-none1 zabbix]# ls
zabbix_agentd.conf zabbix_agentd.d
[root@zabbix-agent-none1 zabbix]# cp zabbix_agentd.conf{,.bak}
[root@zabbix-agent-none1 zabbix]# ls
zabbix_agentd.conf zabbix_agentd.conf.bak zabbix_agentd.d
[root@zabbix-agent-none1 zabbix]# vim zabbix_agentd.conf ----修改如下
Server=192.168.246.228 zabbix服务器的地址
ServerActive=192.168.246.228 主动模式 zabbix-server-ip
Hostname=zabbix-agent-none1
UnsafeUserParameters=1是否限制用户自定义 keys 使用特殊字符1是可以启用特殊字符0是不可以启用特殊字符
EnableRemoteCommands=0是否允许别人执行远程操作命令,默认是禁用的,打开的话会有安全风险.
是否允许别人执行远程操作命令,默认是禁用的,打开的话会有安全风险.
修改完成之后,我们保存退出。然后就可以启动服务了:
[root@zabbix-agent-none1 zabbix]# systemctl start zabbix-agent
[root@zabbix-agent-none1 zabbix]# systemctl enable zabbix-agent
照例查看端口是否已开启
[root@zabbix-agent-none1 zabbix]# netstat -lntp | grep 10050
tcp000.0.0.0:100500.0.0.0:* LISTEN9369/zabbix_agentd
tcp600:::10050 :::* LISTEN9369/zabbix_agentd