小阿轩yx-Zabbix企业级分布式监控环境部署
媒介
- “运筹帷幄之中,决胜千里之外”
- 监控在 IT 运维中占据着重要地位,按比例说占 30% 也不为过
- 在监控体系开源软件中有许多可选择的工具,但是真正符合要求的、能够真正办理业务题目标监控体系软件却凤毛麟角
监控体系的功能概述
监控
有两个内容
重点在第一个字眼
对应的英文单词
在盘算机领域可以分为5种监控类型
- 应用性能监控
- 业务交易监控
- 网络性能监控
- 操作体系监控
- 网络站点监控
上面5种类型将监控概念分别成了多个领域
通常所说的监控,都会含糊的包含以上5个细分领域
任何一个 IT 业务环境中,都会存在各种各样的硬件装备、软件应用等
按照逻辑条理可以将监控行为分别为5个条理
- 基础办法监控
- 体系层监控
- 应用层监控
- 业务监控
- 端用户体验监控
最底层基础办法监控
例如
这些装备的可靠性和稳定性直接影响到上层服务应用的稳定性,以是必要对网络流量、丢包环境、错包环境、连接数等等基础办法的核心指标举行监控
体系层监控
例如
- 对 url 访问的性能
- 访问的调用数
- 访问的延迟
- 对服务提供性能举行监控
- 服务的错误率
同时对 sql 也必要举行监控,查察是否有慢 sql
- 对于 cache 来说,必要监控缓存的命中率和性能,每个服务的响应时间等等
业务监控
详细指什么?
举个例子
一个典型的交易网站,必要关注用户登录环境、注册环境、下单环境、付出环境等等
这些直接影响到实际触发的业务交易环境
- 可以提供给运营商和公司高管们必要关注的数据
- 直接以数据支撑公司在战略层面的决策和方向
端用户体验监控
一个应用程序大概通过三种方式交付到用户手上
用户通过欣赏器、客户端打开连接到我们的服务
在用户端
- 用户的体验怎么样?
- 用户端性能怎么样?
- 有没有产生错误等等?
监控体系的实现原理
模块组成
大体可以分为两部门
这两部门构成了监控体系的基本模子
采集协议
按照支持的协议方式,监控 IT 数据采集可以分为两种
监控模式
监控体系数据采集可以分为
被动模式
主动模式
一般来说
- 被动模式对监控端服务器的开销较大,得当小规模的监控环境
- 被动模式对监控端服务器的开销较小,得当大规模的监控环境
署理架构
对于大规模的监控环境
- 被监控节点较多
- 而且监控类型也许多
- 监控产生的数据和网络连接开销非常大
数据采集方式除了利用主动模式之外,还必要利用署理的架构
通过署理架构分摊服务器端的性能开销
署理架构还支持跨地域、跨网络的分布式监控
常见的署理架构
- C/S/P架构(即 Client/Proxy/Server)
监控体系的开源产物
zabbix
- 是一款精彩的企业级运维监控平台
- 可用于监控从服务器、网络装备到 Web 应用程序和数据库的性能和可用性的一切
- 可以安装在 Linux、AIX、Windows、Solaris、MacOS X、FreeBSD、OpenBSD等体系上利用,具有非常精良的适配能力
Prometheus+Grafana
- 是一个开源体系监控和警报工具包
- 重要用于对基础办法的监控
包括
- 服务器(CPU、MEM等)
- 数据库(MYSQL、PostgreSQL等)
- Web服务等
几乎所有东西都可以通过 Prometheus 举行监控
Cacti
- 是一款网络流量检测图形工具
- 连接到 RRDTool,生成与网络数据相关的图标,具有非常强大的数据用户管理功能
- 可以指定每一个用户能查察树状布局、host 以及任何一张图
- 还可以与 LDAP 结合举行用户验证,同时也能自己增长模版
Nagios
- 是一个监控体系运行状态和网络信息的监控体系
- 它可以监控所指定的本地或远程主机以及服务,同时提供异常关照功能等
- 能够监控几乎所有类型的组件
- 网络协议
- 操作体系
- 体系指标
- 应用程序
- 服务
- web 服务器
- 网站
- 中间件等
Checkmk
- 是一个高度可扩展的监控工具
- 可监控服务器、网络、云资产、数据库、容器、物联网等
它有两种模式可用
- 基础版完全开源并提供免费和无穷制的监控
- 企业版附带附加功能
Checkmk 具有部署快、高度自动化、配置灵活的特点。
OpenNMS
- 是一个企业级基于 Java/XML 的分布式网络和体系监控管理平台。
- 它能够显示网络中各中终端和服务器的状态和配置,为管理网络提供有用的信息。
- 它专为Linux 设计,但也支持 windows、Solaris 和OSX。
OpenNMS 可以利用 JMX、WMI、SNMP、NRPE、XML HTTP、JDBC、XML、JSON 等收集体系指标。
Netdata
- 是一款 Linux 性能实时监测工具
- 它可以为 Linux 体系、应用程序、SNMP 服务等提供实时的性能监测
- 现在在物理体系、虚拟机、容器和物联网/边缘装备上运行
特点
可以同时并发监控数万个指标,交互式可视化和富有洞察力的康健警报,可以即时诊断基础架构中的异常环境。
Zabbix 体系概述
初识 Zabbix
- 由 Alexei Vladishev 创建
- 现在由 Zabbix SIA 主导开发和支持
- 利用灵活的关照机制,允许用户为几乎任何事件配置基于电子邮件的告警以实现对服务器题目做出快速反应。
- 基于存储的数据提供精彩的陈诉和数据可视化功能。这使得 Zabbix 成为容量规划的理想选择。
- 支持轮询和 trapping
- 所有 Zabbix 陈诉和统计数据以及配置参数都可以通过基于 Web 的前端访问
- 基于 Web 的前端确保可以从任何位置评估网络状态和服务器的康健状况
如果配置得当,不管对于拥有少量服务器的小型构造还是拥有大量服务器的大公司来讲,Zabbix 都可以在监控 IT 基础办法方面发挥重要作用
- 是免费的
- 是在 GPL 通用公共许可证第2版下编写和分发的。意味着它的源代码是免费分发的,可供公众利用
Zabbix 是什么?
- 是一种企业级的分布式开源监控体系的办理方案
- 是一个基于 web 界面的提供分布式体系监控,以及网络监控功能的企业级开源办理方案。
- 是一款监控网络的浩繁参数以及服务器、虚拟机、应用程序、服务、数据库、网站、云等的康健和完整性的软件。
Zabbix 的功能特性
数据采集
- 可用性及性能检测
- 支持 SNMP(trapping 及 polling)、IPMI、JMX 监控
- 自界说检测
- 自界说间隔收集数据
- 三种脚色
灵活的阈值界说
- 允许灵活地自界说题目阀值,在 zabbix 中称为触发器(trigger),存储在后端数据库中。
高级告警配置
- 可以自界说告警升级(escalation)、吸收者及告警方式
- 告警信息可以配置,并允许利用宏(macro)变量
- 通过远程下令实行自动化动作(action)
实行绘图
扩展的图形化显示
- 允许自界说创建多监控项视图
- 生成网络拓扑(network maps)
- 自界说的面板(screen)和 slide shows,并允许在 dashboard 页面显示
- 生成监控陈诉
汗青数据存储
- 数据存储在数据库中;
- 汗青数据可配置;
- 内置数据清算机制。
配置简单
- 一次配置,终生监控,除非调整或删除
- 允许利用模板添加监控装备
模板利用
网络自动发现
- 自动发现网络装备;
- Agent 自动注册;
- 自动发现文件体系、网卡装备、SNMP OID 等。
快速的 Web 接口
Zabbix API
权限体系
安全特性、Agent 易扩展
- 在监控目标上部署;
- 支持 Linux 及 Windows。
二进制守卫进程
具备应对复杂环境环境
- 通过 Zabbix Proxy 可以非常容易的创建远程监控。
Zabbix 脚色及架构
Zabbix server
- 是 Zabbix 服务端守卫进程。
- Zabbix Agentd、Zabbix Proxy 的数据终极都是提交到 Server。
- 当然,并不是所有数据都主动提交给 Zabbix Server,也有的是 Server 主动获取数据。
Zabbix Agent
Zabbix Proxy
- 是 Zabbix 署理守卫进程,功能类似 Server。
不同的是
- zabbix_proxy 只是一个中转站,它必要把收集到的数据提交/被提交到 Server。
Zabbix Web
- 管理员通过 web 界面管理 zabbix 配置以及査看 zabbix 相关监控信息,通常与 zabbix server 运行在同一台主机上,也可以单独部署在独立的服务器上。
Zabbix 整体架构
实行拓扑布局
装备列表
装备 | 主机名 | IP 地址 | 体系 | 软件 | zabbix server | ZBX | 192.168.10.108 | CentOS7.9 | zabbix server 6.4.8 | zabbix proxy | proxy | 192.168.10.107 | CentOS7.9 | zabbix proxy 6.4.8 | zabbix agent | server01 | 192.168.10.101 | CentOS7.9 | zabbix agent 6.4.8 | zabbix agent | server01 | 192.168.10.102 | CentOS7.9 | zabbix agent 6.4.8 | 拓扑布局
LNMP 环境的搭建
(在 server 主机上)
修改主机名称
- [root@localhost ~]# hostnamectl set-hostname ZBX
- [root@localhost ~]# bash
复制代码 配置 yum 堆栈
下载阿里的堆栈文件
- [root@zbx]# rm -rf /etc/yum.repos.d/*
- [root@zbx]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
- [root@zbx]# curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
- [root@zbx]# yum clean all
复制代码 安装 php7 的堆栈
- [root@zbx]# yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
复制代码 生成 mariadb10.11 的堆栈文件
- [root@zbx]# vim /etc/yum.repos.d/mariadb.repo
- [mariadb]
- name=mariadb
- baseurl=https://mirrors.aliyun.com/mariadb/yum/10.11/centos/7/x86_64/
- gpgcheck=0
复制代码 清空 yum 缓存
- [root@zbx]# yum clean all
复制代码 安装 php7.4 和 nginx
- [root@zbx]# yum install -y --enablerepo=remi --enablerepo=remi-php74 mod_php php-gd* php php-opcache php-mbstring php-mysqlnd php-phpunit-PHPUnit php-pecl-xdebug php-pecl-xhprof php-fpm php-devel php-bcmath php-ldap gcc* libxml2-devel net-snmp net-snmp-devel libevent-devel curl-devel
复制代码 安装 mariadb-10.11
- [root@zbx]# yum -y install mariadb-server mariadb-devel nginx
复制代码 zabbix6.4.8 必要的各个平台软件的版本
- mysql 的版本要求 8.0.30-8.1.x
- mariadb 的版本要求 10.5.00-11.1.x
- nginx 的版本要求 1.20 or later
- php 的版本要求 7.4.0-8.2.x
关闭防火墙和内核机制并设置永久关闭
- [root@zbx]# systemctl stop firewalld
- [root@zbx]# systemctl disable firewalld
- [root@zbx]# setenforce 0
- [root@zbx]# vim /etc/sysconfig/selinux
- #修改前
- SELINUX=enforcing
- #修改后
- SELINUX=disabled
复制代码 配置 nginx
进入 nginx 目录
- [root@zbx]# cd /etc/nginx
复制代码 生成 nginx 配置文件
- [root@zbx nginx]# cp nginx.conf nginx.conf.bak
- [root@zbx nginx]# rm -rf nginx.conf
- [root@zbx nginx]# cp nginx.conf.default nginx.conf
复制代码 修改 nginx 配置文件
- [root@zbx nginx]# vim nginx.conf
- server {
- listen 80;
- server_name localhost;
- #charset koi8-r;
- #access log logs/host.access.logmain;
- location /{
- root /WWW ;
- index index.html index.htm index.php;
- }
- location ~\.php${
- root /WWW;
- fastcgi_pass 127.0.0.1:9000;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
- include fastcgi.conf;
- }
- }
复制代码 修改以下配置
- location / {
- root /www;
- index index.html index.htm index.php;
- }
- location ~ \.php$ {
- root /www;
- include fastcgi.conf;
启动服务
- [root@zbx nginx]# systemctl start nginx
- [root@zbx nginx]# systemctl enable nginx
- [root@zbx nginx]# systemctl start php-fpm
- [root@zbx nginx]# systemctl enable php-fpm
- [root@zbx nginx]# systemctl start mariadb
- [root@zbx nginx]# systemctl enable mariadb
复制代码 设置数据库暗码
- [root@zbx nginx]# mysqladmin -u root password 'pwd123'
复制代码 创建一个文件
- [root@zbx nginx]# mkdir /www
复制代码 测试 LNMP 环境
- [root@zbx nginx]# vim /www/test.php
- <?php
- $link=mysqli_connect('127.0.0.1','root','pwd123');
- if($link) echo "恭喜你,数据库连接成功啦!!";
- mysqli_close($link);
- ?>
复制代码 修改 php.ini
- [root@zbx nginx]# vim /etc/php.ini
- ##388 行,最长执行时间是 30 秒,数值0表示没有##执行时间的限制,你的程序需要跑多久便跑多久
- max_execution_time =300
- ##398 行,以秒为单位设定了脚本接收输入的最大时间
- max_input_time = 300
- ##923行
- date.timezone =Asia/Shanghai
- ##694,服务器可以接收的最大 POST 数据大小
- post_max_size = 16M
- ##1205,所有 bcmath 函数中十进制数字的数目
- bcmath.scale =1
复制代码 添加一个用户
- [root@zbx nginx]# useradd -M -s /sbin/nologin zabbix
复制代码 修改 php-fpm
- [root@zbx nginx]# vim /etc/php-fpm.d/www.conf
- user=zabbix
- group=zabbix
复制代码 重启服务
- [root@zbx nginx]# systemctl restart php-fpm
复制代码 zabbix 的安装与配置(在 server 主机上)
创建 zabbix 数据库
- [root@zbx]# mysql -uroot -ppwd123
- ##导入数据
- MariaDB [(none)]> create database zabbix character set utf8 collate utf8 bin;
- MariaDB [(none)]> create database zabbix_proxy character set utf8 collate utf8 bin;
- MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';
- MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@'localhost' identified by 'zabbix';
- MariaDB [(none)]> grant all privileges on zabbix_proxy.* To 'zabbix'@'localhost' identified BYzabbix';
- MariaDB [(none)]> grant all privileges on zabbix_proxy.* To 'zabbix'@'%' identified By 'zabbix';
复制代码 解压 zabbix 源码包
- [root@zbx]# tar zxvf zabbix-6.4.8.tar.gz
复制代码 进入目录
- [root@zbx]# cd zabbix-6.4.8/database/mysql/
复制代码 导入 zabbix 数据
- [root@zbx mysql]# mysql -uzabbix -pzabbix zabbix <schema.sql
- [root@zbx mysql]# mysql -uzabbix -pzabbix zabbix <images.sql
- [root@zbx mysql]# mysql -uzabbix -pzabbix zabbix <data.sql
- [root@zbx mysql]# mysql -uzabbix -pzabbix zabbix_proxy <schema.sql
复制代码
- 如果必要运行zabbix server,必要导入 schema.sql、images.sql、data.sql 这三个文件到zabbix数据库
- 如果必要运行zabbix agent,必要导入schema.sql 到zabbix_proxy 数据库。
zabbix 的安装与配置
进入 zabbix 目录
- [root@zbx]# cdc /root/zabbix-6.4.8
复制代码 源码安装 zabbix
- [root@zbx zabbix-6.4.8]# ./configure --prefix=/usr/local/zabbix/ --enable-server --enable-agent --with-mysql --with-libcurl --with-libxml2 --with-net-snmp --with-unixODBC --with-zabbix-get
复制代码 编译
- [root@zbx zabbix-6.4.8]# make
- [root@zbx zabbix-6.4.8]# make install
复制代码
- --prefix=/usr/local/zabbix:指定zabbix安装路径
- --enable-server:启动server端
- --enable-agent:启动agent端
- --with-mysql:编译连接mysql 相关依赖包
- --with-libcurl:启动curl相关,对SMTP身份验证
- --with-libxml2:启动 xml 相关,提供对 XML 文档的各种操作
- --with-net-snmp:启动 snmp 相关,用于 snmp 监控装备,支持 snmp 协议
- --with-unixodbc:启动 odbc 相关用于监控数据库
- --with-zabbix-get:zabbix_get 是一种下令行的应用
- --enable-java:启动 java-agent 用于监控 java 类,必要安装 JAVA 环境
- --enable-ipv6:启用IPv6
- --with-libcurl 和 --with-libxml2 配置选项对虚拟机监控是必须的
优化下令路径
- [root@zbx zabbix-6.4.8]# ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/
- [root@zbx zabbix-6.4.8]# ln -s /usr/local/zabbix/bin/* /usr/local/bin/
复制代码 切换目录找到 core
- [root@zbx zabbix-6.4.8]# cd /root/zabbix-6.4.8/misc/init.d/fedora/core
复制代码 拷贝文件到指定目录
- [root@zbx zabbix-6.4.8]# cp zabbix_agentd /etc/init.d/
- [root@zbx zabbix-6.4.8]# cp zabbix_server /etc/init.d/
复制代码 切换至 init.d 目录下
- [root@zbx zabbix-6.4.8]# cd /etc/init.d/
复制代码 服务控制脚本的优化
- [root@zbx init.d]# vim zabbix_agentd
- BASEDIR=/usr/local/zabbix
- [root@zbx init.d]# vim zabbix_server
- BASEDIR=/usr/local/zabbix
复制代码
- BASEDIR=/usr/local/zabbix
- BASEDIR=/usr/local/zabbix
切换目录至 /etc 下
- [root@zbx init.d]# cd /usr/local/zabbix/etc
复制代码 修改 zabbix 服务端参数
- [root@zbx etc]# vim zabbix_server.conf
- LogFile=/tmp/zabbix server.log
- #单位M,47行
- LogFilesize=1024
- #数据库主机名 87行
- DBHost=localhost
- #数据库中库名 99行
- DBName=zabbix
- #数据库用户名 115行
- DBUser=zabbix
- #数据库用户密码 123行
- DBPassword=zabbix
- ##超时时间,秒 465行
- Timeout=10
- #根据内存情况尽量调大 402行
- Cachesize=256M
- #根据内存情况尽量调大 427行
- HistoryCachesize=256M
- TrendcacheSize=256M
- ValueCacheSize=256M
- StartTrappers=30
- # agent 端的数量
- StartPollers=10
复制代码 修改 zabbix 署理参数
- [root@zbx etc]# vim zabbix_agentd.conf
- ##113行
- Server=127.0.0.1
- ##167行
- ServerActive=127.0.0.1
- ##178行
- Hostname=Zabbix server
复制代码
- 利用HostnameItem 可以动态获取主机的名称。
- 如果配置 HostnameItem=system.hostname 而未配置 Hostname=xxx 参数,那么在web 监控页面显示的主机的可见名称为客户端主机的主机名(即通过 hostname 下令得到的结果)
- 如果配置 Hostname=xxx而末 HostnameItem=system.hostname 参数,那么在web 监控页面显示的主机的可见名称为 xxx
- 如果未配置 HostnameItem=system.hostname 和 Hostname=xxx 这两个参数,那么在web 监控页面显示的主机的可见名称为 客户端主机的主机名(即通过 hostname 下令得到的结果)
- 如果同时配置 HostnameItem=system.hostname 和 Hostname=xxx 参数,那么在web 监控页面显示的主机的可见名称为 xxx(即以配置文件中的Hostname 界说的为准)
- 要对一大批主机举行自动配置时,这里就可以利用HostnameItem ,所有的主机都利用一个模板举行批量部署,就避免了每台主机再去单独设置hostname 的贫苦
找到 ui 并切换至该目录下
- [root@zbx etc]# cd /root/zabbix-6.4.8/ui
复制代码 拷贝 zabbix 网站程序到 httpd 的网站根目录下
- [root@zbx ui]# cp -rf * /www
复制代码 提升权限并退出
- [root@zbx ui]# chown -R zabbix:zabbix /www
- [root@zbx ui]# cd
复制代码 添加两个服务
- [root@zbx ~]# chkconfig --add zabbix_agentd
- [root@zbx ~]# chkconfig --add zabbix_server
- [root@zbx ~]# chkconfig zabbix_agentd on
- [root@zbx ~]# chkconfig zabbix_server on
复制代码 启动 zabbix
- [root@zbx ~]# systemctl start zabbix_agentd
- [root@zbx ~]# systemctl enable zabbix_agentd
- [root@zbx ~]# systemctl start zabbix_server
- [root@zbx ~]# systemctl enable zabbix_server
复制代码 查察进程
- [root@zbx ~]# netstat -anpt | grep zabbix
- tcp 0 0.0.0.0:10050 0.0.0.0:* LISTEN 15295/zabbix agentd
- tcp 0 0.0.0.0:10051 0.0.0.0:* LISTEN 15340/zabbix server
复制代码 zabbix 初始配置
登录 zabbix
- http://192.168.10.108/index.php
设置语言
查抄环境
填写数据库信息
主机名设置(保持默认即可,不用填写)
安装前信息汇总,确认无误,即可点击下一步
确认安装完成并点击完成
登录页面
- 默认账号:Admin(第一个字母大写)
- 默认暗码:zabbix
登录后的界面
安装 Zabbix Agent(在 agnet 主机 server01 上)
修改主机名
- [root@localhost ~]# hostnamectl set-hostname server01
- [root@localhost ~]# bash
复制代码 关闭防火墙、内核机制
- [root@server01 ~]# systemctl stop firewalld
- [root@server01 ~]# setenforce 0
复制代码 用 rpm 安装软件包
- [root@server01 ~]# rpm -ivh pcre2-10.23-2.el7.x86_64.rpm
- [root@server01 ~]# rpm -ivh zabbix-agent-6.4.8-release2.el7.x86_64.rpm
复制代码 修改 zabbix_agentd.conf 配置文件
- [root@server01 ~]# vim /etc/zabbix/zabbix_agentd.conf
- ##指向 Proxy 地址,也可以直接指向 server 端
- Server=192.168.10.108
- ##指向 Proxy 地址,也可以直接指向 server 端
- ServerActive=192.168.10.108
- ##Agent 本地名称,需要与将来在 Server 端的 Web 页面上的主机名称一致,名称自定义
- Hostname=server01
复制代码 启动服务
- [root@server01 ~]# systemctl start zabbix-agent
- [root@server01 ~]# systemctl enable zabbix-agent
复制代码
- Server:被动模式,允许指定的服务器连接本机获取采集的数据
- ServerActive:此参数为主动模式必要设置的,主动提交采集数据给指定的服务器,此处可以注释掉,如果要开启主动模式,则开启
在 zabbix server 上添加主机
添加 agent 主机
添加完成的状态
- 主机列表中的 Availability(可用性)列包括了每个接口的主机的可用性指标,如果界说了主机的zabbix agent 接口,可以通过 ZBX 选项相识主机的可用性。
- ZBX为灰色代表未创建主机连接,未举行数据的采集
- ZBX为绿色代表主机可用,zabbixagent查抄乐成
- ZBX为红色代表主机不可用,zabbix agent 查抄失败
利用zabbix agent 接口,必要为主机添加 zabbix agent 的监控模板
查察图像信息
办理图像中文乱码
查找 zabbix 界说了字体的 php 文件
- [root@zbx ~]# find / -name defines.inc.php
- /root/zabbix-6.4.8/ui/include/defines.inc.php
- /www/include/defines.inc.php
复制代码
- /www 是本案中 zabbix 的前端位置,不同的安装者,此位置大概不同
查察 zabbix 字体文件中用的字体
- [root@zbx ~]# grep "ZBX_FONTPATH" /www/include/defines.inc.php
- define('ZBX_FONTPATH', realpath('assets/fonts')); //where to search for font (GD > 2.0.18)
- [root@zbx ~]# grep "ZBX_FONTPATH_NAME" /www/include/defines.inc.php
- define('ZBX_FONTPATH_NAME', 'DejaVuSans'); //font file name
复制代码 查找 zabbix 的字体文件位置
- [root@zbx ~]# find / -name DejaVuSans.ttf
- /root/zabbix6.4.8/ui/assets/fonts/DejaVuSans.ttf
- /usr/share/fonts/dejavu/DejaVuSans.ttf
- /www/assets/fonts/DejaVuSans.ttf
复制代码 在 windows 体系中找一个 ttf 或 ttc 格式的字体
将选择的字体文件上传到 /www/assets/fonts 目录下
- [root@zbx ~]# cd /www/assets/fonts
复制代码 链接该字体
- [root@zbx fonts]# ln -snf msyhl.ttc DejaVuSans.ttf
复制代码
- -s --symbolic 比力容易,有 -s 时表现创建软连接,没有 -s 时,表现创建硬链接
- -f --force 强行删除任何已存在的目标文件
- -n --no-dereference 把符号连接的目标目录视为一般文件
革新页面观察效果
proxy 端的安装(在 proxy 主机上 107)
修改主机名
- [root@localhost ~]# hostnamectl set-hostname proxy
- [root@localhost ~]# bash
复制代码 关闭防火墙、内核机制
- [root@proxy]# systemctl stop firewalld
- [root@proxy]# systemctl disable firewalld
- [root@proxy]# setenforce 0
- [root@proxy]# vim /etc/sysconfig/selinux
- #修改前
- SELINUX=enforcing
- #修改后
- SELINUX=disabled
复制代码 设置 yum 堆栈
- [root@proxy]# rm -rf /etc/yum.repos.d/*
- [root@proxy]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
- [root@proxy]# curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
- [root@proxy]# yum clean all
复制代码 安装依赖包
- [root@proxy]# yum -y install gcc libxml2-devel unixoDBc-devel net-snmp-devel libcurl-devel libssh2-devel OpenIPMI-devel openssl-devel openldap-devel libevent libevent-devel
复制代码 解压 zabbix 源码包
- [root@proxy]# tar zxvf zabbix-6.4.8.tar.gz
复制代码 进入目录
- [root@proxy]# cd zabbix-6.4.8
复制代码 安装所需配置依赖
- [root@zbx zabbix-6.4.8]# ./configure --prefix=/usr/local/zabbix/ --enable-proxy --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-unixODBC
复制代码 编译
- [root@zbx zabbix-6.4.8]# make
- [root@zbx zabbix-6.4.8]# make install
复制代码 修改配置文件
- [root@zbx zabbix-6.4.8]# vim /usr/local/zabbix/etc/zabbix_proxy.conf
- ##13行
- ProxyMode=0
- ##32行
- Server=192.168.10.108
- ##42
- Hostname=Zabbix_proxy
- ##58行
- ListenPort=10051
- LogFile=/tmp/zabbix_proxy.log
- LogFilesize=0
- PidFile=/tmp/zabbix_proxy.pid
- SocketDir=/tmp
- ##151
- DBHost=192.168.10.108
- ##167
- DBName=zabbix_proxy
- ##182
- DBUser=zabbix
- ##190行
- DBPassword=zabbix
复制代码
- ##13行
- ProxyMode=0
- ##32行
- Server=192.168.10.108
- ##42
- Hostname=Zabbix_proxy
- ##58行
- ListenPort=10051
- ##151
- DBHost=192.168.10.108
- ##167
- DBName=zabbix_proxy
- ##182
- DBUser=zabbix
- ##190行
- DBPassword=zabbix
添加用户
- [root@zbx zabbix-6.4.8]# useradd -M -s /sbin/nologin zabbix
复制代码 启动
- [root@zbx zabbix-6.4.8]# /usr/local/zabbix/sbin/zaabbix_proxy
复制代码 查察进程
- [root@zbx zabbix-6.4.8]# netstat -anpt | grep zabbix_proxy
复制代码 在 web 管理界面上添加 proxy 主机
- 管理 --> Proxy > 创建 agent 署理
- 选择主动模式(默认)
设置 agent 端 server02 主机配置文件
修改主机名
- [root@localhost ~]# hostnamectl set-hostname server02
- [root@localhost ~]# bash
复制代码 关闭防火墙、内核机制
- [root@server02]# systemctl stop firewalld
- [root@server02]# systemctl disable firewalld
- [root@server02]# setenforce 0
- [root@server02]# vim /etc/sysconfig/selinux
- #修改前
- SELINUX=enforcing
- #修改后
- SELINUX=disabled
复制代码 安装 rpm 包
- [root@server02 ~]# rpm -ivh pcre2-10.23-2.el7.x86_64.rpm
- [root@server02 ~]# rpm -ivh zabbix-agent-6.4.8-release2.el7.x86_64.rpm
复制代码 修改配置文件
- [root@server02 ~]# vim /etc/zabbix/zazbbix_agent.conf
- ##修改 Server 的值
- Server=192.168.10.107
- ServerActive=192.168.107
- Hostname=server02
复制代码
- 将 Server 的地址修改为 proxy 主机的主机
重启服务
- [root@server02 ~]# systemctl restart zaabbix-agent
复制代码 在 web 管理界面添加 proxy 署理的 agent 主机
查察 web 面板监控到的主机数据
[root@server02]# pkill -9 zabbix_proxy
[root@server02]# /usr/local/zabbix/sbin/zabbix_proxy
[root@server02]# netstat -anpt | grep zabbix_proxy
小阿轩yx-Zabbix企业级分布式监控环境部署
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |