[关闭]
@Mr-13 2020-09-23T11:33:22.000000Z 字数 5986 阅读 62

zabbix笔记(2):zabbix 4.4安装

zabbix



安装php、httpd

  1. # 安装php
  2. [root@mr13 ~]# yum install php
  3. # 安装php扩展
  4. [root@mr13 ~]# yum install php-mysql php-gd php-ldap php-odbc php-pear php-xm lphp-xmlrpc
  5. [root@mr13 ~]# yum install net-snmp net-snmp-devel net-snmp-libs net-snmp-utils php-snmp
  6. # 安装httpd(apache)
  7. [root@mr13 ~]# yum install httpd

安装mysql

参见:CentOS7服务器上部署MySQL


配置zabbix 的 yum源

配置zabbix官方的域名源:http://repo.zabbix.com/

根据系统版本及需要安装的zabbix版本选择源;
我的配置:
阿里云服务ECS、Centos7(rhel)x64、需要安装zabbix4.4
配置源:http://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/

如果安装过程中,出现了下面的报错:

别问,问就是被墙了,直接换成阿里的yum源就完了:https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/

  1. $ vim /etc/yum.repos.d/zabbix.repo
  2. [zabbix]
  3. baseurl=https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/
  4. gpgcheck=0
  5. enabled=1


安装zabbix server

恩,就这一句完事儿

  1. [root@mr13 ~]# yum install zabbix-server-mysql zabbix-get

初始化zabbix数据库

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

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

拷贝解压出来是数据库的初始化脚本

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


create database zabbix_server character set utf8 collate utf8_bin;

  1. [root@mr13 ~]# mysql -u root -p
  2. Enter password: # 输入密码
  3. mysql> create database zabbix charset 'utf8'; # 创建一个名为zabbix的数据库
  4. mysql> CREATE USER zabbix IDENTIFIED BY 'Zabbix1234@'; # 创建数据库用户zabbix
  5. mysql> update user set host='%' where user='zabbix'; # 临时允许用户网络访问,设置后关闭;
  6. mysql> use zabbix; # 切换到zabbix数据库
  7. mysql> grant all privileges on zabbix.* to zabbix@'%'; # 给zabbix用户赋权
  8. mysql> update user set host='localhost' where user='zabbix'; # 关闭用户的网络访问
  9. mysql> FLUSH PRIVILEGES; # 刷新权限,使之生效

然后开始导入 create.sql 数据库初始化脚本

  1. mysql>
  2. mysql> use zabbix;
  3. mysql> source /software/create.sql
  4. # 这里我是将初始化脚本文件解压到了这个目录,安装的时候根据实际情况来
  5. # 脚本导入时间会稍微有点长,稍等一下;导入完成后,可以看到对应的表已经生成。


配置zabbix server并启动

server端已经安装完毕,并且数据库也已经初始化,现在我们开始配置server端,编辑zabbix server端的配置文件。

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

  1. $ vim /etc/zabbix/zabbix_server.conf
  2. ------------------------------------------------------------------------
  3. DBHost=localhost
  4. # 通过DBHost参数设置zabbix数据库所在的服务器IP
  5. # 由于此处zabbix与mysql安装在同一服务器上,所以此处设置为localhost
  6. DBName=zabbix # 通过DBName指定zabbix数据库对应的名称
  7. DBUser=zabbix # 通过DBUser指定zabbix数据库用户名
  8. DBPassword=Zabbix1234@ # 通过DBPassword指定zabbix数据库用户的密码
  9. DBPort=3306 # 通过DBPort指定zabbix所在数据库服务监听的端口号
  10. ListenPort=10051 # 服务端监听的端口,保持默认即可
  11. ------------------------------------------------------------------------------------------
  12. SourceIP=
  13. # 通过SourceIP参数可以指定服务端的源IP,当server端有多个IP地址时,我们可以指定服务端使用固定的IP与agent端进行通讯;为了安全起见,agent端会基于IP进行一定的访问控制,也就是说agent端只允许指定的IP以server端的身份采集被监控主机的数据,如果IP不对应,则不允许采集被监控主机的数据,所以,当server端有多个IP时,我们可以通过SourceIP参数,指定server端通过哪个IP采集被监控主机的数据。
  14. ------------------------------------------------------------------------------------------
  15. LogType=file
  16. # 通过LogType参数,可以指定通过哪种方式记录日志,此参数可以设置为三种值,system、file、console,system表示将日志发往syslog,file表示使用指定的文件作为日志文件,console表示将日志发往控制台,默认为file。
  17. ------------------------------------------------------------------------------------------
  18. LogFile=/var/log/zabbix/zabbix_server.log
  19. # 当LogType设置为file时,通过LogFile参数设置日志文件位置。
  20. ------------------------------------------------------------------------------------------
  21. LogFileSize=0
  22. # 指明日志文件达到多大时自动滚动,单位为MB,如果设置LogFileSize为50,表示日志大小达到50MB滚动一次,设置为0表示日志文件不会滚动,所有日志保存在一个文件中。
  23. ------------------------------------------------------------------------------------------
  24. DebugLevel=3
  25. # 通过DebugLevel参数可以定义日志的详细程度,即为日志级别。
  26. ------------------------------------------------------------------------------------------
  27. DBSocket=/var/lib/mysql/mysql.sock
  28. # 如果数据库服务与server端在同一台服务器上,可以通过DBSocket指定数据库本地套接字文件位置,但是需要注意,即使设置了mysql套接字文件的位置,还是需要配合DBHost参数,否则在登录zabbix控制台时,可能会出现警告,在zabbix server的log中,也可能会出现无法连接到数据库的提示。

