YashanDB目录划分

简介: 本文介绍了YashanDB的安装目录、HOME与DATA目录规划、运行日志目录配置以及共享集群部署时的LUN绑定操作。主要内容包括:安装目录设置在/home/yashan,HOME和DATA目录规划在/data/yashan;运行日志目录建议配置在独立物理盘以优化性能;共享集群部署需绑定系统盘和数据盘至指定路径(如/dev/yfs),并通过脚本生成配置文件完成LUN绑定,确保多路径WWID一致性。适用于集群多服务器并行安装场景。

本文内容来自YashanDB官网,原文内容请见 https://doc.yashandb.com/yashandb/23.3/zh/%E5%AE%89%E8%A3%85%E5%92%8C%E5%8D%87%E7%BA%A7/%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2/%E5%AE%89%E8%A3%85%E5%89%8D%E5%87%86%E5%A4%87/%E7%9B%AE%E5%BD%95%E5%88%92%E5%88%86.html

# 安装目录

YashanDB采用集群多服务器并行安装模式,只需在一台服务器上创建安装目录,用于下载和解压软件包。

本安装手册中,安装目录规划在/home/yashan下,由yashan用户执行软件包下载时自行创建。

# HOME目录和DATA目录

所有YashanDB的实例节点都必须规划以下两个目录:

  • HOME目录:YashanDB的产品目录,包含YashanDB所提供的命令、数据库运行所需的库及各关键组件。该目录由yashan用户执行安装部署时输入的install-path参数根据一定规则生成并创建。

  • DATA目录:YashanDB的数据目录,包含数据库的各类系统数据文件、部分日志文件和配置文件,用户数据也缺省存储在该目录下。但对于共享集群,所有的数据文件和redo文件均需保存在共享存储上,DATA目录将只用于存储实例运行相关的配置文件、日志文件等数据。该目录由yashan用户执行安装部署时输入的--data-path参数根据一定规则生成并创建。

本安装手册中,HOME目录和DATA目录均规划在/data/yashan下,yashan用户需要对该目录拥有全部权限,可执行如下命令授权:

Copied!

Note

DATA目录包括的部分日志文件具体见日志管理中日志分类章节描述。

# 运行日志目录

YashanDB的运行日志目录,包含数据库运行过程中产生的日志文件,该目录默认为HOME目录/yashandb/版本号/log。

Note

为避免运行日志跟数据文件IO相互影响,建议将数据库的运行日志与数据文件路径配置到不同的物理盘上。

  • 运行日志路径:由集群配置文件(集群名称.toml)中group.node.config配置域下的RUN_LOG_FILE_PATH参数决定。

  • 数据文件路径:由执行安装部署时输入的--data-path参数决定,安装完成后可直接修改集群配置文件中group.node配置域下的data_path参数。共享集群部署的数据文件路径默认配置在共享存储下,无法直接修改,只能通过修改共享存储的路径从而调整数据文件存储的路径。

绑定LUN(共享集群部署)


本步骤只适用于共享集群部署,单机/分布式部署请略过。

实际部署环境可能与示例不同,请参考示例调整,请勿将以下配置直接用于生产环境。

YashanDB要求共享存储规划2类磁盘:

  • 系统盘:用于集群管理,仅支持1、3或5块相同大小的磁盘,建议每块磁盘容量至少1G,此类磁盘的绝对路径将作为yasboot package ce gen命令的--system-data选项,以,分隔多个磁盘,例如--system-data /dev/yfs/sys0,/dev/yfs/sys1,/dev/yfs/sys2
  • 数据盘:用于保存集群业务数据,1块或多块相同大小的磁盘,请根据实际业务需求规划其数量和容量,此类磁盘的绝对路径将作为yasboot package ce gen命令的--data选项参数,以,分隔多个磁盘,例如--data /dev/yfs/data0,/dev/yfs/data1,/dev/yfs/data2

所有系统盘和数据盘应被绑定至同一目录,该目录将作为yasboot package ce gen命令的--disk-found-path选项参数,本文采用默认值/dev/yfs作为示例。

本安装手册不对共享存储的组网和存储划分提供操作指引,请管理员根据共享存储厂商提供的安装指导操作。

本安装手册假定3块系统盘、1块数据盘,共享存储上已划分4个LUN并已通过多路径的方式挂载,规划如下:

  • /dev/mapper/lun01-data0:数据盘,规划绑定至/dev/yfs/data0路径。
  • /dev/mapper/lun03-sys0:系统盘,规划绑定至/dev/yfs/sys0路径。
  • /dev/mapper/lun04-sys1:系统盘,规划绑定至/dev/yfs/sys1路径。
  • /dev/mapper/lun05-sys2:系统盘,规划绑定至/dev/yfs/sys2路径。

