数据库管理277期 2024-12-29
- 数据库管理-第277期 YashanDB 23.2.7 YAC集群部署手册(20241229)
数据库管理-第277期 YashanDB 23.2.7 YAC集群部署手册(20241229)
作者:胖头鱼的鱼缸(尹海文) Oracle ACE Pro: Database PostgreSQL ACE Partner 10年数据库行业经验 拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证 墨天轮MVP,ITPUB认证专家,数盟会长老会成员,OCM讲师 PolarDB开源社区、青学会MOP社区技术顾问 HaloDB外聘技术顾问 OceanBase观察团成员 IF社区联合发起人 圈内拥有“总监”称号,非著名社恐(社交恐怖分子) 公众号:胖头鱼的鱼缸 CSDN:胖头鱼的鱼缸(尹海文) 墨天轮:胖头鱼的鱼缸 ITPUB:yhw1809。 除授权转载并标明出处外,均为“非法”抄袭
崖山数据库(YashanDB)之前也介绍过,其提供的YAC集群集群与Oracle RAC集群十分相似。
相关信息可以查看:
https://doc.yashandb.com/yashandb/23.2/zh/%E6%A6%82%E5%BF%B5%E6%89%8B%E5%86%8C/%E5%85%B1%E4%BA%AB%E9%9B%86%E7%BE%A4%E5%9F%BA%E7%A1%80%E8%AE%BE%E6%96%BD/00%E5%85%B1%E4%BA%AB%E9%9B%86%E7%BE%A4%E5%9F%BA%E7%A1%80%E8%AE%BE%E6%96%BD.html
本期就使用YashanDB 23.2版本部署YAC集群。
1 基础信息与环境
YashanDB版本:yashandb-23.2.7.104-linux-x86_64(该版本新于官网公开版本)
主机信息:
操作系统基础分区如下:
共享磁盘信息:
2 操作系统配置
操作系统安装过程略过,主机名及网络配置已在操作系统安装过程中配置完成。
2.1 关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
2.2 关闭SELinux
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
setenforce 0
2.3 配置hosts
cat >> /etc/hosts <<EOF
10.10.10.31 ydb01
10.10.10.32 ydb02
20.20.20.31 ydb01-priv
20.20.20.32 ydb02-priv
30.30.30.31 ydb01-scan
30.30.30.32 ydb02-scan
30.30.30.30 ydb-storage
EOF
2.4 调整sysctl
cat >> /etc/sysctl.conf <<EOF
#关闭系统交换分区
vm.swappiness=0
#调整系统 VMA 上限,建议生产环境不低于 2000000
vm.max_map_count=2000000
#配置本地可连接端口,下限值建议大于30000
net.ipv4.ip_local_port_range=32768 60999
EOF
sysctl -p
2.5 调整资源限制
cat >> /etc/security/limits.conf <<EOF
* soft nofile 1048576
* hard nofile 1048576
* soft nproc 1048576
* hard nproc 1048576
* soft rss unlimited
* hard rss unlimited
* soft stack 8192
* hard stack 8192
EOF
2.6 安装monit
#挂载ISO
mkdir /iso
mount -r /dev/sr0 /iso
#配置dnf源
cat >> /etc/yum.repos.d/redhat.repo <<EOF
[BaseOS]
name=BaseOS
baseurl=file:///iso/BaseOS
enabled=1
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///iso/AppStream
enabled=1
gpgcheck=0
[epel]
name=epel
baseurl=https://dl.fedoraproject.org/pub/epel/9/Everything/x86_64/
enabled=1
gpgcheck=0
EOF
dnf -y install monit
dnf -y install libnsl
2.7 禁用透明大页
检查透明大页:
cat /sys/kernel/mm/transparent_hugepage/enabled
RHEL 9.5默认开启了透明大页,通过下面方式关闭
#如果上面返回结果不是never则需要进行以下配置
#sed -i 's/quiet/quiet transparent_hugepage=never/' /etc/default/grub
#grub2-mkconfig -o /boot/efi/EFI/redhat/shimx64.efi
#grub2-mkconfig -o /boot/grub2/grub.cfg
#这种方式似乎在EFI环境下不生效
cat >>/etc/rc.d/rc.local <<EOF
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
EOF
chmod +x /etc/rc.d/rc.local
reboot
生产环境中可以根据实际配置需求开启标准大页,这里不做展示了。
2.8 创建用户并配置用户组
useradd -d /home/yashan -m yashan
groupadd YASDBA
usermod -a -G YASDBA yashan
echo "yashan" | passwd --stdin yashan
2.9 添加sudo权限
cat >> /etc/sudoers <<EOF
yashan ALL=(ALL)NOPASSWD:ALL
EOF
2.10 创建目录
mkdir -p /data/yashan chown yashan:YASDBA -R /data/ chmod 777 -R /data/yashan
2.11 挂载磁盘并处理
iscsiadm -m discovery -t st -p ydb-storage
iscsiadm -m node -L all
cat >> /etc/udev/rules.d/99-yacdisks.rules <<EOF
KERNEL=="sd*",SUBSYSTEM=="block",ENV{DEVTYPE}=="disk",ENV{ID_SERIAL}=="14f504e46494c45524a565a47464a2d656654482d45346472",SYMLINK+="mapper/ycr01",OWNER="yashan",GROUP="yasdba",MODE="0666"
KERNEL=="sd*",SUBSYSTEM=="block",ENV{DEVTYPE}=="disk",ENV{ID_SERIAL}=="14f504e46494c45526f576d4b76662d534972582d574c3553",SYMLINK+="mapper/vote01",OWNER="yashan",GROUP="yasdba",MODE="0666"
KERNEL=="sd*",SUBSYSTEM=="block",ENV{DEVTYPE}=="disk",ENV{ID_SERIAL}=="14f504e46494c45525852615078562d316554682d4250734d",SYMLINK+="mapper/data01",OWNER="yashan",GROUP="yasdba",MODE="0666"
EOF
udevadm trigger --action=change
2.12 清理共享缓存
ipcrm -a
3 安装YAC
3.1 上传安装文件
su - yashan mkdir ~/install
这里需要将以下三个文件上传至/home/yashan/install目录中:
yashandb-23.2.7.104-linux-x86_64.tar.gz
yashandb-deps-23.2.7.104-linux-x86_64.tar.gz
yashandb-plugins-all-23.2.7.104-linux-x86_64.tar.gz
3.2 解压安装包
cd ~/install
tar -xvf yashandb-23.2.7.104-linux-x86_64.tar.gz
3.3 启动WEB服务
./bin/yasom --web --listen 10.10.10.31:9001
3.4 WEB安装
通过下面地址访问安装页面:
10.10.10.31:9001
指定软件包路径,并输入主机对应信息:
添加主机:
调整主机对应信息并测试连接:
数据库sudo相关配置:
节点规模配置:
确认集群配置信息(建议勾选“强制安装YFS”):
确认建库参数:
确认配置参数:
部署:
(这里在集群内部配置的显示有一点小问题,但实际配置无问题)
完成部署:
4 安装后配置
4.1 配置环境变量
cd /data/yashan/yasdb_home/yashandb/23.2.7.104/conf/
cat yashandb.bashrc >> ~/.bashrc
#ydb01执行
echo 'export YASCS_HOME=/data/yashan/yasdb_data/ycs/ce-1-1' >> ~/.bashrc
#ydb02执行
echo 'export YASCS_HOME=/data/yashan/yasdb_data/ycs/ce-1-2' >> ~/.bashrc
4.2 配置守护进程
在yasom进程所在服务器(即10.10.10.31服务器)中执行如下命令,启动守护进程:
cd /home/yashan/install
./bin/yasboot monit start --cluster yashandb
配置开机启动:
#两个节点都需要执行
cat >> /etc/rc.d/rc.local <<EOF
su yashan -c '/usr/bin/monit -c /data/yashan/yasdb_home/yashandb/23.2.7.104/ext/monit/monitrc'
EOF
4.3 初始化sys密码
yasboot cluster password set -n YasDB#123 -c yashandb
5 检查数据库
5.1 yasql访问数据库
yasql sys/YasDB#123@10.10.10.31:1688
5.2 查看集群状态
yasboot cluster status -c yashandb -d
5.3 集群启停
#停止集群
yasboot cluster stop -c yashandb -d
#查看集群状态
yasboot cluster status -c yashandb -d
#启动集群
yasboot cluster start -c yashandb -d
6 YashanDB Developer Center
崖山还提供一个可以windows上运行的图形化开发者中心:
新增数据源:
查看数据库信息:
SQL查询:
(可自动补全)
总结
本期在RHEL9.5上成功安装了YashanDB 23.2.7 YAC集群,并进行了相关配置及连接使用,同时通过YashanDB Developer Center连接到数据库进行了简单操作。
老规矩,知道写了些啥。