首页 > 其他分享 >Zabbix 部署

Zabbix 部署

时间:2022-11-14 13:25:17浏览次数:70  
标签:service 部署 zabbix server Zabbix bogon root

Zabbix简介

zabbix介绍

Zabbix 是由 Alexei Vladishev 创建,目前是由 Zabbix SIA 在持续开发和提供支持。

Zabbix 是一种企业级的分布式开源监控解决方案。

Zabbix 是一款能够监控众多网络参数和服务器的健康度和完整性的软件。Zabbix 使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的警报。这样可以快速相应服务器问题。Zabbix 基于存储的数据提供出色的报告和数据可视化。这些功能使得 Zabbix 成为容量规划的理想选择。

Zabbix 支持轮询和被动捕获。所有的 Zabbix 报告、统计信息和配置参数都可以通过基于 Web 的前端页面进行访问。基于 Web 的前端页面确保您的网络状态和服务器健康状况可以从任何地方进行评估。在经过适当的配置后,Zabbix 可以在监控 IT 基础设施方面发挥重要作用。无论是对于拥有少量服务器的小型组织,还是拥有大量服务器的大型公司而言,同样适用。

功能介绍

数据采集

  • 可用性和性能采集;
  • 支持 SNMP(包括主动轮询和被动捕获)、IPMI、JMX、VMware 监控;
  • 自定义检查;
  • 按照自定义的时间间隔采集需要的数据;
  • 通过 Server/Proxy 和 Agents 来执行数据采集。

灵活的阈值定义

  • 您可以定义非常灵活的告警阈值,称之为触发器,触发器从后端数据库获得参考值。

高度可配置化的告警

  • 可以根据递增计划、接收者、媒介类型自定义发送告警通知;
  • 使用宏变量可以使告警通知变得更加高效有益;
  • 自动动作包含远程命令

实时图形

  • 使用内置图形功能可实以将监控项绘制成图形。

Web 监控功能

  • Zabbix 可以追踪模拟鼠标在 Web 网站上的点击操作,来检查 Web 网站的功能和响应时间。

丰富的可视化选项

  • 能够创建可以将多个监控项组合到单个视图中的自定义图形;
  • 网络拓扑图;
  • 以仪表盘样式展示自定义聚合图形和幻灯片演示;
  • 报表;
  • 监控资源的高层次(业务)视图。

历史数据存储

  • 存储在数据库中的数据;
  • 可配置的历史数据;
  • 内置数据管理机制(housekeeping)

配置简单

  • 将被监控设备添加为主机;
  • 主机一旦添加到数据库中,就会采集主机数据用于监控;
  • 将模板用于监控设备。

套用模板

  • 在模板中分组检查;
  • 模板可以关联其他模板,获得继承。

网络发现

  • 自动发现网络设备;
  • Zabbix Agent 发现设备后自动注册;
  • 自动发现文件系统、网络接口和 SNMP OIDs 值。

快捷的 Web 界面

  • 基于 PHP 的 Web 前端;
  • 可以从任何地方访问;
  • 您可以定制自己的操作方式;
  • 审计日志。

Zabbix API

  • Zabbix API 为 Zabbix 提供可编程接口,用于批量操作、第三方软件集成和其他用途。

权限管理系统

  • 安全的用户身份验证;
  • 将特定用户限制于访问特定的视图。

功能强大且易于扩展的 Zabbix Agent

  • 部署于被监控对象上;
  • 完美支持 Linux 和 Windows ;

二进制守护进程

  • 为了更好的性能和更少的内存占用,采用 C 语言编写;
  • 便于移植。

适应更复杂的环境

  • 使用 Zabbix Proxy 代理,可以轻松实现分布式远程监控。

架构介绍

Server

Zabbix server 是 Zabbix agent 向其报告可用性、系统完整性信息和统计信息的核心组件。是存储所有配置信息、统计信息和操作信息的核心存储库

数据库

所有配置信息以及 Zabbix 收集到的数据都被存储在数据库中。

Web 界面

为了从任何地方和任何平台轻松访问 Zabbix ,我们提供了基于 web 的界面。该界面是 Zabbix server 的一部分,通常(但不一定)和 Zabbix server 运行在同一台物理机器上。

Proxy

Zabbix proxy 可以替 Zabbix server 收集性能和可用性数据。Zabbix proxy 是 Zabbix 环境部署的可选部分;然而,它对于单个 Zabbix server 负载的分担是非常有益的

Agent

Zabbix agents 部署在被监控目标上,用于主动监控本地资源和应用程序,并将收集的数据发送给 Zabbix server。

数据流