绑定目录(/dev/yfs)与磁盘名称(data0、sys0等)均为示例值,请根据实际业务需求调整,但命名时需注意:

  • 绑定后磁盘的绝对路径(例如/dev/yfs/sys0)长度不得超过31字节。
  • 绑定目录和磁盘的绝对路径均将作为yasboot package ce gen命令的参数值,如有修改,请在执行yasboot package ce gen时使用实际参数。

请以root用户在集群所有服务器上执行下述LUN绑定操作:

# 步骤1:生成配置文件

  1. 在root目录下创建名称为genDevRuleByUUID.sh的脚本:

    Copied!

  2. 输入如下内容,并根据部署环境,修改DEVICES各设备路径,修改TARGETS指定各设备绑定名称,应与DEVICES参数一一对应,修改YFS_DISK_DIR为绑定目录,保存退出:

    ```

DEVICES=("/dev/mapper/lun01-data0" "/dev/mapper/lun03-sys0" "/dev/mapper/lun04-sys1" "/dev/mapper/lun05-sys2")

TARGETS=("data0"                   "sys0"                   "sys1"                   "sys2")

YFS_DISK_DIR="/dev/yfs"


USER="yashan"
GROUP="yashan"
UGROUP="$USER:$GROUP"

if [ ${#TARGETS[@]} != ${#DEVICES[@]} ]
then
    echo "DEVICES and TARGETS count does not match"
    exit 1
fi

if [ ${#TARGETS[@]} == 0 ]
then
    echo "no targets found"
    exit 1
fi

curDir=$(cd "$(dirname "$0")";pwd)
rm -f $curDir/yashan-device-rule.rules

count=${#TARGETS[@]}

for ((i = 0; i < $count; i ++))
do
    device=${DEVICES[$i]}
    target_name=${TARGETS[$i]}
    target="${YFS_DISK_DIR}/${target_name}"

    str1="$device:`udevadm info --query=all --name=$device | grep DM_UUID`"
    str2=${str1#*=}
    echo "KERNEL==\"dm-*\",ENV{DM_UUID}==\"${str2}\",SYMLINK+=\"$target\",OWNER=\"$USER\",GROUP=\"$GROUP\",MODE=\"0666\",RUN+=\"/bin/sh -c 'chown -R yashan:yashan $target'\""  >> $curDir/yashan-device-rule.rules
done

```

Copied!
  1. 执行脚本,生成配置文件:

    脚本执行成功后,会在当前路径生成名为yashan-device-rule.rules的绑定配置文件,内容如下,实际部署时内容可能有差异:

    
    KERNEL=="dm-*",ENV{DM_UUID}=="mpath-36d039ea000a2231f0000e7d9668d7b4a",SYMLINK+="/dev/yfs/data0",OWNER="yashan",GROUP="yashan",MODE="0666",RUN+="/bin/sh -c 'chown -R yashan:yashan /dev/yfs/data0'"
    KERNEL=="dm-*",ENV{DM_UUID}=="mpath-36d039ea000a2231f0000e7dd668d7b68",SYMLINK+="/dev/yfs/sys0",OWNER="yashan",GROUP="yashan",MODE="0666",RUN+="/bin/sh -c 'chown -R yashan:yashan /dev/yfs/sys0'"
    KERNEL=="dm-*",ENV{DM_UUID}=="mpath-36d039ea000a233b90000e358668d7caf",SYMLINK+="/dev/yfs/sys1",OWNER="yashan",GROUP="yashan",MODE="0666",RUN+="/bin/sh -c 'chown -R yashan:yashan /dev/yfs/sys1'"
    KERNEL=="dm-*",ENV{DM_UUID}=="mpath-36d039ea000a233b90000e35a668d7cbf",SYMLINK+="/dev/yfs/sys2",OWNER="yashan",GROUP="yashan",MODE="0666",RUN+="/bin/sh -c 'chown -R yashan:yashan /dev/yfs/sys2'"
    

    Copied!

    SYMLINK为绑定设备的别名,检查是否为预期绑定目标。

# 步骤2:部署配置文件

执行如下命令部署绑定配置文件:

# 步骤3:重启服务器

绑定配置文件的生效需要重启服务器:

# 步骤4:检查绑定结果

  1. 执行如下命令,确认所有绑定已生效,用户和组均为yashan

    
    lrwxrwxrwx 1 yashan yashan 7 Jul 11 14:44 data0 -> ../dm-5
    lrwxrwxrwx 1 yashan yashan 7 Jul 11 14:44 sys0 -> ../dm-7
    lrwxrwxrwx 1 yashan yashan 7 Jul 11 14:44 sys1 -> ../dm-4
    lrwxrwxrwx 1 yashan yashan 7 Jul 11 14:44 sys2 -> ../dm-6
    

    Copied!

    并检查它们指向设备的用户和组均为yashan,且权限为0666

    ```

    brw-rw-rw- 1 yashan yashan 253, 4 Jul 11 14:44 /dev/dm-4

```

