zabbix3.0平台搭建

Zabbix是一款成熟,轻松的企业级开源监控解决方案,支持实时监控数千台服务器,虚拟机和网络设备,适用于数百万指标的网络监控和应用监控,使用它可以从任何设备、系统、应用程序上进行指标采集,根据采集到的度量值自动检测问题的状态,而无需连续观察采集到的度量值,Web可视化界面,丰富的可视化选项,全面展示您的IT环境,满足多种展示需求,检测到异常时,以多种渠道和选项告警通知到相关的管理人员等,下面给大家介绍一下zabbix搭建过程中的所有步骤,希望对有需要的人有所帮助。

 备注:

  安装环境:zabbix-server服务端ip:172.16.70.231

      主机名:172.16.70.231(区分主机名)

      zabbix-agent客户端测试ip:172.16.70.234

      主机名:172.16.70.234(区分主机名)

一:安装前准备工作

1.清空 /etc/yum.repos.d/ 下面的所有文件,并下载阿里云的centos7镜像和epel7镜像,设置zabbix的yum源

rm -rf /etc/yum.repos.d/*

wget -O /etc/yum.repos.d/Centos-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

wget -O /etc/yum.repos.d/epel-7 http://mirrors.aliyun.com/repo/epel-7.repo

创建zabbix.repo文件,目录在/etc/yum.repos.d/

vim /etc/yum.repos.d/zabbix.repo

[zabbix]

name=zabbix

baseurl=https://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/  //我这是选择安装的3.0

gpgcheck=0

enabled=1

因为安装的时候会用到这些源

2.清空缓存,生成缓存

yum clean all

yum makecache

3.关闭selinux和防火墙

systemctl stop firewalld.service   //关闭防火墙

systemctl disable firewalld.service  //开机不启动防火墙

getenforce 0  //关闭selinux

vim /etc/selinux/config

 

 

     SELINUX=后面改为disabled

 

二:开始安装

  1.安装httpd

  yum install -y httpd

  systemctl start httpd.service     //开启httpd服务

  systemctl enable httpd.service    //开机自动启动httpd服务

  2.安装数据库

  yum install -y mariadb mariadb-server

  systemctl enable mariadb

  systemctl start mariadb

   3.安装zabbix-server

  yum install -y zabbix-server-mysql zabbix-get

  4.安装zabbix-web

  因为zabbix-web需要lamp环境,需要先将依赖的环境安装好

  yum install -y php php-mysql php-mbstring php-gd php-bcmath php-ldap php-xml

三 修改配置文件

  1.初始化zabbix database

此处我们将mysql与zabbix安装在同一台服务器上,安装mysql的过程此处不再赘述,当我们安装完mysql,需要初始化zabbix的数据库,而在我们安装zabbix server时,其中就包含初始化zabbix数据库的sql脚本。

 

我们查看刚才安装完成的zabbix-server-mysql,可以看到一个create.sql.gz的包。

 

 

   解压gunzip create.sql.gz

  但是需要注意的是,此sql脚本中sql只会在对应的数据库中初始化zabbix所需要的数据库表,但是不会创建zabbix数据库,所以,创建zabbix数据库这一步骤,还是需要我们手动进行的,所以,此处我们先手动创建zabbix的数据库,过程如下

  mysql

  create database zabbix charset 'utf8';

  grant all on zabbix.* to zabbix@'' identified by 'zabbix';

  flush privilegs;

  use zabbix;

  source create.sql;

  quit;

 

 

  2.配置zabbix-server服务端并启动

  修改配置文件:

此处列出我们可能会经常修改的参数,如下:

 

ListenPort=10051

 

#服务端监听的端口,保持默认即可

 

SourceIP=

 

#通过SourceIP参数可以指定服务端的源IP,当server端有多个IP地址时,我们可以指定服务端使用固定的IP与agent端进行通讯,为了安全起见,agent端会基于IP进行一定的访问控制,也就是说agent端只允许指定的IP以server端的身份采集被监控主机的数据,如果IP不对应,则不允许采集被监控主机的数据,所以,当server端有多个IP时,我们可以通过SourceIP参数,指定server端通过哪个IP采集被监控主机的数据。

 

LogType=file

 

#通过LogType参数,可以指定通过哪种方式记录日志,此参数可以设置为三种值,system、file、console,system表示将日志发往syslog,file表示使用指定的文件作为日志文件,console表示将日志发往控制台,默认为file。

 

LogFile=/var/log/zabbix/zabbix_server.log

 

#当LogType设置为file时,通过LogFile参数设置日志文件位置。

 

LogFileSize=0

 

#指明日志文件达到多大时自动滚动,单位为MB,如果设置LogFileSize为50,表示日志大小达到50MB滚动一次,设置为0表示日志文件不会滚动,所有日志保存在一个文件中。

 

DebugLevel=3

 

#通过DebugLevel参数可以定义日志的详细程度,即为日志级别。

 

DBHost=localhost

 

#通过DBHost参数设置zabbix数据库所在的服务器IP,由于此处zabbix与mysql安装在同一服务器上,所以此处设置为localhost

 

DBName=zabbix

 

#通过DBName指定zabbix数据库对应的名称

 

DBUser=zabbix

 

#通过DBUser指定zabbix数据库用户名

 

DBPassword=zabbix

 

#通过DBPassword指定zabbix数据库用户的密码

 

DBPort=3306

 

#通过DBPort指定zabbix所在数据库服务监听的端口号

 

DBSocket=/var/lib/mysql/mysql.sock

 

#如果数据库服务与server端在同一台服务器上,可以通过DBSocket指定数据库本地套接字文件位置,但是需要注意,即使设置了mysql套接字文件的位置,还是需要配合DBHost参数,否则在登录zabbix控制台时,可能会出现警告,在zabbix server的log中,也可能会出现无法连接到数据库的提示。

 

 

 

根据上述的配置参数的解释,根据具体需求进行实际配置即可。

 

  SourceIP=172.16.70.231

  DBHost=172.16.70.231

  DBPassword=zabbix

  修改完之后查看端口:

  

   3.修改zabbix-web配置文件

    vim /etc/httpd/conf.d/zabbix.conf

    

<VirtualHost 172.16.70.231:80>
servername 172.16.70.231
documentroot /usr/share/zabbbix
Alias /zabbix /usr/share/zabbix

<Directory "/usr/share/zabbix">
Options FollowSymLinks
AllowOverride None
Require all granted

<IfModule mod_php5.c>
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value max_input_vars 10000
php_value always_populate_raw_post_data -1
# php_value date.timezone Europe/Riga
php_value date.timezone Asia/Shanghai
</IfModule>
</Directory>

<Directory "/usr/share/zabbix/conf">
Require all denied
</Directory>

<Directory "/usr/share/zabbix/app">
Require all denied
</Directory>

<Directory "/usr/share/zabbix/include">
Require all denied
</Directory>

<Directory "/usr/share/zabbix/local">
Require all denied
</Directory>
</VirtualHost>

然后启动服务:systemctl start httpd.service

 

posted @ 2021-09-22 22:06  神魔名字  阅读(79)  评论(0)    收藏  举报