此外,重要的是,需要回过头来了解下 Zabbix 内部的整体数据流。首先,为了创建一个采集数据的监控项,您就必须先创建主机。其次,必须有一个监控项来创建触发器。最后,您必须有一个触发器来创建一个动作,这几个点构成了一个完整的数据流。因此,如果您想要收到 CPU load it too high on Server X 的告警,您必须首先为 Server X 创建一个主机条目,其次创建一个用于监视其 CPU 的监控项,最后创建一个触发器,用来触发 CPU is too high 这个动作,并将其发送到您的邮箱里。虽然这些步骤看起来很繁琐,但是使用模板的话,其实并不复杂。也正是由于这种设计,使得 Zabbix 的配置变得更加灵活易用。

zabbix-5.0版本部署

监控端部署

环境

主机 IP地址
Zabbix_Server 192.168.23.24
Web1 192.168.23.25

基础设置

[root@bogon ~] hostnamectl  set-hostname zabbix_server     //设置主机名
[root@zabbix_server ~] systemctl stop firewalld.service    //关闭防火墙
[root@zabbix_server ~] systemctl disable firewalld.service //禁用防火墙
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@zabbix_server ~] setenforce 0    //临时关闭selinux

准备Zabbix-repo

rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm   //官网镜像

[root@zabbix-server ~] vim /etc/yum.repos.d/zabbix.repo     //国外镜像不可用时,可以使用阿里提供的zabbixYUM源。
[zabbix]
name=alibaba zabbix
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/
gpgcheck=0
enabled=1

[zabbix2]
name=alibaba zabbix frontend
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/frontend/
gpgcheck=0
enabled=1

安装Zabbix服务器

[root@bogon ~] yum clean
[root@bogon yum.repos.d] yum install zabbix-web-mysql-scl zabbix-apache-conf-scl //zabbix-server-mysql:数据库  //zabbi-agent:代理程序(上报信息的程序)
[root@zabbix_server ~] yum install centos-release-scl   //centos发布scl
[root@zabbix_server ~] yum install zabbix-web-mysql-scl zabbix-apache-conf-scl  //zabbix前台页面

安装数据库

[root@bogon ~]  yum -y install mariadb mariadb-server
[root@bogon ~]  systemctl enable mariadb    //启动数据库
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@bogon ~]  systemctl start mariadb
										//授权zabbix账号
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;

MariaDB [(none)]> create user zabbix@'localhost' identified by 'P@ssw0rd1234';

MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost;

MariaDB [(none)]> flush privileges;

MariaDB [(none)]> quit;

初始化zabbix

[root@bogon ~] ls /usr/share/doc/zabbix-server-mysql-5.0.29/
AUTHORS        ChangeLog      COPYING        create.sql.gz  double.sql     NEWS           README

[root@bogon ~] zcat /usr/share/doc/zabbix-server-mysql-5.0.29/create.sql.gz | mysql -uzabbix -p'P@ssw0rd1234' zabbix

配置sql账号密码

[root@bogon ~] vi /etc/zabbix/zabbix_server.conf   //修改配置文件如下内容
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=P@ssw0rd1234               						//这里是刚刚授权的密码

//启动zabbix
[root@bogon ~] systemctl enable zabbix-server.service
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
[root@bogon ~] systemctl start zabbix-server.service

[root@bogon ~] vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf //修改配置文件内容
php_value[date.timezone] = Asia/Shanghai

//重启zabbix全部进程
[root@bogon ~] systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
[root@bogon ~] systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/rh-php72-php-fpm.service to /usr/lib/systemd/system/rh-php72-php-fpm.service.

访问Web

http://zabbix_server_IP/zabbix/

image-20221109175642093

image-20221109175653363

image-20221109175703547

image-20221109175709383

image-20221109175720982

image-20221109175727578

image-20221109175732703

image-20221109175738374

image-20221109175746283

administration>users>admin user

右上角用户图标,更换语言

image-20221109175821671

image-20221109175826476

image-20221109175831152

被监控端部署

基础配置

[root@bogon ~] hostnamectl set-hostname web1    //设置主机名
[root@bogon ~] systemctl stop firewalld  				//关闭防火墙
[root@bogon ~] systemctl disable firewalld			//停止开机自启
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@bogon ~] setenforce 0											//临时关闭selinux

准备zabbix-repo

[root@bogon ~] vi /etc/yum.repos.d/zabbix.repo    //添加zabbix-repo,也可以从官网下载源码包进行安装
[zabbix]
name=alibaba zabbix
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/
gpgcheck=0
enabled=1

[zabbix2]
name=alibaba zabbix frontend
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/frontend/
gpgcheck=0
enabled=1
[root@bogon ~] yum -y install zabbix-agent       //安装zabbix-agent

配置主服务器地址

[root@bogon ~] vi /etc/zabbix/zabbix_agentd.conf     //修改配置文件来配置zabbix主机地址
Server=192.168.23.24,192.168.100.11          被动模式 zabbix-server-ip   //两个ip是如果有2个zabbixserver服务器可以用逗号隔开   
ServerActive=192.168.23.24,192.168.100.11    主动模式  zabbix-server-ip (谁从我这里采集数据)//两个ip是如果有2个zabbixserver服务器可以用逗号隔开
Hostname=web1                                给被控端起个名字 建议使用$HOSTNAME