Copied!
  1. 在集群所有服务器上执行以下命令,确认各服务器上所有绑定的多路径WWID一致。

    Copied!

    若各服务器上同一路经所对应的WWID不一致,说明其挂载的磁阵不是同一个LUN,请联系网络管理员处理。

相关文章
|
8月前
|
SQL 数据可视化 网络安全
YashanDB分布式可视化部署
本文介绍YashanDB的分布式部署流程,涵盖服务端安装、数据库基本信息与服务器配置、节点信息设置、建库参数调整、环境变量配置及安装结果检查等步骤。通过可视化Web界面操作,详细说明了各环节配置方法和注意事项,确保用户顺利完成数据库集群的搭建与初始化设置。适用于需要分布式数据库部署的场景,提供全面的操作指导。
YashanDB分布式可视化部署
|
8月前
|
SQL 数据可视化 网络安全
YashanDB单机(主备)可视化部署
本文来自YashanDB官网,主要介绍单机(主备)部署YashanDB服务端的详细步骤。内容涵盖启动Web服务、配置数据库基本信息与服务器信息、设置sudo权限、配置集群节点信息、建库参数、全局参数、环境变量及安装结果检查等环节。通过可视化界面与命令行操作结合,帮助用户完成从安装到验证的全流程部署。适合初学者及运维人员参考使用。
YashanDB单机(主备)可视化部署
|
SQL Cloud Native 关系型数据库
ADBPG(AnalyticDB for PostgreSQL)是阿里云提供的一种云原生的大数据分析型数据库
ADBPG(AnalyticDB for PostgreSQL)是阿里云提供的一种云原生的大数据分析型数据库
1916 1
|
8月前
|
数据库
YashanDB更换服务器IP
本文来自YashanDB官网,主要介绍当单机部署的数据库集群中服务器IP发生变更时,管理员如何使用`yasboot ipchange`命令完成数据库层面的IP更换操作。以一主两备环境为例,详细描述了更换`yasom`、`yasagent`和`yasdb` IP的具体步骤,包括操作顺序、命令示例以及验证方法,确保数据库服务恢复正常运行。操作需按顺序执行,并满足YashanDB的部署要求。
|
8月前
|
数据可视化 网络安全 数据库
YashanDB安装初始环境调整
本文档来源于YashanDB官网,主要介绍YashanDB安装前的环境准备与配置。内容涵盖端口开放规则(包括默认端口号和分配原则)、防火墙设置(关闭或添加白名单)、SSH服务开启以及共享集群部署时的环境清理等关键步骤。确保按照指引正确配置端口和环境,可有效避免安装过程中因网络或环境问题导致的失败。适用于单机、分布式及共享集群等多种部署形态。
|
8月前
|
数据库
YashanDB滚动升级回退
本文来自YashanDB官网,主要介绍数据库升级失败时的回退操作。当因网络故障、配置错误等原因导致升级失败,可通过`yasboot cluster rollback`命令进行滚动升级回退,恢复至升级前环境。注意,仅升级失败才允许回退,成功后执行会报错。回退分两步:1) 数据库回退;2) yasom与yasagent组件回退。若回退失败且主库数量为0,需重启旧版本数据库并停止用户业务。具体参数和命令详见文档。
|
8月前
|
存储 SQL 网络安全
YashanDB共享集群部署
本文介绍了YashanDB共享集群部署的安装步骤,以2台服务器和1个共享存储(含3个及以上LUN)为例。首先通过`yasboot package`命令生成配置文件`yashandb.toml`和`hosts.toml`,并根据需求调整参数。接着执行安装、数据库部署及重启操作,配置环境变量后检查安装结果。最后通过工具设置密码、查看状态,并可选择创建用户及开启守护功能。
|
SQL 关系型数据库 MySQL
实时计算 Flink版产品使用合集之如何做mysqltomysql同步任务
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStreamAPI、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
监控 关系型数据库 数据库
PostgreSQL的索引优化策略?
【8月更文挑战第26天】PostgreSQL的索引优化策略?
489 1
|
11月前
|
存储 分布式计算 Hadoop
MPP 架构与 Hadoop 架构技术选型指南
MPP架构与Hadoop架构是处理海量数据的两大选择。MPP通过大规模并行处理实现快速查询响应,适用于企业级数据仓库和OLAP应用;Hadoop则以分布式存储和计算为核心,擅长处理非结构化数据和大数据分析。两者各有优劣,MPP适合结构化数据和高性能需求场景,而Hadoop在扩展性和容错性上表现更佳。选择时需综合考虑业务需求、预算和技术能力。
1218 14