部署zabbix监控服务

部署zabbix监控服务

什么是zabbix

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

zabbix由2部分构成,zabbix server与可选组件zabbix agent。

zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Ubuntu,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。

zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(agent方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。
另外zabbix server还支持SNMP (v1,v2),可以与SNMP软件(例如:net-snmp)等配合使用。

zabbix的特点

zabbix的主要特点:

  • 安装与配置简单,学习成本低
  • 支持多语言(包括中文)
  • 免费开源
  • 自动发现服务器与网络设备
  • 分布式监视以及WEB集中管理功能
  • 可以无agent监视
  • 用户安全认证和柔软的授权方式
  • 通过WEB界面设置或查看监视结果
  • email等通知功能

zabbix主要功能:

  • CPU负荷
  • 内存使用
  • 磁盘使用
  • 网络状况
  • 端口监视
  • 日志监视

zabbix的配置文件

zabbix配置文件有两种:

  • 服务器端配置文件(/usr/local/etc/zabbix_server.conf)
  • 客户端配置文件(/usr/local/etc/zabbix_agentd.conf)
  • zabbix代理配置文件(/usr/local/etc/zabbix_proxy.conf)

服务器端配置文件zabbix_server.conf常用配置参数:

参数 作用 LogFile 设置服务端日志文件存放路径 ListenIP 设置服务端监听IP ListenPort 设置服务端监听的端口号 PidFile 设置服务端进程号文件存放路径 DBHost 指定zabbix的数据库服务器IP DBName 指定zabbix使用的数据库库名 DBUser 指定zabbix数据库登录用户 DBPassword 指定zabbix数据库登录密码 DBPort 指定zabbix数据库端口号 User 设置zabbix以什么用户的身份运行 AlertScriptsPath 设置告警脚本存放路径 ExternalScripts 外部脚本存放路径

客户端配置文件zabbix_agentd.conf常用配置参数:

参数 作用 Server 指定zabbix服务器的IP或域名 ServerActive 指定zabbix服务器的IP或域名 Hostname 指定本机的主机名,此项必须与web界面配置项一致 UnsafeUserParameters 是否启用自定义监控项,可选值为{1 | 0} UserParameter 指定自定义监控脚本参数 LogFile 设置客户端日志文件存放路径

部署zabbix

环境说明:部署zabbix需要再LAMP架构的基础上进行部署

环境 IP 要安装的应用 服务器 192.168.111.135 lamp架构

zabbix server

zabbix agent 客户端 192.168.111.137 zabbix

agent

因为 zabbix 是用 php 语言开发的,所以必须先部署 lamp 架构,使其能够支持运行 php 网页

apache:需要1.13.12及以上

数据库:mysql需要MySQL8以上,mariadb需要10.5及以上

php:7.4.0及以上,8.0,8.1

zabbix服务端安装

准备工作

zabbix官方下载

[root@localhost ~]# wget https://cdn.zabbix.com/zabbix/sources/stable/6.2/zabbix-6.2.2.tar.gz       //下载包

[root@localhost ~]# tar xf zabbix-6.2.2.tar.gz      //解压包

[root@localhost ~]# useradd -r -M -s /sbin/nologin zabbix       //创建用户

[root@localhost ~]# dnf -y install net-snmp-devel libevent-devel    //安装依赖包
[root@localhost ~]# mkdir -p /usr/lib/zabbix
[root@localhost ~]# chown -R zabbix.zabbix /usr/lib/zabbix/
[root@localhost ~]# chmod 770 /usr/lib/zabbix/

数据库操作

mysql> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.001 sec)

mysql> create user 'zabbix'@'localhost' identified by 'zabbix123!';
Query OK, 0 rows affected (0.02 sec)

mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost';
Query OK, 0 rows affected, 1 warning (0.01 sec)

mysql> SET GLOBAL log_bin_trust_function_creators = 1;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.000 sec)

恢复数据(必须按照schema images data的顺序恢复)

[root@localhost ~]# cd zabbix-6.2.2/database/mysql/
[root@localhost mysql]# pwd
/root/zabbix-6.2.2/database/mysql
[root@localhost mysql]# ls
Makefile.am  Makefile.in  data.sql  double.sql  history_pk_prepare.sql  images.sql  schema.sql
[root@localhost mysql]# mysql -uzabbix -p'zabbix123!' zabbix < schema.sql
[root@localhost mysql]# mysql -uzabbix -p'zabbix123!' zabbix < images.sql
[root@localhost mysql]# mysql -uzabbix -p'zabbix123!' zabbix < data.sql

配置源代码

[root@localhost mysql]# cd
[root@localhost ~]# cd zabbix-6.2.2
[root@localhost zabbix-6.2.2]# ./configure --enable-server --enable-agent --with-mysql  --with-net-snmp --with-libcurl --with-libxml2
[root@localhost zabbix-6.2.2]# make && make install

