Centos7上安装Zabbix6.0

1、先安装依赖,mysql,nginx,php

mysql安装,mysql版本要8.0及以上

# 下载安装包
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar
# 解压
tar -xvf mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar
# 忽略依赖检查强制安装,因为捆绑包里已经带依赖了,所以只要全部安装就可以,检查的话分先后顺序很麻烦的
rpm -ivh mysql-community-*  --force --nodeps
# 创建数据存储目录,并授权
mkdir -p /data/mysql
chown mysql:mysql /data/mysql
# 修改配置文件
vim /etc/my.cnf

内容如下:
[mysqld]
datadir=/data/mysql #数据存储目录
socket=/var/lib/mysql/mysql.sock

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
port=3306
lower_case_table_names=1 #忽略表大小写
max_connections=500

# 先查看libaio包是否有安装(安装了则不用管,未安装可能出现启动失败却包的情况)
yum install libaio
# 开机自启动
systemctl enable mysqld
# 启动mysql
systemctl start mysqld
# 获取初始登录密码
cat /var/log/mysqld.log | grep password
# 登录mysql
mysql -uroot -p
# 修改root密码
alter user 'root'@'localhost' identified by '123456';

# 由于MySQL8.0 有密码验证组件,若希望设置简单的密码,需要修改服务验证条件
# 密码检查等级,0/LOW、1/MEDIUM、2/STRONG
set global validate_password.policy=0;
# 密码长度
set global validate_password.length=6;
# 密码至少要包含的小写字母个数和大写字母个数
set global validate_password.mixed_case_count=0;
# 创建zabbix库,指定编码格式
create database zabbix character set utf8 collate utf8_bin;
# 创建zabbix的sql用户
create user 'zabbix'@'localhost' identified with mysql_native_password by '123456';
# 赋权
grant all privileges on zabbix.* to 'zabbix'@'localhost';
# 刷新权限
flush privileges;
# 退出mysql操作
quit;

Nginx安装

# 安装或更新
rpm -Uvh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.20.0-1.el7.ngx.x86_64.rpm
# 创建工作目录
mkdir /data/web
# 配置代理文件,先备份再直接修改默认文件
cp /etc/nginx/conf.d/default.conf  /etc/nginx/conf.d/default.conf.bak
vim /etc/nginx/conf.d/default.conf 
内容如下:
server {
 listen 80;
 server_name localhost;  # 默认使用localhost(如果使用域名,修改在本地hosts解析)
 root /data/web;          # 需要创建好该目录,否则报错Not Found
 location / {
   index index.php;
 }
 location ~ \.php$ {
   fastcgi_pass  127.0.0.1:9000;
   fastcgi_index index.php;
   fastcgi_param SCRIPT_FILENAME
  $document_root$fastcgi_script_name;
   include fastcgi_params;
 }
}

# 开机自启
systemctl  enable nginx
# 启动
systemctl start nginx

PHP 部署

# 替换镜像
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# php高版本的yum源地址,有两部分,其中一部分是epel-release,另外一部分来自webtatic。
# 如果跳过epel-release的话,安装webtatic的时候,会有错误爆出。
yum -y install epel-release
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

# 安装php7及其它依赖软件
yum -y install gcc gcc-c++ php72w-cli php72w-fpm php72w-gd php72w-mbstring php72w-bcmath php72w-xml php72w-ldap php72w-mysqlnd
# 创建php测试页
vim /data/web/index.php
内容:
<?php
phpinfo();
?>

# 开机自启
systemctl enable php-fpm
# 启动
systemctl start php-fpm

启动后即可在浏览器通过ip访问到测试页,如果访问失败,检查ip80端口是否开放

# 查看80端口
firewall-cmd --query-port=80/tcp
# 开启端口
firewall-cmd --add-port=80/tcp --permanent
# 重载
firewall-cmd --reload

2、zabbix安装

选择版本

看别人的资料说6.0在centos7系统只能通过source安装,所以到官网选择source安装,选择TLS长久维护版

