《告别监控焦虑!Kylin系统Zabbix保姆级安装手册》

一、概况

Zabbix 是一个广泛使用的企业级开源监控解决方案,能够监控网络、服务器、虚拟机和云服务等 IT 基础设施。它通过灵活的通知机制,使用户能够为几乎所有事件配置基于电子邮件的警报,从而快速响应服务器问题。

二、Zabbix的主要功能 

(1)全面的监控能力:能够监控几乎所有类型的 IT 组件,包括操作系统性能、网络设备、数据库、应用程序等。

(2)灵活的数据收集方式:支持多种数据收集方法,如 SNMP、IPMI、JMX、Zabbix Agent、自定义脚本等。

(3)强大的报警系统:可以基于阈值设定触发器,并通过邮件、短信等多种方式发送警报。

(4)可视化界面:提供丰富的图表和仪表盘选项来展示监控数据,帮助快速识别问题。

(5)自动发现:能够自动检测网络中的新设备和服务,简化了配置过程。

(6)分布式监控:支持部署多个 Zabbix Proxy 节点以实现跨地域或大规模环境下的高效监控。

(7)Web 监控:不仅可以监控后端服务,还可以检查网站的可用性和响应时间。

(8)高可用性:支持主备模式部署,确保监控系统的稳定运行。

(9)API 接口:提供了 REST API,方便与其他系统集成或自动化管理任务。

(10)低资源消耗:设计为即使在资源有限的情况下也能良好运作。

三、Zabbix的架构 

(1)Zabbix Server:Zabbix 的核心组件,存储了所有的配置信息、统计信息和操作信息。Zabbix Agent 会向 Zabbix Server 报告可用性、完整性及其他统计信息。

(2)Zabbix Agent:客户端守护进程,负责收集客户端数据。

(3)Zabbix Proxy:分布式代理守护进程,解决高并发问题,可以分担 Zabbix Server 的压力。

(4)Zabbix Get:Zabbix 数据接收工具。

(5)Zabbix Sender:Zabbix 数据发送工具。

(6)Web 页面:通常和 Zabbix Server 位于一台物理设备上,但在特殊情况下也可以分开配置。Web 页面主要提供了直观的监控信息,以方便运维人员监控管理。

(7)数据库:存储了配置信息、统计信息等 Zabbix 的相关内容。

四、Zabbix服务部署 

1、准备安装Zabbix的服务器(kylin系统)

zabbix  10.0.0.61 172.16.1.61

1、下载mysql8.0版本到服务器的/root下 

wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.36-1.el8.x86_64.rpm-bundle.tar

2、 解压数据包

tar zxf  mysql-8.0.36-1.el8.x86_64.rpm-bundle.tar

3、rpm安装 

rpm -ivh mysql-community-common-8.0.36-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.36-1.el8.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.36-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-8.0.36-1.el8.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.36-1.el8.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.36-1.el8.x86_64.rpm
rpm -ivh mysql-community-server-8.0.36-1.el8.x86_64.rpm

4、 启动数据库

systemctl start mysqld 

5、过滤数据库密码 

cat /var/log/mysqld.log | grep root@local
2025-01-17T07:20:49.705882Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: G*1x/&Mgit12 

6、进入数据库 

mysql -uroot -p'G*1x/&Mgit12 ' 

7、修改数据库密码 

alter user root@localhost identified by 'Lyx123.com'; 

8、创建zabbix数据库 

create database zabbix character set utf8 collate utf8_bin;
create user 'zabbix'@'localhost' identified by 'Lyx123.com';
ALTER USER 'zabbix'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Lyx123.com';
grant all privileges on zabbix.* to 'zabbix'@'localhost'; 

9、清理mysql安装包 

rm -rf mysql-* 

10、下载zabbix源码包到/root下

wget https://cdn.zabbix.com/zabbix/sources/stable/5.0/zabbix-5.0.43.tar.gz 

11、解压源码包 

