zabbix 6.0部署讲解

参考链接

https://blog.csdn.net/2302_76410765/article/details/131554004

部署zabbix作用

  1. 作为一个运维,需要会使用监控系统查看服务器系统性能、应用服务状态和网站流量指标等,利用监控系统的数据去了解网站上线发布的结果和健康状态。
  2. 通过一个友好的界面进行浏览整个网站所有的服务器状态
  3. 通过web前端方便查看监控数据
  4. 可以回溯寻找事故发生时系统的问题和报警情况

zabbix是什么?

  1. zabbix 是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
  2. zabbix 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
  3. zabbix 由 2 部分构成,zabbix server 与可选组件 zabbix agent。通过 C/S 模式采集数据,通过 B/S 模式在 Web 端展示和配置。
  4. zabbix server 可以通过 zabbix agent,SNMP协议,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在 Linux 等平台上。
  5. zabbix agent 需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU 等信息的收集。

zabbix 监控原理

  1. zabbix agent 安装在被监控的主机上,zabbix agent 负责定期收集客户端本地各项数据,并发送至 zabbix server 端,zabbix server 收到数据后, 将数据存储到数据库中,用户基于 Zabbix Web 可以看到数据在前端展现图像。当 zabbix 监控某个具体的项目, 该项目会设置一个触发器阈值, 当被监控的指标超过该触发器设定的阈值,会进行一些必要的动作,动作包括:发送信息(邮件、微信、短信)、发送命令(shell 命令、reboot、restart、 install 等)。

zabbix 6.0新特性

  1. Zabbix server高可用防止硬件故障或计划维护期的停机:
  • 原生选择加入HA群集配置
  • 定义一个或多个备用节点
  • 实时监控Zabbix server群集节点的状态
  • 不需要外部工具即可将Zabbix server配置为HA群集模式
  1. Zabbix 6.0 LTS新增Kubernetes监控功能,可以在Kubernetes系统从多个维度采集指标:
  • Kubernetes节点和pods的自动发现和监控
  • 无代理方式采集Kubernetes pods和节点的信息
  • 获取Kubernetes节点主机高水平信息

zabbix6.0功能组件

  1. Zabbix Server
  • zabbix 服务端守护进程,是 Zabbix 软件的核心组件,Zabbix Agent 向其报告可用性、系统完整性信息和统计信息。
  • Zabbix Server 也是存储所有配置信息、统计信息和操作信息的核心存储库。
  • Zabbix Server 也是 Zabbix 监控系统的告警中心。在监控的系统中出现任何异常,将发出通知给管理员。
  1. 基本的 Zabbix Server 的功能分解成为三个不同的组件。他们是:Zabbix server、Web 前端、数据库。
  2. Zabbix 的所有配置信息都存储在 Server 和 Web 前端进行交互的数据库中。例如,当你通过 Web 前端(或者API)新增一个监控项时, 它会被添加到数据库的监控项表里。然后,Zabbix server 以每分钟一次的频率查询监控项表中的有效项,接着将它存储在 Zabbix server 中的缓存里。 这就是为什么 Zabbix 前端所做的任何更改需要花费两分钟左右才能显示在最新的数据段的原因。
  3. 数据库
    1. 所有配置信息以及 Zabbix 采集到的数据都被持久存储在数据库中。
    2. 可以支持 MySQL、PostgreSQL、Oracle、DB2、TimescaleDB 等多种数据库。
  4. web界面
    1. Web 界面是 Zabbix Server 的一部分,用于实现展示和配置的界面。通常(但不一定)和 Zabbix server 运行在同一台物理机器上。
    2. 基于 Apache/Nginx + PHP 实现,早期只支持 LAMP 架构,从 Zabbix5.0 开始支持 LNMP 。
  5. Zabbix Agent
    1. 客户端守护进程,部署在被监控目标上,用于主动监控本地资源和应用程序,并将收集的数据发送给 Zabbix Server。从 Zabbix5.0开始支持
  6. Zabbix Proxy
    1. zabbix 分布式代理守护进程,可以代替 Zabbix Server 采集性能和可用性数据。Zabbix Proxy 在 Zabbix 的部署是可选部分。
    2. Zabbix Proxy 的部署可以很好的分担单个 Zabbix Server 的负载。
    3. 通常监控大于 500 台主机时使用,需要进行分布式监控架构部署。
  7. java Gateway
    1. Zabbix 要监控 Tomcat 服务或其它 JAVA 程序(比例 Elasticsearch、ZooKeeper),需要使用 Java Gateway 做为代理,才能从 JAVA 程序中获取数据

