架构学习第二周--Zabbix

目录

一、Zabbix安装介绍

二、Zabbix主动模式与被动模式实现

2.1,基本概念

2.2,被动模式

2.3,主动模式

三、自定义监控报警

3.1,使用内置模板监控Zabbix主机

3.2,自定义模板

3.3,启动监控报警

四、Zabbix proxy主动及被动案例

4.1,Zabbix proxy基本概念

4.2,Zabbix proxy安装和配置

五、Zabbix agent部署脚本

六、构建granfana大盘

一、Zabbix安装介绍

        Zabbix是一个企业级分布式开源监控解决方案,支持实时监控数干台服务器,虚拟机和网络设备,采集百万级监控指标,适用于任何IT基础架构、服务、应用程序和资源的解决方案。

Zabbix安装包可通过官方链接(国外)或阿里云、清华云(国内)等镜像仓库获取

#在ubuntu2004上部署Zabbix6.0

#root@ubuntu-test1       IP:10.0.0.161

#root@ubuntu-test2       IP:10.0.0.162

#root@ubuntu-test3       IP:10.0.0.163

root@ubuntu-test1:~# wget https://mirrors.aliyun.com/zabbix/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4+ubuntu20.04_all.deb                                    #下载zabbix源
root@ubuntu-test1:~# dpkg -i zabbix-release_6.0-4+ubuntu20.04_all.deb
root@ubuntu-test1:~# ls /etc/apt/sources.list.d/
original.list               zabbix-agent2-plugins.list  zabbix.list

root@ubuntu-test1:~# sed -i.bak    's#https://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#g' /etc/apt/sources.list.d/zabbix.list                                     #替换软件源至国内阿里云

root@ubuntu-test1:~# apt update
root@ubuntu-test1:~# apt -y install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent zabbix-get                #下载zabbix相关服务包

root@ubuntu-test1:~# apt -y install mysql-server

root@ubuntu-test1:~# vim /etc/mysql/mysql.conf.d/mysqld.cnf

#bind-address           = 127.0.0.1
#mysqlx-bind-address    = 127.0.0.1
root@ubuntu-test1:~# systemctl enable --now mysqld.service
root@ubuntu-test1:~# mysql

mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
Query OK, 1 row affected (0.01 sec)

mysql> create user zabbix@'10.0.0.%' identified with mysql_native_password by '123456';
Query OK, 0 rows affected (0.02 sec)

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

mysql> set global log_bin_trust_function_creators = 1;
Query OK, 0 rows affected, 1 warning (0.00 sec)
root@ubuntu-test1:~# zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p123456 -h'10.0.0.161' zabbix               #准备数据表
root@ubuntu-test1:~# mysql
mysql> set global log_bin_trust_function_creators = 0;

root@ubuntu-test1:~# vim /etc/zabbix/zabbix_server.conf                        #修改zabbix配置

DBPassword=123456

DBHost=10.0.0.161                        #仅非本地数据库需要该项
DBPort=3306                                 #仅非本地数据库需要该项

root@ubuntu-test1:~# vim /etc/zabbix/nginx.conf                                        #修改nginx配置
server {
        listen          80;
        server_name     zabbix.wlm.com;
........

}

root@ubuntu-test1:~# vim /etc/php/7.4/fpm/pool.d/zabbix-php-fpm.conf                #修改PHP服务器时区
php_value[date.timezone] = Asia/Shanghai
root@ubuntu-test1:~# systemctl enable --now zabbix-server.service nginx zabbix-agent php7.4-fpm.service

root@ubuntu-test1:~# apt -y install language-pack-zh-hans        #安装中文语言包

root@ubuntu-test1:~# cd /usr/share/zabbix/assets/fonts              #导入中文字体至此目录

root@ubuntu-test1:/usr/share/zabbix/assets/fonts# ls
graphfont.ttf  graphfont.ttf.bak

#进入web界面配置zabbix,web端管理员默认账号Admin,zabbix

#在被控制端安装Zabbix Agent6.0

root@ubuntu-test2:~# wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4+ubuntu20.04_all.deb                                                #下载官方镜像源
root@ubuntu-test2:~# dpkg -i zabbix-release_6.0-4+ubuntu20.04_all.deb
root@ubuntu-test2:~# apt update && apt -y install zabbix-agent
root@ubuntu-test2:~# vim /etc/zabbix/zabbix_agentd.conf                #配置agent

Server=10.0.0.161

root@ubuntu-test2:~# systemctl enable --now  zabbix-agent.service