启动zabbix-server

  1. $ systemctl start zabbix-server.service

安装zabbix web

因为zabbix web是php开发的,部署运行需要web环境;需要先安装php和apache(httpd)

  1. $ yum install httpd php php-mysql php-mbstring php-gd php-bcmath php-ldap php-xml

完成上述步骤之后,安装zabbix web的两个包,对应版本为4.4

  1. # zabbix的yum源我们已经在/etc/yum.repos.d/zabbix.repo 中指定
  2. $ yum install zabbix-web zabbix-web-mysql

查看一下刚刚zabbix web安装所包含的文件

  1. # 因为包含的文件过多,xshell窗口显示不全,我们把打印内容输出到文件进行查看
  2. $ rpm -ql zabbix-web >> /software/123.txt
  3. $ vim /software/123.txt

  上图可以看到,zabbix web的应用存放在:/usr/share/zabbix 中;

  同时,zabbix web针对httpd,已经添加了对应的zabbix配置文件;此文件中已经为我们准备好了默认配置,如果不使用httpd的虚拟主机,只要将时区稍加改动即可直接使用。修改时区如下:
  

启动httpd

  1. $ systemctl start httpd.service

初始化zabbix配置

  完成上述安装步骤后,访问:http://192.168.0.123/zabbix,可以看到如下图的zabbix安装页面,点击下一步

  安装环境检查,如果出现不满足要求的情况,需要进一步处理后重新检查;点击下一步

  输入数据库配置信息,点击下一步

  填写zabbix server的详细信息:IP地址、端口号、server名称;点击下一步

  执行配置前,信息确认页,检查填写信息无误,点击下一步

  配置完成提示页,注意当前页面会提示:前面所有的配置信息都被保存到了配置文件:/etc/zabbix/web/zabbix.conf.php ;如果想更改一些配置,可以通过修改此文件完成,点击结束

  点击完成后,进入zabbix的登录页,默认的管理员账号密码为:Admin / zabbix
  


修改语言为中文

  登陆后,总览页面;内容都是英文的,亿脸懵逼,改语言去

  这样才对,还是中文看着舒服
  


修改管理员默认密码

  从安全性考虑,先修改一下管理员的默认密码
  


安装zabbix agent

  zabbix server 和 zabbix web都已经有了,现在就差agent端来采集上报数据了。
  
  agent的安装比较简单,直接安装agent的两个包即可;agent的版本可以和server版本不一致,具体兼容参见zabbix官网。

  1. # 安装zabbix agent
  2. $ yum install zabbix-agent zabbix-sender
  3. # 查看一下zabbix-agent都安装了哪些文件
  4. $ rpm -ql zabbix-agent

  这里找到agent的配置文件;zabbix的“主动模式”、“被动模式”都需要在该配置文件中进行定义;"主动模式"与"被动模式"都是对于agent端来说的,而且它们可以同时存在,并不冲突。
  
  先配置一下最常用的agent端配置。打开配置文件,首先看到的就是"通用参数配置段",我们可以在此配置段配置zabbix_agent进程的进程编号文件路径,存储日志方式,日志文件位置,日志滚动阈值等常用设定;zabbix_agent配置文件的"通用配置段"中的参数大多数与zabbix_server配置文件中的常用参数意义相同,所以,此处不再过多赘述,如果没有特殊需要,保持默认即可。
  

  这里先看一下马上会用到的两个配置段,"被动模式配置段" Passive checks related 与"主动模式配置段" Active checks related
  

被动模式相关参数如下:

主动模式的常用参数如下:


  这里我们同时设置“被动模式”和“主动模式”;演示中,server、web、agent都是部署在同一台服务器的;默认的备注文件基本不用做改动;仅修改一下主机名(Hostname)即可。
  
  启动zabbix-agent

  1. $ systemctl start zabbix-agent.service

引用文章:

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注