zabbix 6.0 部署

  1. 系统:centos 7不支持yum方式安装zabbix 6.0服务端
  2. 安装方式:zabbix服务端采用编译安装的方式,zabbix客户端采用yum安装的方式

部署服务端

# 关闭selinux与防火墙
systemctl stop firewalld
systemctl disable firewalld
# 禁用安全策略
setenfore 0
vim /etc/selinux/config
SELINUX=disable

部署Nginx+php环境

安装nginx

cat > /etc/yum.repos.d/nginx.repo << 'EOF'
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
EOF

yum install -y nginx

修改nginx配置文件

vim /etc/nginx/nginx.conf
user  nginx nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;
}


vim /etc/nginx/conf.d/default.conf
server {
  listen 80;
  server_name zbx.kgc.com;
  root /var/www/zbx;
  location / {
    index index.php index.html index.htm;

  }

  location ~ \.php$ {
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }
}

mkidr -p /var/www/zbx

安装php

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum install -y epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-pdo php72w-xml php72w-fpm php72w-mysqlnd php72w-opcache php72w-ldap php72w-bcmath

修改php配置

vim /etc/php-fpm.d/www.conf
user = nginx
group = nginx

vim /etc/php.ini
max_execution_time = 300		# 368行
max_input_time = 600			# 378行
post_max_size = 80M				# 656行
date.timezone = Asia/Shanghai	# 877行

创建目录和测试文件

mkdir -p /var/www/zbx

vim /var/www/zbx/index.php
<?php
phpinfo();
?>

# 启动nginx
nginx -t
nginx -s reload

#启动服务
systemctl start php-fpm


find / -name php
# 将查的路径组和属组改成nginx
chown -R nginx:nginx /etc/php

find / -name nginx
chown -R nginx:nginx /etc/nginx

http://192.168.5.46/index.php

image.png

部署数据库

sudo yum install https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
sudo yum install mysql-community-server
sudo systemctl start mysqld
sudo systemctl enable mysqld
# 查找数据库默认密码
sudo grep 'temporary password' /var/log/mysqld.log
mysql -u root -p
ALTER USER 'root'@'%' IDENTIFIED BY 'new_password';
# 如果想更新mysql
sudo yum update mysql-community-server

CREATE DATABASE zabbix character set utf8 collate utf8_bin;
GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'new-passwd';
flush privileges;

cd /opt
tar xf zabbix.tar.gz
ls /opt/zabbix/database/mysql
# 向数据库导入zabbix数据
mysql -uroot -pabc123 zabbix < schema.sql
mysql -uroot -pabc123 zabbix < images.sql
mysql -uroot -pabc123 zabbix < data.sql
mysql -uroot -pabc123 zabbix < double.sql
mysql -uroot -pabc123 zabbix < history_pk_prepare.sql

# 包需要再百度网盘里面取

编译安装zabbix Server服务端

yum install -y mysql-devel pcre-devel openssl-devel zlib-devel libxml2-devel net-snmp-devel net-snmp libssh2-devel OpenIPMI-devel libevent-devel openldap-devel libcurl-devel fping gcc gcc-c++ make
useradd -s /sbin/nologin -M zabbix
cd /opt/zabbix/
./configure \
--sysconfdir=/etc/zabbix/ \
--enable-server \
--with-mysql \
--with-net-snmp \
--with-libxml2 \
--with-ssh2 \
--with-openipmi \
--with-zlib \
--with-libpthread \
--with-libevent \
--with-openssl \
--with-ldap \
--with-libcurl \
--with-libpcre

make install
zabbix_server --version

修改zabbix server配置文件,修改数据库的密码
vim /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix_server.log		# 38行,指定 zabbix 日志路径
DBHost=192.168.7.129                  # 数据的ip
DBName=zabbix                         # 数据库的库名称
DBUser=zabbix                         # 数据库登录的用户名
DBPassword=zabbix					            # 123行,指定 zabbix 数据库的密码