root@ubuntu-test1:/etc/zabbix# zabbix_get -s 10.0.0.162 -p 10050 -k "agent.ping"      #运行命令测试agent是否正常,若返回结果是1代表agent配置正常
1                                               

#在web端创建主机接入被监控端服务器


二、Zabbix主动模式与被动模式实现

2.1,基本概念

        所有模式均是相对Zabbix Agent的角度来定义

        主动模式:Agent 端请求 Server 端获取主动的监控项列表,并主动将需检测的监控项内参数上传至Server端。该模式需要在Agent端进行配置,可监控主机2000-5000台。

        被动模式:Server 端向 Agent 端请求获取监控项的数据,Agent端才会返回数据。(此为默认工作模式)该模式配置简单,但是会加重Server负载,一台Server只能监控500台以下的主机。

        两种模式可以在Zabbix Server 同时存在 , 可以将一部分监控项设为主动 , 其它设为被动模式。

2.2,被动模式

被动模式流程:

Server打开TCP连接

Server发送单个请求

Agent接受请求并响应

Server处理接收的数据

关闭TCP连接

没获取一个监控项都需要打开一个TCP连接

2.3,主动模式

主动模式流程:

Agent主动打开TCP连接

Agent请求监控项

Server返回监控项

Agent处理响应

关闭TCP连接

Agent查询数据

Agent建立TCP连接

Agent批量返回监控项数据

Server处理数据并返回响应状态

关闭TCP连接

#主动模式实现

root@ubuntu-test2:~# vim /etc/zabbix/zabbix_agentd.conf        #修改Agent的配置

Server=10.0.0.161

ServerActive=10.0.0.161                                       #主动模式,指向Server的IP
Hostname=ubuntu-test2                                        #此项必须与Server中设置的主机名相同
Timeout=30

root@ubuntu-test2:~# systemctl restart zabbix-agent.service
root@ubuntu-test2:~# tail /var/log/zabbix/zabbix_agentd.log                         #查看日志
  6671:20240909:103016.281 IPv6 support:          YES
  6671:20240909:103016.281 TLS support:           YES
  6671:20240909:103016.281 **************************
  6671:20240909:103016.281 using configuration file: /etc/zabbix/zabbix_agentd.conf
  6671:20240909:103016.294 agent #0 started [main process]
  6675:20240909:103016.299 agent #4 started [listener #3]
  6674:20240909:103016.299 agent #3 started [listener #2]
  6676:20240909:103016.300 agent #5 started [active checks #1]
  6672:20240909:103016.306 agent #1 started [collector]
  6673:20240909:103016.308 agent #2 started [listener #1]

#在web端修改关联的agent模板为主动模式

三、自定义监控报警

3.1,使用内置模板监控Zabbix主机

#监控Nginx服务,先在web端查询内置是否有相应模板以及状态页路径信息

root@ubuntu-test1:~# vim /etc/nginx/sites-enabled/default                #在被控端添加Nginx状态页

        location /basic_status {
          stub_status;
        }
root@ubuntu-test1:~# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
root@ubuntu-test1:~# systemctl reload nginx.service

#在web端添加Nginx监控模板

#在web端可查看到监控项数值

#监控php服务,先在web端查询内置有相应模板且状态页与php默认路径一致

root@ubuntu-test1:~# vim /etc/php/7.4/fpm/pool.d/www.conf
pm.status_path=/status
ping.path=/ping

listen = /run/php/php7.4-fpm.sock

root@ubuntu-test1:~# vim /etc/nginx/sites-enabled/default
        location ~ \.php$|/status|/ping {
          root /var/www/html;
          include fastcgi_params;
          fastcgi_pass unix:/run/php/php7.4-fpm.sock;
          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }
root@ubuntu-test1:~# systemctl restart nginx.service php7.4-fpm.service
#在web端添加监控模板,并查看监控数据

3.2,自定义模板

1,创建监控模板

2,创建监控项、图形、触发器

#在被控端agent内配置自定义监控项

#利用zabbix内置的标准检测器定义监控项

#为目标添加触发器,同时为触发器命名、划分严重性并配置表达式

#在模板可新建值映射便于展示

#创建图形

3,为需要监控的主机关联模板

4,不依靠zabbix内置的标准检测器,完全自定义监控项

#在被监控端的zabbix-agent内自定义监控项