tar zxf  zabbix-5.0.43.tar.gz 

12、进入源码包

cd zabbix-5.0.43/database/mysql/

13、将sql数据导入到zabbix库中 

mysql -uzabbix -p'Lyx123.com' zabbix < schema.sql
mysql -uzabbix -p'Lyx123.com' zabbix < images.sql
mysql -uzabbix -p'Lyx123.com' zabbix < data.sql 

14、安装PHP服务 

yum -y install php php-bcmath php-cli php-common php-devel php-embedded php-fpm php-gd php-intl php-mbstring php-mysqlnd php-opcache php-pdo php-process php-xml php-json php-ldap 

15、修改PHP端口监听方式 

vim /etc/php-fpm.d/www.conf
38 listen = 127.0.0.1:9000 

16、启动PHP并加入开机自启动 

systemctl start php-fpm

systemctl enable php-fpm 

17、 检查端口看是否启动

netstat -lntup | grep 9000 

18、安装Nginx服务 

vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
yum -y install nginx 

19、配置Nginx服务 

vim /etc/nginx/conf.d/default.conf

server {

     listen 80;

     server_name _;

     root /code;

  location / {

     index index.php index.html;

   }

 location ~ \.php$ {

    fastcgi_pass 127.0.0.1:9000;

    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

    include fastcgi_params;

  }

20、检查配置文件语法是否有错误 

nginx -t 

21、修改nginx的启动用户为apache

vim /etc/nginx/nginx.conf

user  apache;
worker_processes  auto;

22、启动nginx并加入开机自启动 

systemctl start nginx

systemctl enable nginx 

23、检查端口是否启动 

netstat -lntup | grep 80 

24、将代码文件拷贝到/code目录下 

mkdir /code
cd /code
cp -r /root/zabbix-5.0.43/ui/* ./

 25、递归修改/code属主和属组

chown -R apache.apache /code 

26、编译zabbix服务 

cd /root/zabbix-5.0.43 

27、安装依赖包 

yum -y install libxml2 libxml2-devel net-snmp-devel curl-devel libevent-devel 

28、 配置zabbix服务

./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 

29、编译安装 

make && make install 

30、安装完成后进入/root 

cd /root 

31、检查 

zabbix_
zabbix_agentd  zabbix_get     zabbix_js      zabbix_sender  zabbix_server 

32、配置zabbix连接数据库信息 

vim /usr/local/etc/zabbix_server.conf
94:DBName=zabbix
110:DBUser=zabbix
118:DBPassword=Lyx123.com 

33、创建启动虚拟用户 

groupadd -g 666 zabbix
useradd -u666 -g666 -M -s /sbin/nologin zabbix 

34、启动客户端和服务端

zabbix_server        #启动服务端
zabbix_agentd        #启动客户端

35、编写systemctl 运行zabbix 

vim /usr/lib/systemd/system/zabbix.service
[Unit]
Description=Zabbix server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/sbin/zabbix_server
ExecStop=/usr/local/sbin/zabbix_server stop
User=zabbix
Group=zabbix

[Install]
WantedBy=multi-user.target

36、重新加载配置文件 

 systemctl daemon-reload

37、停止zabbix服务 

ps aux | grep zabbix_server | grep -v grep | awk '{print $2}' | xargs kill -9 

38、 访问页面并根据提示修改相应参数

vim /etc/php.ini
date.timezone = Asia/ShangHai       #这一条需要添加 

39、重启PHP 

systemctl restart php-fpm 

40、登录 

五、总结 

Zabbix 作为一个开源免费的企业级监控解决方案,具有强大的功能和灵活的定制能力,能够满足多种监控场景的需求。虽然在某些方面存在不足,但通过自定义和社区的支持,可以有效地解决这些问题。Zabbix 的全球和中国的生态已经初步成熟起来,希望它能够越做越好,帮助更多的企业,助力企业快速成长。

你可能感兴趣的:(kylin,zabbix,大数据)