//&#x914D;&#x7F6E;zabbix_server.conf&#x6587;&#x4EF6;
[root@localhost ~]# cd /usr/local/etc/
[root@localhost etc]# ls
zabbix_agentd.conf  zabbix_agentd.conf.d  zabbix_server.conf  zabbix_server.conf.d
[root@localhost etc]# vim zabbix_server.conf
DBPassword=zabbix123!

[root@localhost ~]# cd zabbix-6.2.2
[root@localhost zabbix-6.2.2]# zabbix_server
[root@localhost zabbix-6.2.2]# zabbix_agentd
[root@localhost ~]# ss -anlt
State   Recv-Q  Send-Q   Local Address:Port      Peer Address:Port  Process
LISTEN  0       128            0.0.0.0:22             0.0.0.0:*
LISTEN  0       128            0.0.0.0:10050          0.0.0.0:*
LISTEN  0       128            0.0.0.0:10051          0.0.0.0:*
LISTEN  0       128            0.0.0.0:9000           0.0.0.0:*
LISTEN  0       128               [::]:22                [::]:*
LISTEN  0       80                   *:3306                 *:*
LISTEN  0       128                  *:80                   *:*

zabbix web界面安装前配置

[root@localhost ~]# sed -ri 's/(post_max_size =).*/\1 16M/g' /etc/php.ini
[root@localhost ~]# sed -ri 's/(max_execution_time =).*/\1 300/g' /etc/php.ini
[root@localhost ~]# sed -ri 's/(max_input_time =).*/\1 300/g' /etc/php.ini
[root@localhost ~]# sed -i '/;date.timezone/a date.timezone = Asia/Shanghai' /etc/php.ini
[root@localhost ~]# service php-fpm restart
[root@localhost zabbix-6.2.2]# cp -a ui/* /usr/local/apache/htdocs/zabbix.example.com/
cp: overwrite '/usr/local/apache/htdocs/zabbix.example.com/index.php'? y
[root@localhost zabbix-6.2.2]# chown -R apache.apache /usr/local/apache/htdocs

访问测试

部署zabbix监控服务

部署zabbix监控服务

部署zabbix监控服务

部署zabbix监控服务

部署zabbix监控服务

部署zabbix监控服务

部署zabbix监控服务

部署zabbix监控服务

zabbix客户端部署

#&#x521B;&#x5EFA;&#x7528;&#x6237;
[root@localhost ~]# useradd -rMs /sbin/nologin zabbix

#&#x4E0B;&#x8F7D;&#x76F8;&#x5173;&#x4F9D;&#x8D56;&#x5305;
[root@localhost ~]# dnf -y install make gcc gcc-c++ pcre-devel openssl openssl-devel

#&#x4E0B;&#x8F7D;&#xFF0C;&#x89E3;&#x538B;&#xFF0C;&#x7F16;&#x8BD1;&#x5B89;&#x88C5;zabbix_agentd
[root@localhost ~]# wget https://cdn.zabbix.com/zabbix/sources/stable/6.2/zabbix-6.2.2.tar.gz
[root@localhost ~]# tar -xf zabbix-6.2.2.tar.gz
[root@localhost ~]# cd zabbix-6.2.2
[root@localhost zabbix-6.2.2]# ./configure --enable-agent
[root@localhost zabbix-6.2.2]# make install

#&#x4FEE;&#x6539;&#x914D;&#x7F6E;&#x6587;&#x4EF6;
[root@localhost ~]# vim /usr/local/etc/zabbix_agentd.conf
Server=192.168.111.135          //&#x4FEE;&#x6539;&#x4E3A;&#x670D;&#x52A1;&#x7AEF;IP&#x5730;&#x5740;

ServerActive=192.168.111.135            //agent&#x4E3B;&#x52A8;&#x6A21;&#x5F0F;

Hostname=zzzz           //zabbix&#x7CFB;&#x7EDF;&#x5185;&#x4E3B;&#x673A;&#x540D;

#&#x542F;&#x52A8;&#x5E76;&#x67E5;&#x770B;&#x7AEF;&#x53E3;&#x53F7;
[root@localhost ~]# zabbix_agentd
[root@localhost ~]# ss -anlt
State        Recv-Q       Send-Q             Local Address:Port               Peer Address:Port       Process
LISTEN       0            128                      0.0.0.0:10050                   0.0.0.0:*
LISTEN       0            128                      0.0.0.0:22                      0.0.0.0:*
LISTEN       0            128                         [::]:22                         [::]:*

#&#x5173;&#x95ED;&#x9632;&#x706B;&#x5899;&#x548C;selinux
[root@localhost ~]# systemctl disable --now firewalld
[root@localhost ~]# setenforce 0
[root@localhost ~]# vim /etc/selinux/config
SELINUX=disabled