root@ubuntu-test2:~# df                                #查看磁盘利用率
Filesystem                        1K-blocks    Used Available Use% Mounted on
udev                                 946388       0    946388   0% /dev
tmpfs                                198632    1236    197396   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv  19430032 5613716  12803992  31% /
tmpfs                                993152       0    993152   0% /dev/shm
tmpfs                                  5120       0      5120   0% /run/lock
tmpfs                                993152       0    993152   0% /sys/fs/cgroup
/dev/loop1                            65536   65536         0 100% /snap/core20/2318
/dev/loop0                            64896   64896         0 100% /snap/core20/1828
/dev/loop5                            94208   94208         0 100% /snap/lxd/29619
/dev/loop3                            39808   39808         0 100% /snap/snapd/21759
/dev/loop4                            94080   94080         0 100% /snap/lxd/24061
/dev/loop2                            51072   51072         0 100% /snap/snapd/18357
/dev/sda2                           1992552  215264   1656048  12% /boot
tmpfs                                198628       0    198628   0% /run/user/0
root@ubuntu-test2:~# df|awk -F' +|%' '$7=="/boot"{print $5}'            #取出boot分区使用率
12
root@ubuntu-test2:~# df|awk -F' +|%' '$7=="/"{print $5}'                      #取出根分区使用率
31

root@ubuntu-test2:~# vim /etc/zabbix/zabbix_agentd.conf                #可在主配置文件内添加监控项(不建议)
root@ubuntu-test2:~# vim /etc/zabbix/zabbix_agentd.d/disk-monitor.conf           #创建新的子配置文件添加监控项

UserParameter=root_df,df|awk -F' +|%' '$7=="/"{print $5}'

root@ubuntu-test2:~# zabbix_agentd -t root_df                                     #测试监控项
root_df                                       [t|31]
root@ubuntu-test2:~# systemctl restart zabbix-agent.service             #重启代理服务

root@ubuntu-test1:~# zabbix_get -s 10.0.0.162 -p 10050 -k "root_df"                   #在服务器端测试
31

#在web端添加监控项至模板

5,优化自定义监控项

root@ubuntu-test2:~# vim /etc/zabbix/zabbix_agentd.d/disk-monitor.sh                 #编写取监控值脚本

#!/bin/bash
df|awk -v partition=$1 -F' +|%' '$7==partition{print $5}'

root@ubuntu-test2:~# bash /etc/zabbix/zabbix_agentd.d/disk-monitor.sh /
32
root@ubuntu-test2:~# chmod +x /etc/zabbix/zabbix_agentd.d/disk-monitor.sh

root@ubuntu-test2:~# vim /etc/zabbix/zabbix_agentd.d/disk-monitor.conf               #添加自定义监控项配置文件

UserParameter=df[*],/etc/zabbix/zabbix_agentd.d/disk-monitor.sh $1

root@ubuntu-test2:~# systemctl restart zabbix-agent.service

root@ubuntu-test2:~# zabbix_agentd -t df[/]                                       #被监测端测试监控项
df[/]                                         [t|32]
root@ubuntu-test1:~# zabbix_get -s 10.0.0.162 -k 'df[/]'                     #监测端测试监控项
32
#在web端添加监控项即可

6,同理可对TCP十一种有限状态机添加监控

root@ubuntu-test2:~# netstat -nat | awk '$NF ~ "ESTABLISHED"{state[$NF]++}END{for(i in state){print state[i]}}'                        #取ESTABLISHED连接数
2

root@ubuntu-test2:~# vim /etc/zabbix/zabbix_agentd.d/disk-monitor.conf

UserParameter=tcp_status[*],/etc/zabbix/zabbix_agentd.d/tcp-monitor.sh $1

root@ubuntu-test2:~# vim /etc/zabbix/zabbix_agentd.d/tcp-monitor.sh

#!/bin/bash

netstat -nat | awk -v status=$1 '$NF ~ status{state[$NF]++}END{for(i in state){print state[i]}}'

root@ubuntu-test2:~# chmod +x /etc/zabbix/zabbix_agentd.d/tcp-monitor.sh

root@ubuntu-test2:~# systemctl restart zabbix-agent.service

root@ubuntu-test2:~# zabbix_agentd -t tcp_status[LISTEN]
tcp_status[LISTEN]                            [t|9]
root@ubuntu-test2:~# zabbix_agentd -t tcp_status[ESTABLISHED]
tcp_status[ESTABLISHED]                       [t|2]

#在web端添加监控项

Java服务监控:

        Zabbix不支持直接监控Java服务,需要使用Java-Gateway做代理(Java服务需要提前开启JMX功能才能被监控)