[root@bogon ~] systemctl start zabbix-agent 				////启动zabbix-agent:10050
[root@bogon ~] systemctl enable zabbix-agent
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[root@bogon ~] ss -anlp |grep :10050
tcp    LISTEN     0      128       *:10050                 *:*                   users:(("zabbix_agentd",pid=2186,fd=4),("zabbix_agentd",pid=2185,fd=4),("zabbix_agentd",pid=2184,fd=4),("zabbix_agentd",pid=2183,fd=4),("zabbix_agentd",pid=2182,fd=4),("zabbix_agentd",pid=2181,fd=4))
tcp    LISTEN     0      128    [::]:10050              [::]:*                   users:(("zabbix_agentd",pid=2186,fd=5),("zabbix_agentd",pid=2185,fd=5),("zabbix_agentd",pid=2184,fd=5),("zabbix_agentd",pid=2183,fd=5),("zabbix_agentd",pid=2182,fd=5),("zabbix_agentd",pid=2181,fd=5))

zabbix_get命令行测试

//来到zabbix服务器上执行
[root@zabbix_server ~] yum -y install zabbix-get    //5.0zabbix并没有默认安装zabbix-get
//zabbix默认key
[root@zabbix_server ~] zabbix_get -s 192.168.23.25 -k system.uname     //查看被控端名称及内核
Linux web1 3.10.0-1127.el7.x86_64 #1 SMP Tue Mar 31 23:36:51 UTC 2020 x86_64

[root@zabbix_server ~] zabbix_get -s 192.168.23.25 -k system.cpu.load[all,avg15]   //查看被控端cpu在15分钟的情况
0.030000

[root@zabbix_server ~] zabbix_get -s 192.168.23.25 -k net.tcp.service[http]					//0假    1真
0

Apache监控示例(图形监控)

创建主机群组

image-20221109175946938

image-20221109175951258

image-20221109175956450

创建主机

选择群组
image-20221109180013124

image-20221109180019587

image-20221109180025774

image-20221109180031583

image-20221109180038549

image-20221109180052106

image-20221109180058550

image-20221109180104003

创建图形

image-20221109180113796

image-20221109180119218

image-20221109180124372

image-20221109180131089

image-20221109180141844

image-20221109180149002

标签:service,部署,zabbix,server,Zabbix,bogon,root
From: https://www.cnblogs.com/Jqazc/p/16888732.html

相关文章

  • docker 部署code-server
    1.创建一个存放配置的目录mkdir-p~/.config/code-server2.拉取最新codeserver镜像dockerpullcodercom/code-server:latest3.启动容器配置宿主机挂载点do......
  • 使用GitHub Actions实现自动化部署
    前言大家在工作中想必都是通过自动化部署来进行前端项目的部署的,也就是我们在开发完某个需求时,我们只需要将代码推送到某个分支,然后就能自动完成部署,我们一般不用关心项目是......
  • zabbix搭建
    Zabbix简介zabbix介绍Zabbix是由AlexeiVladishev创建,目前是由ZabbixSIA在持续开发和提供支持。Zabbix是一种企业级的分布式开源监控解决方案。Zabbix是一款能......
  • Tomcat部署及优化
      一、Tomcat1.概述Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试......
  • 上网部署(锐捷智慧教室篇)
    大家好,我是小杜,新的一周又开始了,早起的鸟儿要去吃虫去,做为一个快乐的学习达人,必须是第一个到公司。到了公司,老规矩啃着肉包看着笔记,时不时来一口豆浆。在早餐的......
  • .net core iis 部署时通用的web.config配置
    <?xmlversion="1.0"encoding="utf-8"?><configuration><locationpath="."inheritInChildApplications="false"><system.webServer><handlers><add......
  • 上网部署(锐捷无线篇)
    大家好,我是小杜,新的一周又开始了,早起的鸟儿要去吃虫去,做为一个快乐的学习达人,必须是第一个到公司。到了公司,老规矩啃着肉包看着笔记,时不时来一口豆浆。在早餐的这段时间......
  • Ubuntu 20.04 安装部署 MySQL 8.0
    1.规划官网:MySQL社区官网,下载包需要创建oracle账户,本地使用的是Linux通用的二进制包mysql-8.0.31-linux-glibc2.12-x86_64.tarmd5:89e902edeb75216c366e878f3c9e85be......
  • blazor调试部署全过程
    安装了最新的dotnetSDK最好直接下载安装版,不要zip版,安装版会自动注册一些信息,省去后面的很多麻烦.设置如下OS环境变量,并重启计算机.(1)将dotnet.exe路径加......
  • Docker部署Redis
    1.拉取redis镜像dockerpullredis:latest2.运行docker容器     dockerrun-p6379:6379 \    -v/mydata/redis/data:/data \     -v/mydat......