Original: https://www.cnblogs.com/Their-own/p/16648413.html
Author: 事愿人为
Title: 部署zabbix监控服务

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/612534/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 多商户商城系统功能拆解26讲-平台端分销设置

    多商户商城系统,也称为B2B2C(BBC)平台电商模式多商家商城系统。可以快速帮助企业搭建类似拼多多/京东/天猫/淘宝的综合商城。 多商户商城系统支持商家入驻加盟,同时满足平台自营…

    数据库 2023年6月14日
    0102
  • Mysql数据库存取原理及性能优化

    一、Mysql的系统架构图 二、Mysql存储引擎 Mysql中的数据是通过一定的方式存储在文件或者内存中的,任何方式都有不同的存储、查找和更新机制,这意味着选择不同的方式对于数据…

    数据库 2023年5月24日
    061
  • 【黄啊码】关于微信支付走过的坑

    错误:未定义数组索引:openid 。经过检查发现是 :微信支付授权获取 openId {“errcode”:40163,”errmsg&#82…

    数据库 2023年6月16日
    090
  • 创建一个属于自己的linux系统Docker镜像之旅-简单模式

    在创建容器之前首先要把该开启的服务都启动 1.CentOS的虚拟机/服务器 2.Docker 服务开启 systemctl start docker 文件的创建,可以在root下直…

    数据库 2023年6月6日
    083
  • Java面试题(六)–Redis

    1 Redis基础篇 1、简单介绍一下Redis优点和缺点? 优点: 1、本质上是一个 Key-Value 类型的内存数据库,很像memcached 2、整个数据库统统加载在内存当…

    数据库 2023年6月16日
    089
  • MySQL函数学习(四)—–聚合函数

    注:笔记旨在记录 四、MySQL 聚合函数 \ 函 数 名 称 作 用 完 成 1 MAX 求最大值 勾 2 MIN 求最小值 勾 3 COUNT 求数量 勾 4 BIT_COUN…

    数据库 2023年5月24日
    0103
  • Redis-持久化

    因为Redis是内存操作,意味着掉电就GG, 所以为了保证异常重启等问题后能尽快恢复服务,还是需要一定的持久化机制来保证。Redis提供了两种持久化机制: AOF Append O…

    数据库 2023年6月11日
    0103
  • MySQL设计表结构

    时间datetime 创建时间不能自动更新,更新时间需要自动更新 CURRENT_TIMESTAMP:创建时,会用当前时间自动填充该字段值 CURRENT_TIMESTAMP ON…

    数据库 2023年6月9日
    091
  • ajax与thymeleaf分别实现数据传输

    小杰笔记篇: 1:第一种:利用Model和thymeleaf引擎来完成: Controller层: html:引入引擎 第二种方式:ajax: 第一步:创建User实体类假装数据库…

    数据库 2023年6月6日
    095
  • Mysql 的Innodb引擎和Myisam数据结构和区别

    先大体看一下MySQL的SQL layer层的一个架构流程: 对一些关键模块做一下简单的描述: 初始模块:初始一些参数,比如初始myinit配置文件(在安装的根目录下)里的一些参数…

    数据库 2023年6月16日
    092
  • 分布式锁的几种实现方式

    转自于:https://www.cnblogs.com/austinspark-jessylu/p/8043726.html分布式锁的几种实现方式 目前几乎很多大型网站及应用都是分…

    数据库 2023年6月16日
    0121
  • Golang异常处理

    从error的定义说起 type error interface { Error() string } Go 的error类型是一个接口。在Go中,只要实现了接口约定的方法,就等同…

    数据库 2023年6月16日
    085
  • 0x01MySQL环境配置与软件安装

    0x01MySQL环境配置与软件安装 工具/原料 操作系统:CentOS7.6 软件版本: MySQL5.7.28 桌面环境:Windows 10 服务器远程工具组合:远程+文件上…

    数据库 2023年6月9日
    086
  • 【SQL实战】期末考试,如何统计学生成绩

    年关将至,这两天所有小学都进入了期末考试阶段。在考试结束时,有必要清点学生的分数。有趣的是,学校提供的成绩单现在并不直接标明分数,而是一个等级,如优秀、良好、合格、不及格。至少北京…

    数据库 2023年5月24日
    0162
  • Linux 磁盘挂载

    具体操作是: 1.先对磁盘进行格式化; 挂载磁盘到需要的挂载点; 3.添加分区启动表 1、首先查看系统中磁盘信息 命令为:fdisk -l 2、格式化要挂载的磁盘 格式化命令为:m…

    数据库 2023年6月14日
    0153
  • 【JDBC】笔记(4)— JDBC 事务自动提交机制;账户转账演示事务代码(bug版+修正版)

    楔子: JDBC 的事务默认是自动提交的: 只要执行一条 DML语句,则自动提交一次。但是在实际的业务中,通常是多条 DML语句 联合完成的,那么就必须保证这些 DML语句 在同一…

    数据库 2023年5月24日
    0142
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球