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

相关推荐

  • 在 Linux 上以 All-in-One 模式安装 KubeSphere

    步骤 1:准备 Linux 机器 若要以 All-in-One 模式进行安装,您仅需参考以下对机器硬件和操作系统的要求准备一台主机。 硬件推荐配置 操作系统 最低配置 Ubuntu 16.04, 18.04, 20.04, 22.04 2 核 CPU,4 GB 内存,40 GB 磁盘空间 Debian Bus…

    2023年4月18日
    34900
  • Prometheus +grafana 监控PVE

    这边部署Prometheus +grafana,我就不详细描述了,之前的文章都有提到过。 pve后台在数据中心的菜单项里,多了一个度量服务器(Metric Server),中文显示“指标服务器”,翻译得怪怪的。 挡不住好奇,点进去看看,原来是添加远程数据统计服务器InfluxDB或者Graphite。 既然可以添加InfluxDB,那么在此基础上,整合Gra…

    2024年4月11日
    48200
  • 使用jenkins 打包前端私服代码失败的问题

    问题现象: jinekins 流水线在yarn 编译前端私服依赖包的时候,报错,提示 Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). 【emm。。。之前的构建都是好好的,也不知道前端大哥啥时候去封装的前端代码,而且奇怪的是没有放在公共库里。。。。】 Pipeline 流…

    2023年1月31日
    37300
  • Zabbix的Mysql数据库内存占用高问题分析与处理

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

    2022年12月30日
    70500
  • Centos7删除多余的内核

    Linux下可能会存在有多个内核的情况,通过某一内核启动会出现无法登录的情况,这时我们就要选择可以正常登录的内核,成功进入系统后,将多余的内核删除 检查系统中的内核 使用yum remove 或rpm -e 删除无用内核

    2022年6月25日
    64600

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信