麒麟V10安装Oceanbase和Zabbix 7
环境介绍
以下为本次使用的环境,
角色 | 版本 | 备注 |
---|---|---|
操作系统 | Kylin V10 SP3 | 本次使用 X86 版本 |
PHP | 8.0.3 | 源码安装 |
Nginx | 1.26.0 | 源码安装 |
数据库 | Oceanbase V4.3.4 | 社区版本 |
Zabbix | Zabbix 7.0.5 | 源码安装 |
基本环境配置
本次在联网情况下进行安装,离线环境建议挂载 IOS 做本地源。 更新系统,并关闭防火墙
yum update -y
systemctl disable --now firewalld
yum install chrony -y
systemctl enable --now chronyd
本地使用https://lnmp.org的lnmp2.1-full.tar.gz安装包进行安装php、nginx等环境,上传包到服务器,解压,执行安装
tar zxvf lnmp2.1-full.tar.gz
cd lnmp2.1-full/
./install.sh
本次不安装 MySQL 数据库,php 选择 8.0.30 版本,选择后开始进行安装,预计 15 分钟左右安装完成。
安装 Oceanbase 数据库
Oceanbase 设备版本兼容 MySQL 协议,本次使用一键安装包进行安装。配置内核参数,修改/etc/security/limits.conf 文件,文件末尾添加如下内容
* soft nofile 655350
* hard nofile 655350
* soft stack unlimited
* hard stack unlimited
* soft nproc 655360
* hard nproc 655360
* soft core unlimited
* hard core unlimited
之后重启操作系统,新建 admin 用户,作为安装用户
useradd -U admin -d /home/admin -s /bin/bash
chown -R admin:admin /home/admin
修改/etc/sudoers 文件添加如下内容,为 admin 配置 sudo 权限
admin ALL=(ALL) NOPASSWD: ALL
下载 oceanbase-all-in-one-4.3.4_20241108.el8.x86_64.tar.gz 安装包到/home/admin 目录,切换到 admin 用户解压包,并执行安装
tar zxvf oceanbase-all-in-one-4.3.4_20241108.el8.x86_64.tar.gz
cd oceanbase-all-in-one/bin
./install
执行后会安装对应的包,之后执行
source ~/.oceanbase-all-in-one/bin/env.sh
obd demo
安装数据库,如运行错误,可根据提示修改对应参数。安装成功后会提示数据库连接的账号和密码,以及 prometheus 和 grafana 的账号密码
obclient -h127.0.0.1 -P2883 -uroot -p'4tc17uTOHvB6aLWOfLb4' -Doceanbase -A
根据提示使用命令连接到数据库,并建立 zabbix 数据库及用户
create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user 'zabbix'@'127.0.0.1' identified by 'password';
grant all privileges on zabbix.* to 'zabbix'@'127.0.0.1';
由于 zabbix 7.0 对 MySQL 的版本有要求,Oceanbase 默认 MySQL 协议版本为 5.7 版本,不符合 Zabbix 要求,可使用以下命令配置为 8.0 版本
SET GLOBAL version = '8.0.30-OceanBase_CE-v4.3.4.0'
安装 Zabbix
安装操作系统相关依赖包
yum install make wget gcc curl-devel net-snmp-devel libxml2-devel libevent-devel pcre-devel OpenIPMI-devel mariadb-devel -y
下载 zabbix 源码到系统/usr/local/src 下
cd /usr/local/src
wget https://cdn.zabbix.com/zabbix/sources/stable/7.0/zabbix-7.0.5.tar.gz
解压源码包,并执行编译安装,由于 Oceanbase 兼容 MySQL 协议,因此编译时使用–with-mysql 参数
tar zxvf zabbix-7.0.5.tar.gz
cd zabbix-7.0.5/
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi
make
make install
安装成功后,导入 sql 文件,使用 mysql 客户端连接,用户使用 root,密码为之前安装 Oceanbase 的密码
cd /usr/local/src/zabbix-7.0.5/database/mysql/
mysql -h127.0.0.1 -P2881 -uroot -p zabbix < schema.sql
mysql -h127.0.0.1 -P2881 -uroot -p zabbix < images.sql
mysql -h127.0.0.1 -P2881 -uroot -p zabbix < data.sql
修改 Zabbix server 配置文件 zabbix_server.conf, 主要修改以下内容
DBHost=127.0.0.1
DBPassword=password
DBPort=2883
建立 zabbix 用户,并配置 Zabbix server 及 Zabbix Agent 的 systemd 启动文件
useradd zabbix
配置 Zabbix Server 启动文件
tee /lib/systemd/system/zabbix-server.service <<EOL
[Unit]
Description=Zabbix Server
After=syslog.target
After=network.target
After=mysql.service
After=mysqld.service
After=mariadb.service
After=postgresql.service
[Service]
Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_server.conf"
EnvironmentFile=-/etc/sysconfig/zabbix-server
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_server.pid
KillMode=control-group
ExecStart=/usr/local/zabbix/sbin/zabbix_server -c \$CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
TimeoutSec=0
[Install]
WantedBy=multi-user.target
EOL
创建 Zabbix Agent 启动文件
tee /lib/systemd/system/zabbix-agent.service <<EOL
[Unit]
Description=Zabbix Agent
After=syslog.target
After=network.target
[Service]
Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_agentd.conf"
EnvironmentFile=-/etc/sysconfig/zabbix-agent
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_agentd.pid
KillMode=control-group
ExecStart=/usr/local/zabbix/sbin/zabbix_agentd -c \$CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
User=zabbix
Group=zabbix
[Install]
WantedBy=multi-user.target
EOL
使用以下命令启动 zabbix server 及 zabbix agent
systemctl enable --now zabbix-server
systemctl enable --now zabbix-agent
如启动失败可查看对应的日志文件/tmp/zabbix_server.log 及/tmp/zabbix_agentd.log。 删除默认的 LNMP 默认的 web 页面,并拷贝 zabbix web 文件到默认目录.
rm -rf /home/wwwroot/default/*
cd /usr/local/src/zabbix-7.0.5/ui/
cp -raf * /home/wwwroot/default/
chown -R www:www /home/wwwroot/default/
使用浏览器访问服务器 80 端口,完成初始化即可。
- Author: 当代张思德
- Link: https://blog.cactifans.com/2024/12/25/%E9%BA%92%E9%BA%9FV10%E5%AE%89%E8%A3%85Oceanbase%E5%92%8CZabbix-7/
- License: This work is under a 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. Kindly fulfill the requirements of the aforementioned License when adapting or creating a derivative of this work.