cat > /usr/lib/systemd/system/zabbix-server.service << EOF
[Unit]
Description=Zabbix Server with MySQL DB
After=syslog.target network.target mysqld.service

[Service]
Type=simple
ExecStart=/usr/local/sbin/zabbix_server -f
User=zabbix

[Install]
WantedBy=multi-user.target
EOF
touch /var/log/zabbix_server.log
chown -R zabbix:zabbix /var/log/zabbix_server.log
systemctl daemon-relead
systemctl start zabbix--server

cp -r /opt/zabbix/ui/* /var/www/zbx
chown -R nginx.nginx /var/www/zbx

# 进行访问
http://192.168.5.6

解决zabbix-server web页面中文乱码问题
yum install -y wqy-microhei-fonts
cp -f /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /var/www/zbx/assets/fonts/DejaVuSans.ttf

image.png

安装zabbix客户端,实现zabbix服务端自动监控

# 安装脚本
#!/bin/bash
rpm -Uvh https://repo.zabbix.com/zabbix/6.4/rhel/7/x86_64/zabbix-release-6.4-1.el7.noarch.rpm
yum clean all
yum -y install zabbix-agent2 zabbix-agent2-plugin-*
systemctl restart zabbix-agent2
systemctl enable zabbix-agent2
#ip=`ip a|grep "192.168"|sed -n "1p"|awk '{print $2}'|tr / " "|awk '{print $1}'`
#ip="192.168.5.46"
data=`cat  /etc/zabbix/zabbix_agent2.conf|grep "^Server="`
dataSA=`cat  /etc/zabbix/zabbix_agent2.conf|grep "^ServerActive="`
# ip需要改成zabbix服务端ip
sed -r -i "s/$data/Server="192.168.5.46"/g" /etc/zabbix/zabbix_agent2.conf   
# ip需要改成zabbix服务端ip
sed -r -i "s/$dataSA/ServerActive="192.168.5.46"/g" /etc/zabbix/zabbix_agent2.conf
systemctl start zabbix-agent2
systemctl enable zabbix-agent2

zabbix操作如下

image.png
image.png
image.png
image.png

自定义监控内容

  1. 监控客户端登录的人数
  2. 当登录个数超过3个,需要发出报警信息
# 创建zabbix的监控项配置文件,用于定义key
vim /etc/zabbix/zabbix_agent2.conf
# 可以将自定义的监控项配置文件,创建在zabbix_agent2.d文件中
Include=/etc/zabbix/zabbix_agent2.d/*.conf
# 自定义监控项的格式如下
# Format:UserParameter=<key>,<shell command>
cd /etc/zabbix/zabbix_agent2.d
vim Userparameter_login.conf
Userparameter=login.user,who|wc -l

systemctl restart zabbix-agent2

# 在服务端验证新建的监控项
zabbix_get -s '192.168.5.6' -p 10050 -k 'login.user'

在web页面创建自定义监控项模版

1.创建模板
点击左边菜单栏【数据采集】中的【模板】,点击【创建模板】
【模板名称】设置成 CSuser
【群组】选择 Template
【描述】可自定义

image.png
image.png
image.png

2.创建监控项
点击CSuser模版进入
点击上方菜单栏【监控项】,点击【创建监控项】
【名字】设置成 Number users
【键值】设置成login.user
【更新间隔】设置成10s
【历史数据保留时长】 Storage period 30d
点击 【添加】

image.png

3.创建报警触发器
点击上方菜单栏【触发器】,点击【创建触发器】
【名称】设置cs-user
【严重性】设置成一般严重
【表达式】点击添加,【监控项】last(/CSuser/login.user)>3
点击添加

image.png
image.png

4.创建图形
点击上方菜单栏【图形】,点击【创建图形】
【名称】设置成login users
【宽】,【高】可直接采用默认值
【创建项】点击勾选相关监控项 login users,【功能】选择最大,其他可保持默认值
点击添加

image.png
image.png

5.将主机与模板关联起来(一个主机可以关联多个模板)
点击左边菜单栏【配置】中的【主机】,点击你要关联的主机
【模板】搜索 login,选择 Template Login User,点击【更新】

image.png
image.png

6.设置邮件报警
https://blog.csdn.net/qq_15557983/article/details/134871110
  • 37
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
东南亚位于我国倡导推进的“一带一路”海陆交汇地带,作为当今全球发展最为迅速的地区之一,近年来区域内生产总值实现了显著且稳定的增长。根据东盟主要经济体公布的最新数据,印度尼西亚2023年国内生产总值(GDP)增长5.05%;越南2023年经济增长5.05%;马来西亚2023年经济增速为3.7%;泰国2023年经济增长1.9%;新加坡2023年经济增长1.1%;柬埔寨2023年经济增速预计为5.6%。 东盟国家在“一带一路”沿线国家中的总体GDP经济规模、贸易总额与国外直接投资均为最大,因此有着举足轻重的地位和作用。当前,东盟与中国已互相成为双方最大的交易伙伴。中国-东盟贸易总额已从2013年的443亿元增长至 2023年合计超逾6.4万亿元,占中国外贸总值的15.4%。在过去20余年中,东盟国家不断在全球多变的格局里面临挑战并寻求机遇。2023东盟国家主要经济体受到国内消费、国外投资、货币政策、旅游业复苏、和大宗商品出口价企稳等方面的提振,经济显现出稳步增长态势和强韧性的潜能。 本调研报告旨在深度挖掘东南亚市场的增长潜力与发展机会,分析东南亚市场竞争态势、销售模式、客户偏好、整体市场营商环境,为国内企业出海开展业务提供客观参考意见。 本文核心内容: 市场空间:全球行业市场空间、东南亚市场发展空间。 竞争态势:全球份额,东南亚市场企业份额。 销售模式:东南亚市场销售模式、本地代理商 客户情况:东南亚本地客户及偏好分析 营商环境:东南亚营商环境分析 本文纳入的企业包括国外及印尼本土企业,以及相关上下游企业等,部分名单 QYResearch是全球知名的大型咨询公司,行业涵盖各高科技行业产业链细分市场,横跨如半导体产业链(半导体设备及零部件、半导体材料、集成电路、制造、封测、分立器件、传感器、光电器件)、光伏产业链(设备、硅料/硅片、电池片、组件、辅料支架、逆变器、电站终端)、新能源汽车产业链(动力电池及材料、电驱电控、汽车半导体/电子、整车、充电桩)、通信产业链(通信系统设备、终端设备、电子元器件、射频前端、光模块、4G/5G/6G、宽带、IoT、数字经济、AI)、先进材料产业链(金属材料、高分子材料、陶瓷材料、纳米材料等)、机械制造产业链(数控机床、工程机械、电气机械、3C自动化、工业机器人、激光、工控、无人机)、食品药品、医疗器械、农业等。邮箱:market@qyresearch.com
对于您的问题,我可以给您一些指导。首先,请确保您已经安装了CentOS 7操作系统并具有sudo权限。接着,您可以按照以下步骤安装和部署Zabbix 6.0: 1. 安装必要的软件包: sudo yum install wget httpd mariadb mariadb-server php php-mysql php-gd php-xml php-bcmath php-ldap php-mbstring php-mcrypt 2. 安装Zabbix存储库: sudo rpm -ivh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-1.el7.noarch.rpm 3. 安装Zabbix服务器、代理程序、Web界面和数据库: sudo yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent 4. 创建Zabbix数据库: sudo systemctl start mariadb sudo mysql -u root -p CREATE DATABASE zabbix character set utf8 collate utf8_bin; GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbixuser'@'localhost' IDENTIFIED BY 'yourpassword'; FLUSH PRIVILEGES; quit 5. 导入Zabbix数据库模式: cd /usr/share/doc/zabbix-server-mysql-6.0.0/ sudo zcat create.sql.gz | mysql -u zabbixuser -p zabbix 6. 修改Zabbix服务器配置文件: sudo nano /etc/zabbix/zabbix_server.conf DBHost=localhost DBName=zabbix DBUser=zabbixuser DBPassword=yourpassword 7. 启动Zabbix服务器和代理程序: sudo systemctl start zabbix-server zabbix-agent sudo systemctl enable zabbix-server zabbix-agent 8. 配置防火墙: sudo firewall-cmd --permanent --add-port=80/tcp sudo firewall-cmd --reload 9. 访问Zabbix Web界面: 在Web浏览器中输入http://服务器IP/zabbix,并按照提示进行配置。 希望以上步骤可以帮助您成功安装和部署Zabbix 6.0。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_51711897

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值