centos7部署zabbix5.x
一、前言
- 运维工作场景中常见的监控工具有哪些?
#过去式: Nagios+Cacti 2014年以前使用比较多
#现在时: zabbix+grafana,Prometheus(普罗米修斯),OpenFalcon(小米开源监控)
#将来时: zabbix Prometheus Prometheus 及其它
当然还有商用的监控工具(第三方公司研发的商业版收费工具)比如说监控宝
https://www.jiankongbao.com
- 我们为什么学习zabbix?
文档配视频效果更佳哦:https://edu.51cto.com/course/30191.html
1、Zabbix是一款开源免费的服务器监控管理软件,其功能强大、配置简单、可外接Grafana图形可视化,是企业运维监控软件的首选。
2、企业需求(Boss直聘搜索zabbix)
zabbix 5.0 版本是由C语言开发的。是最新的 LTS(长期支持)版本,5.0 带来很多功能和特性,详细见官方文档。
- zabbix架构图
zabbix是一个CS架构(服务端、客户端),由客户端zabbix-agent采集数据到zabbix-server进行展示的一个过程。
二、环境要求
- Centos 7.x
- PHP 7.2 (从Zabbix 5.0开始)
- MariaDB或者Mysql5.7版本以上
三、硬件配置
名称 | 平台 | CPU /内存 | 数据库 | 监控主机 |
---|---|---|---|---|
小 | CentOS的 | 虚拟设备 | MySQL的InnoDB | 100 |
中 | CentOS的 | 2个CPU核心/ 2GB | MySQL的InnoDB | 500 |
大 | 红帽企业Linux | 4个CPU核心/ 8GB | RAID10 MySQL InnoDB或PostgreSQL | > 1000 |
很大 | 红帽企业Linux | 8个CPU核心/ 16GB | 快速RAID10 MySQL InnoDB或PostgreSQL | > 10000 |
四、安装zabbix5.X
4.1 关闭防火墙和 selinux 并重启
文档配视频效果更佳哦:https://edu.51cto.com/lecturer/14390454.html
#1.修改主机名为zabbix-server && bash
hostnamectl set-hostname zabbix-server
#2.关闭selinux
[root@zabbix-server ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
[root@zabbix-server ~]# systemctl disable --now firewalld
4.2 安装源并替换阿里云 zabbix 源
[root@zabbix-server ~]# rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
[root@zabbix-server ~]# sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
[root@zabbix-server ~]# yum clean all
4.3 安装 zabbix server 和 agent
[root@zabbix-server ~]# yum install zabbix-server-mysql zabbix-agent -y
4.4安装 Software Collections
# 便于后续安装高版本的 php,默认 yum 安装的 php 版本为php 5.4 过低
[root@zabbix-server ~]# yum install centos-release-scl -y
4.5 启用 zabbix 前端源
# 修改vi /etc/yum.repos.d/zabbix.repo,将[zabbix-frontend]下的 enabled 改为 1
[root@zabbix-server ~]# vi /etc/yum.repos.d/zabbix.repo
...........
enabled=1
4.6 安装 zabbix 前端和相关环境,在安装之前我们先去升级PHP
# 1. 卸载旧PHP
yum remove php* -y
# 2. 安装rh
yum install centos-release-scl-rh -y
# 3. 查询php
yum search php
# 4.安装
yum install rh-php72 -y
scl enable rh-php72 bash
# 5.查看版本
php -v
# 然后再安装前端包
yum -y install zabbix-web-mysql-scl zabbix-apache-conf-scl
4.7 安装mariadb 数据库
[root@zabbix-server ~]# yum install mariadb-server -y
4.8 启动数据库
[root@zabbix-server ~]# systemctl start mariadb
[root@zabbix-server ~]# systemctl enable mariadb
4.9使用以下命令初始化 mariadb 并配置 root 密码
[root@zabbix-server ~]# mysql_secure_installation
.......
Enter current password for root (enter for none):<–初次运行直接回车
.......
Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车
New password: <– 设置root用户的密码,这里我输入的是123456
Re-enter new password: <– 再输入一次你设置的密码123456
.......
Remove anonymous users? [Y/n] <– 是否删除匿名用户,生产环境建议删除,所以直接回车
.......
Disallow root login remotely? [Y/n] <–是否禁止root远程登录,根据自己的需求选择Y/n并回车,建议禁止
.......
Remove test database and access to it? [Y/n] <– 是否删除test数据库,直接回车
.......
Reload privilege tables now? [Y/n] <– 是否重新加载权限表,直接回车
[root@zabbix-server ~]# systemctl restart mariadb
4. 10 使用 root 用户进入 mysql,并建立 zabbix 数据库,注意数据库编码
[root@zabbix-server ~]# mysql -uroot -p123456
[root@zabbix-server ~]# mysql -uroot -p123456 -e "create database zabbix character set utf8 collate utf8_bin;"
[root@zabbix-server ~]# mysql -uroot -p123456 -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"
[root@zabbix-server ~]# zcat /usr/share/doc/zabbix-server-mysql-*/create.sql.gz |mysql -uroot -p123456 zabbix
4.11 修改 zabbix server 配置文件vi /etc/zabbix/zabbix_server.conf 里的数据库密码为前面创建好的zabbix
[root@zabbix-server ~]# vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBPassword=zabbix
[root@zabbix-server ~]# grep '^D' /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
4.12 修改 zabbix 的 php 配置文件里的时区,改成亚洲/上海
[root@zabbix-server ~]# vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
.....最后一行添加......
php_value[date.timezone] = Asia/Shanghai
4.13 启动相关服务,并配置开机自动启动
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
- 使用浏览器访问http://ip/zabbix 即可访问 zabbix 的 web 页面
- 输入账号密码登录 Admin zabbix
- 界面如下图示
- 修改界面为中文
- 解决乱码问题
#1.过滤zabbix字体库
[root@zabbix-server ~]# rpm -ql zabbix-web |grep fonts
/usr/share/zabbix/assets/fonts
[root@zabbix-server ~]# cd /usr/share/zabbix/assets/fonts
[root@zabbix-server fonts]# cd /usr/share/fonts/dejavu/
#2.打开我的电脑,C盘下---->选择Windows---->Fonts将其上传到服务器
[root@zabbix-server dejavu]# mv DejaVuSans.ttf DejaVuSans_bak.ttf
[root@zabbix-server dejavu]# mv MSYH.TTC DejaVuSans.ttf
- 可以发现zabbix图形化中文乱码已经变为正常了
技术是没有终点的,也是学不完的,最重要的是活着、不秃。 学习看书还是看视频,都不重要,重要的是学会,欢迎关注,我们的目标---不秃。
---更多运维开发交流及软件包免费获取请加V: Linuxlaowang