Zabbix架构与搭建

目录

  • 一、监控
      • 1、为什么要监控
      • 2、监控什么东西
      • 3、用什么去监控
  • 二、Zabbix 监控
      • 1、zabbix架构
      • 2.安装zabbix
  • 三、web界面操作
    • 1. zabbix的web安装

一、监控

1、为什么要监控

  • 及早的发现问题,将问题消灭在萌芽状态。保障公司业务的正常开展运行。

2、监控什么东西

  • 监控硬件、系统、服务、性能、日志、网络、安全等。
  • 具体有:cpu、内存、磁盘、带宽、运行的服务(web、db、mail、dns、ftp、ssh等)

3、用什么去监控

1.用命令
- 查看cpu: lscpu、uptime、top、htop vmstat mpstat
- 查看内存:free
- 查看磁盘:df、dd、iotop
- 网络监控: iftop -i ens33

2.监控工具

  • zabbix – 》cacti和nagios的结合体,图形和脚本都比较好>https://www.zabbix.com
  • cacti --》图形显示非常好
  • nagios --》监控脚本非常丰富

二、Zabbix 监控

1、zabbix架构

Zabbix架构与搭建_第1张图片重要组件说明:

1、zabbix server:负责接收agent发送的报告信息的核心组件,所有配置、统计数据及操作数据都由它组织进行;

2、database storage:专用于存储所有配置信息,以及由zabbix收集的数据;

3、web interface:zabbix的GUI接口;

4、proxy:可选组件,常用于监控节点很多的分布式环境中,代理server收集部分数据转发到server,可以减轻server的压力;

5、agent:部署在被监控的主机上,负责收集主机本地数据如cpu、内存、数据库等数据发往server端或proxy端;

另外,zabbix server、proxy、agent都有自己的配置文件以及log文件,重要的参数需要在这里配置。

2.安装zabbix

2.1 环境监测

[root@zabbix ~]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core)
[root@zabbix ~]# uname -r
3.10.0-957.el7.x86_64

2.2 安装zabbix过程

安装方式的选择:

  • 编译安装 (服务较多,环境复杂)
  • yum安装(干净环境)

服务端脚本安装

#!/bin/bash

# 安装数据库和NGINX
yum install -y epel-release
yum install -y mariadb mariadb-server nginx

# 启动mariadb
systemctl start mariadb

#新建一个文件夹
mkdir /root/zabbix -p
cd /root/zabbix

# 从阿里云下载zabbix所需的RPM包
curl -O https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
curl -O https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-nginx-conf-4.4.10-1.el7.noarch.rpm
curl -O https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-web-4.4.10-1.el7.noarch.rpm
curl -O https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-web-mysql-4.4.10-1.el7.noarch.rpm
curl -O https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-server-mysql-4.4.10-1.el7.x86_64.rpm
curl -O https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-proxy-mysql-4.4.10-1.el7.x86_64.rpm
curl -O https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-web-japanese-4.4.10-1.el7.noarch.rpm
curl -O https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-agent-4.4.10-1.el7.x86_64.rpm

yum localinstall -y zabbix-release-4.4-1.el7.noarch.rpm
yum localinstall -y *.rpm


# 建立一个zabbix库
/usr/bin/mysql -uroot  -e 'create database zabbix character set utf8 collate utf8_bin;'

# 新建一个zabbix用户
/usr/bin/mysql -uroot  -e 'grant all privileges on zabbix.* to zabbix@localhost identified by "zabbix123";'

# 导入数据
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz| /usr/bin/mysql -uzabbix -pzabbix123 zabbix

# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
setenforce 0

# 修改zabbix_server.conf
sed -i.ori '92a DBHost=localhost' /etc/zabbix/zabbix_server.conf
sed -i.ori '101a DBName=zabbix' /etc/zabbix/zabbix_server.conf
sed -i.ori '119a DBUser=zabbix' /etc/zabbix/zabbix_server.conf
sed -i.ori '128a DBPassword=zabbix123' /etc/zabbix/zabbix_server.conf

# MySQL是编译安装的这个DBSocket需要填写MySQL对应的sock文件地址
#sed -i.ori '131a DBSocket=/data/mysql/mysql.sock' /etc/zabbix/zabbix_server.conf

# 修改PHP的时区和 获取sock文件位置
sed -i.ori '879a date.timezone = Asia/Shanghai' /etc/php.ini
#sed -i.ori '1154a mysqli.default_socket = /data/mysql/mysql.sock' /etc/php.ini

#修改nginx中的zabbix web配置文件
sed -i.ori '4a listen          8088;' /etc/nginx/conf.d/zabbix.conf
sed -i.ori '5a server_name     www.ceshi.com;' /etc/nginx/conf.d/zabbix.conf

# 启动所有服务
systemctl restart zabbix-server zabbix-agent  nginx php-fpm
# 将所有服务设置为开机启动
systemctl enable zabbix-server zabbix-agent  nginx  php-fpm

2.3 客户端安装zabbix-agent

curl -O https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-agent-4.4.10-1.el7.x86_64.rpm
yum localinstall -y zabbix-agent*
# 这里的ip地址写zabbix-service的
sed -i.ori '98a Server=192.168.209.130' /etc/zabbix/zabbix_agentd.conf
sed -i.ori '140a ServerActive=192.168.209.130' /etc/zabbix/zabbix_agentd.conf

systemctl start zabbix-agent
systemctl enable zabbix-agent

2.4 检测连通性
服务端安装zabbix-get检测工具

yum install -y zabbix-get

在服务端进行测试
注意:只能在服务端进行测试

zabbix_get -s 127.0.0.1 -p 10050 -k "system.cpu.load[all,avg1]"
测试结果

[root@localhost zabbix]# zabbix_get -s 127.0.0.1 -p 10050 -k "system.cpu.load[all,avg1]"
0.040000

三、web界面操作

1. zabbix的web安装

访问zabbix-server的地址注意端口号为8088

Zabbix架构与搭建_第2张图片
选择数据库,输入密码

Zabbix架构与搭建_第3张图片
进入登陆界面 账号Admin密码zabbix 注意A大写

Zabbix架构与搭建_第4张图片

很简单就搭建完成了

Zabbix架构与搭建_第5张图片

你可能感兴趣的:(zabbix,linux)