Centos7上安装Zabbix6.0
# 下载安装包
wget https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.13.tar.gz
# 解压
tar -zvxf zabbix-6.0.13.tar.gz

安装

#关闭SELinux安全策略
setenforce 0
# 创建用户组和用户
groupadd --system zabbix
useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
# 进入解压后的目录,进行编译
cd zabbix-6.0.13/
# 先安装依赖
yum -y install  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
# 编译
./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-6.0.13/src/libs/zbxeval目录下,修改parse.c的391行misc.c的260行

将for(int i=……)改成int i;for(i=……)格式;

make install
# 修改配置文件
vim /etc/zabbix/zabbix_server.conf
主要修改123行,将数据库密码配置 DBPassword=123456


# 向数据库中导入zabbix的库表及数据(注意导入的顺序),数据库文件在解压后的目录下
mysql -uroot -p123456 zabbix < database/mysql/schema.sql
mysql -uroot -p123456 zabbix < database/mysql/image.sql
mysql -uroot -p123456 zabbix < database/mysql/data.sql

# 将前端文件复制到工作目录中,文件也是在解压目录下
cp -rp ui/* /data/web/

# 配置zabbix系统启停命令
vim /usr/lib/systemd/system/zabbix.service
内容如下:
[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

# 加载
systemctl daemon-reload
# 自启动
systemctl enable zabbix
# 启动
systemctl start zabbix

浏览器输入ip,进入zabbix安装页面,完成安装。

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/8255

(0)
郭靖的头像郭靖
上一篇 2023年5月29日 下午5:25
下一篇 2023年6月8日 下午4:36

相关推荐

  • centos 7 NTP 内网时间定时同步

    一、环境 二、ntp安装服务 server服务器配置: client服务器配置:(如果有多台client服务器,亦可如此配置) 四、启动NTP服务&开机启动设置(包括server服务器和client服务器) 五、server服务器防火墙配置 六、client服务器手动从server服务器进行时间同步 在server服务器上执行date命令,查看时间 …

    2023年6月14日
    1.3K00
  • Tcpdump 命令实际示例,Linux 下功能最强大的网络抓包工具

    tcpdump是最基本、最强大的命令行网络数据包嗅探工具。我们用它来分析服务器的网络数据包,捕获或过滤在特定网络接口上通过网络传输和接收的TCP/IP数据包。 它几乎适用于所有基于Linux/Unix操作系统的服务器。您还可以将捕获的数据包保存在文件中,以便以后使用tcpdump工具进行分析。它将文件保存为pcap格式,可通过tcpdump命令或基于GUI的…

    2023年8月7日
    1.5K00
  • Zabbix的Mysql数据库内存占用高问题分析与处理

    问题:1、Zabbix内存使用率高;2、MariaDB没有开启独享表空间 ibdata1是InnoDB的共有表空间,默认情况下会把表空间存放在一个文件ibdata1中,会造成这个文件越来越大. 原因1:使用InnoDB共享表空间存储数据 参数innodb_file_per_table,控制innodb引擎采用共享表空间存储还是独立表空间存储。 参数innod…

    2022年12月30日
    1.8K00
  • CentOS 7 磁盘挂载教程

    mount命令是经常会使用到的命令,它用于挂载Linux系统外的文件 进行挂载操作后,用户便可以在挂载目录中使用硬盘资源了。默认情况下Linux系统并不会像Windows系统那样自动的挂载光盘和U盘设备,需要自行完成。 语法 语法格式:mount [参数] [设备] [挂载点] 常用参数 -t 指定文件系统,即挂载类型 -l 显示已加载的文件系统列表 -h …

    2022年6月9日
    3.4K10
  • grafana 钉钉报警设置

    一、钉钉机器人创建与配置 1.创建钉钉群&钉钉机器人 2.创建一个自定义机器人,在“机器人设置”中获得webhook的URL 3.安全设置,这一步是必须的,我选择白名单模式,填入grafana服务器地址 二、grafana设置警报 1.在grafana控制台,左边栏“Alerting”模块,创建一个警报。 2.可点击test发送测试警报 三、钉钉警报…

    2024年5月15日
    1.9K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信