#在ubuntu-test3安装tomcat服务后,开启JMX
root@ubuntu-test3:~# catalina.sh version                           #tomcat安装步骤请参考往期
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Server version: Apache Tomcat/9.0.75
Server built:   May 4 2023 13:04:05 UTC
Server number:  9.0.75.0
OS Name:        Linux
OS Version:     5.4.0-182-generic
Architecture:   amd64
JVM Version:    1.8.0_371-b11
JVM Vendor:     Oracle Corporation

root@ubuntu-test3:~# vim /usr/local/tomcat/bin/catalina.sh          #在文件内添加下列参数开启JMX功能

CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=10.0.0.163 -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"

root@ubuntu-test3:~# systemctl restart tomcat.service

root@ubuntu-test3:~# ss -ntl|grep 12345                                #验证JMX端口开放
LISTEN  0       50                        *:12345              *:*

#部署Java-Gateway,默认端口为10052(需要安装JDK,可单独部署,也可与zabbix server或agent共用服务器)

root@ubuntu-test3:~# rsync -a /etc/apt/sources.list.d/ 10.0.0.161:/etc/apt/sources.list.d/zabbix.list                                        #复制zabbix软件源

root@ubuntu-test3:~# apt update
root@ubuntu-test3:~# apt -y install zabbix-java-gateway                     #包安装Java网关
root@ubuntu-test3:~# systemctl restart zabbix-java-gateway.service
root@ubuntu-test1:~# vim /etc/zabbix/zabbix_server.conf                   #配置监控端连接Java网关端口

JavaGateway=10.0.0.163
JavaGatewayPort=10052
StartJavaPollers=10
root@ubuntu-test1:~# systemctl restart zabbix-server.service

#在web端为服务添加监控

SNMP:

        简单网络管理协议,属于TCP/IP 五层协议中的应用 层协议,用于网络管理的协议,SNMP 主要用于网络设备的管理。

#在被监控端配置SNMP协议                

root@ubuntu-test3:~# apt -y install snmpd                                   #安装snmp服务
root@ubuntu-test3:~# vim /etc/snmp/snmpd.conf                        #配置snmp服务

agentaddress 0.0.0.0

view   systemonly  included   .1
root@ubuntu-test3:~# systemctl restart snmpd.service

#在web端配置SNMP监控项

#团体名必须和被监控端保持一致

3.3,启动监控报警

#配置触发器

#设置前端告警

#手动触发磁盘分区利用率告警

root@ubuntu-test2:~# dd if=/dev/zero of=/boot/a.img bs=1500M count=1

#手动清除数据解决问题后,告警消失

root@ubuntu-test2:~# rm -f /boot/a.img

#配置邮件报警(需要提前开启邮箱的SMTP/POP3功能)

#为服务器配置发件端

#可在消息模板内添加内置消息,或如下图对模板进行修改

#为服务器配置收件端

#定义动作

四、Zabbix proxy主动及被动案例

4.1,Zabbix proxy基本概念

        Zabbix作为一个分布式监控系统,支持通过代理(proxy)收集zabbix agent的监控数据,然后由Zabbix proxy再把数据发送给zabbix server,从而降低了数据的采集时间、也相应的增加了监控能力,尤其是是多机房或多云环境时避免跨网段监控告警不及时。

        与Zabbix Server不同,Zabbix proxy只执行数据收集,不运行触发器,无处理事件,也不发送告警,Web管理界面,所以最终导致告警延时可能会比较长

所有模式均是相对Zabbix proxy的角度来定义

        主动模式:Zabbix proxy主动的向Server周期性的申请获取Agent的监控项信息,该模式可大幅度降低Server的负载压力。

        被动模式:Zabbix proxy被动的等待Server的连接,并接受Server发送的监控项指令,然后再由向Zabbix proxy向Agent端发起请求获取数据。

        Zabbix proxy的主、被动模式与Agent的主、被动模式没有关系。

4.2,Zabbix proxy安装和配置

#通过官方链接获取镜像仓库文件

root@ubuntu-test3:~# wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4+ubuntu20.04_all.deb
root@ubuntu-test3:~# dpkg -i zabbix-release_6.0-4+ubuntu20.04_all.deb

root@ubuntu-test3:~# sed -i.bak 's#repo.zabbix.com#mirrors.tuna.tsinghua.edu.cn/zabbix#' /etc/apt/sources.list.d/zabbix.list
root@ubuntu-test3:~# apt update
root@ubuntu-test3:~# apt -y install zabbix-proxy-mysql zabbix-sql-scripts        #安装proxy组件
root@ubuntu-test3:~# apt -y install mysql-server
root@ubuntu-test3:~# systemctl enable --now mysql.service

root@ubuntu-test3:~# mysql

mysql> create database zabbix_proxy character set utf8mb4 collate utf8mb4_bin;

mysql> create user proxy@'10.0.0.%' identified with mysql_native_password by '123456';

mysql> grant all on zabbix_proxy.* to proxy@'10.0.0.%';

mysql> set global log_bin_trust_function_creators = 1;
mysql> \q

root@ubuntu-test3:~# vim /etc/mysql/mysql.conf.d/mysqld.cnf

#bind-address           = 127.0.0.1
#mysqlx-bind-address    = 127.0.0.1
root@ubuntu-test3:~# systemctl restart mysql.service

root@ubuntu-test3:~# cat /usr/share/zabbix-sql-scripts/mysql/proxy.sql | mysql --default-character-set=utf8mb4 -uproxy -p123456 -h10.0.0.163 zabbix_proxy

root@ubuntu-test3:~# vim /etc/zabbix/zabbix_proxy.conf            #配置proxy(主动模式)

ProxyMode=0                                                      #主动模式为0,被动模式为1,默认为0

Server=10.0.0.161                                               #指向Zabbix Server的IP

Hostname=Zabbix-proxy-active                          #必须与web端proxy名称一致

DBHost=10.0.0.163                                             #数据库IP

DBName=zabbix_proxy                                      #数据库名称

DBUser=proxy                                                     #数据库连接用户名
DBPassword=123456                                          #数据库连接用户密码

root@ubuntu-test3:~# systemctl enable --now zabbix-proxy.service
#在web端添加proxy

root@ubuntu-test2:~# vim /etc/zabbix/zabbix_agentd.conf

Server=10.0.0.163

#ServerActive=10.0.0.163

root@ubuntu-test2:~# systemctl restart zabbix-agent.service

#在web端创建新主机以proxy模式监控

五、Zabbix agent部署脚本

        适用于ubuntu和redhat系列系统安装,需在脚本内提前配置安装的Zabbix Agent版本号(默认版本Zabbix-release-6.0-4)和Zabbix Server的IP地址

cat zabbix_agent_install.sh
#!/bin/bash

version_main=6.0                            #主版本号
version_second=$version_main-4              #小版本号
IP=10.0.0.161                               #Zabbix Server服务器IP
url=mirrors.aliyun.com/zabbix/zabbix

main()
{
. /etc/os-release
if [ $ID = "ubuntu" ];then
        wget $url/$version_main/$ID/pool/main/z/zabbix-release/zabbix-release_$version_second+ubuntu${VERSION_ID}_all.deb
        dpkg -i zabbix-release_$version_second+ubuntu${VERSION_ID}_all.deb
        if [ $? -eq 0 ]; then
                echo "apt is ok"
        else
                echo "apt is error"
                exit
        fi
        apt update
        apt -y install zabbix-agent
        sed -i "s#^Server=.*#Server=$IP#" /etc/zabbix/zabbix_agentd.conf
        systemctl enable --now zabbix-agent.service
elif [ $ID = "rocky" -o $ID = "centos" ];then
        bb=`echo $REDHAT_SUPPORT_PRODUCT_VERSION|awk -F'.' '{print $1}'`
        wget $url/$version_main/rhel/$bb/x86_64/zabbix-release-$version_second.el8.noarch.rpm
        rpm -Uvh zabbix-release-$version_second.el8.noarch.rpm
        if [ $? -eq 0 ]; then
                echo "yum is ok"
        else
                echo "yum is error"
                exit
        fi
        yum updateinfo
        yum -y install zabbix-agent
        sed -i "s#^Server=.*#Server=$IP#" /etc/zabbix_agentd.conf
        systemctl enable --now zabbix-agent.service
else
        echo "the os-system is not support"
fi
}
main

六、构建granfana大盘

#下载官网安装包至本地执行安装

root@ubuntu-test2:~# ls
grafana-enterprise_9.5.2_amd64.deb  snap
root@ubuntu-test2:~# dpkg -i grafana-enterprise_9.5.2_amd64.deb                  #包安装
root@ubuntu-test2:~# systemctl enable --now grafana-server.service               #启动服务

root@ubuntu-test2:~# ss -ntlp | grep 3000
LISTEN    0         4096                     *:3000                   *:*        users:(("grafana",pid=274939,fd=11))      

#在浏览器访问IP:3000登录web页面,初始账号密码均为admin

#安装需要的插件

root@ubuntu-test2:~# grafana-cli plugins list-remote          #列出可安装的插件及最新版本
root@ubuntu-test2:~# grafana-cli plugins list-remote|grep zabbix
id: alexanderzobnin-zabbix-app version: 4.5.3
root@ubuntu-test2:~# grafana-cli plugins install alexanderzobnin-zabbix-app        #安装插件
root@ubuntu-test2:~# ll /var/lib/grafana/plugins/                  #插件的默认路径,可解压插件文件至该目录代替网络安装
total 12
drwxr-xr-x 3 root    root    4096 Sep 13 10:08 ./
drwxr-xr-x 6 grafana grafana 4096 Sep 13 10:08 ../
drwxr-xr-x 6 root    root    4096 Sep 13 10:08 alexanderzobnin-zabbix-app/
root@ubuntu-test2:~# grafana-cli plugins ls                                          #列出已安装的插件
installed plugins:
alexanderzobnin-zabbix-app @ 4.5.3

#在web端可启用插件安装情况

root@ubuntu-test2:~# systemctl restart grafana-server.service

#添加Zabbix数据源并输入Zabbix服务器管理账号密码(如果使用apache,那url需改为http://zabbix.wlm.com/zabbix/api_jsonrpc.php)

#导入官网Grafana模板

#导入模板的json文件或模板ID,如5363

您好!以下是在CentOS 7上安装Zabbix Server 5.0的步骤: 1. 首先,确保您的系统已经更新到最新的稳定版本。可以使用以下命令进行系统更新: ``` sudo yum update ``` 2. 添加Zabbix官方仓库。使用以下命令下载并安装Zabbix官方的Yum存储库: ``` sudo rpm -ivh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm ``` 3. 安装Zabbix Server和相关的依赖包。运行以下命令来安装Zabbix Server: ``` sudo yum install zabbix-server-mysql zabbix-web-mysql mariadb-server ``` 4. 配置MariaDB数据库。启动MariaDB服务并设置其开机启动: ``` sudo systemctl start mariadb sudo systemctl enable mariadb ``` 5. 运行以下命令以设置MariaDB的安全性选项: ``` sudo mysql_secure_installation ``` 6. 创建Zabbix数据库和用户。登录到MariaDB控制台,并执行以下命令创建数据库和用户: ``` sudo mysql -u root -p CREATE DATABASE zabbix character set utf8 collate utf8_bin; CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost'; FLUSH PRIVILEGES; EXIT; ``` 请将'your_password'替换为您自己的密码。 7. 导入Zabbix数据库架构和初始数据。运行以下命令导入Zabbix数据库结构和初始数据: ``` sudo zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | sudo mysql -u zabbix -p zabbix ``` 输入之前创建的密码。 8. 配置Zabbix Server。编辑Zabbix Server的配置文件: ``` sudo nano /etc/zabbix/zabbix_server.conf ``` 找到以下行并进行必要的更改: ``` DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=your_password ``` 请将'your_password'替换为您在第6步中设置的密码。 9. 启动和设置Zabbix Server。运行以下命令启动Zabbix Server服务,并设置其在开机时自动启动: ``` sudo systemctl start zabbix-server sudo systemctl enable zabbix-server ``` 10. 配置和启动Zabbix Web界面。编辑Zabbix Web配置文件: ``` sudo nano /etc/httpd/conf.d/zabbix.conf ``` 找到以下行并进行必要的更改: ``` php_value date.timezone Asia/Shanghai ``` 11. 启动和设置Apache服务。运行以下命令启动Apache服务,并设置其在开机时自动启动: ``` sudo systemctl start httpd sudo systemctl enable httpd ``` 12. 打开防火墙端口。如果您的防火墙正在运行,您需要打开Zabbix Server和Web界面所需的端口。运行以下命令: ``` sudo firewall-cmd --permanent --add-port=10050/tcp sudo firewall-cmd --permanent --add-port=10051/tcp sudo firewall-cmd --reload ``` 13. 完成安装。现在,您可以通过浏览器访问Zabbix Web界面,并按照屏幕上的指示完成安装。使用以下URL访问Zabbix Web界面: ``` http://your_server_ip/zabbix ``` 请将'your_server_ip'替换为您Zabbix Server所在的IP地址。 希望这些步骤能够帮助您成功安装Zabbix Server 5.0!如果您有任何问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值