在达梦数据库dsc集群保姆级部署文档_达梦数据库文档-CSDN博客这篇文档的基础上操作添加磁盘,进行一个扩容操作。
在生产环境中,数据存储集群(DSC)的磁盘空间不足是一个常见问题,这可能会导致服务中断或性能下降。为了解决这一问题,需要对集群进行磁盘空间的扩容。
1、查看asm磁盘空间的使用情况
两个节点执行都可以,这里随意选择一个节点去查看磁盘使用情况,为了方便我选择控制节点dmdsc0去执行。
bash
su - dmdba
cd /dm8/dminstall/bin
./dmasmtool dcr_ini=/dm8/dmdata/dmdcr.ini
# 执行命令查看磁盘使用情况,其它更多命令查看https://blog.csdn.net/weixin_46357988/article/details/140408795
ASM>ls -l 或者 lsdsk
从上面的截图中可以看到磁盘组的名称、ID、分配单元大小(au_size)、区块大小(extent_size)、总大小(total_size)、剩余空间(free_size)、创建时间和修改时间等信息。这里我就以DMLOG磁盘组空间不足,需要扩充磁盘空间为例,进行下面的操作。
2、在windows系统中创建虚拟共享磁盘,模拟生产中真实的磁盘
在VMware Workstation 虚拟机产品安装的目录下找到vmware-vdiskmanager.exe,打开终端(也可以用cmd打开),执行命令创建共享磁盘,语句如下:
bash
.\vmware-vdiskmanager.exe -c -s 5000Mb -a lsilogic -t 2 "D:\share\add.vmdk"
# -c:表示创建一个新的虚拟磁盘。
# -s 5000Mb:指定虚拟磁盘的大小为 5000 兆字节(即 5GB)。
# -a lsilogic:指定虚拟磁盘的适配器类型为 LSI Logic(这是一个 SCSI 控制器)。
# -t 2:指定虚拟磁盘的类型。类型 2 表示"growable"虚拟磁盘,即磁盘文件在创建时很小,但随着数据的增加而增长,直到达到指定的最大大小。
# "D:\share\add.vmdk":指定虚拟磁盘文件的路径和名称,D:\share这个目录要提前创建好。
3、关闭dsc集群并关闭虚拟机
bash
dsc集群关闭顺序:
1、两节点关闭dsc实例
2、两节点关闭asm服务
3、两节点关闭css服务
4、添加新的共享磁盘
dmdsc0、dmdsc1 两台虚拟机新增永久磁盘,两台虚拟机操作步骤相同,步骤如下:
1、点击编辑虚拟机设置
2、选择硬盘,点击添加
3、点击硬盘,点击下一步
4、选择磁盘类型,选择SCSI,点击下一步
5、选择使用现有虚拟磁盘,点击下一步
6、选择之前创建好的虚拟磁盘文件:D:\share\add.vmdk ,点击完成,最后选择保持现有格式
7、点击高级按钮
8、选择新添加的磁盘设置成独立+永久模式,最后点击确定、确定,完成操作
5、配置dmdsc0、dmdsc1两台虚拟机文件
到两台虚拟机(dmdsc0、dmdsc1)目录下的.vmx查看是否末尾有以下参数,如果没有的手动加入。
bash
scsi0:2.SharedBus="Virtual"
6、启动两台虚拟机,然后查看磁盘添加是否成功
bash
# 两节执行命令查看
lsblk
7、对新增的节点进行分区操作(dmdsc0操作)
这里的分区根据实际情况去分,这里为了方便就分成一个主扩展分区
bash
1、输入fdisk /dev/sdc进入划分命令
2、依次输入 n --> p--> 1--> 回车--> 回车--> 回车,完成磁盘划分
3、输入w,保存退出
分区完成,dmdsc0、dmdsc1 机器使用fdisk -l
命令查看是否能查看到分区情况
8、dmdsc0、dmdsc1机器修改udev规则文件
所有的dmdsc集群的机器(dmdsc0、dmdsc1)都要操作
bash
vim /etc/udev/rules.d/70-persistent-ipoib.rules
# 新增配置
ACTION=="add", KERNEL=="sdc1", RUN+="/bin/raw /dev/raw/raw5 %N"
# 修改内容
raw[1-4]改为raw[1-5]
**所有的dmdsc集群的机器(dmdsc0、dmdsc1)**执行下面的命令,使 udev 生效:
bash
udevadm trigger --type=devices --action=change
# 重启dmdsc0、dmdsc1机器
reboot
# 查看dmdsc0、dmdsc1集群配置的udev是否生效,两个机器都要查看
ll /dev/raw/raw*
9、把新的磁盘创建成ASM磁盘(dmdsc0操作)
这里只在dmdsc0节点上执行,使用dmdba用户操作:
bash
su - dmdba
cd /dm8/dminstall/bin
./dmasmcmd
# 输入下面的命令创建asm磁盘
create asmdisk '/dev/raw/raw5' 'LOG1'
# 创建成功 exit 退出
10 、两个节点启动css、asm服务
bash
su - dmdba
cd /dm8/dminstall/bin
./DmCSSXXXXXXX start
./DmASMXXXXXXX start
11、往DMLOG磁盘组里添加磁盘空间(dmdsc0操作)
要在asm启动完成之后,才能进去添加磁盘空间。
bash
su - dmdba
cd /dm8/dminstall/bin
./dmasmtool dcr_ini=/dm8/dmdata/dmdcr.ini
# 添加磁盘
ASM>ALTER DISKGROUP 'DMLOG' ADD ASMDISK '/dev/raw/raw5'
# DMLOG是磁盘组,/dev/raw/raw5是前面添加的磁盘,把这个磁盘加到磁盘组中就能达到扩充磁盘空间的目的
添加成功,查看磁盘空间是否有变化:
bash
ASM>ls -l 或者lsdsk
12、两节点启动dsc实例
bash
su - dmdba
cd /dm8/dminstall/bin
./DmSerXXXXXXX start
13、进入监视器,查看dsc集群是否正常
bash
su - dmdba
cd /dm8/dminstall/bin
./dmcssm ini_path=/dm8/dmdata/dmcssm.ini
show
到这里asm磁盘空间就扩容成功。
磁盘扩容是一项关键的系统维护任务,但由于其潜在的风险,必须在充分准备和严格的操作规程下进行。以下是对操作过程的优化建议,以确保生产环境的稳定性和数据的安全性:
-
风险评估:在进行任何扩容操作之前,进行全面的风险评估,识别所有可能影响系统稳定性和数据完整性的因素。
-
备份数据:在执行扩容之前,务必对所有关键数据进行完整备份,以防万一发生不可预见的问题。
-
详细规划:制定详细的扩容计划,包括所需资源、预期影响、操作步骤和回滚方案。
-
测试环境验证:在生产环境之前,在测试环境中模拟扩容操作,验证操作的可行性和安全性。
-
专业团队执行:确保由经验丰富的专业团队执行扩容操作,遵循最佳实践和标准操作流程。
-
监控系统状态:在扩容过程中,密切监控系统状态和性能指标,以便及时发现并解决任何问题。
-
逐步实施:如果可能,采用逐步实施的策略,先在较小规模上进行尝试,然后逐步扩展到整个系统。
-
文档记录:详细记录扩容过程中的所有操作步骤和结果,以供未来参考和审计。
-
应急响应计划:制定并演练应急响应计划,以便在出现问题时能够迅速采取措施,最小化影响。
-
用户通知:在执行可能影响服务的扩容操作前,提前通知用户,减少对用户的影响。
请注意,上述建议仅供参考,实际操作应根据具体的系统环境、配置和业务需求进行调整。在任何情况下,都应避免在没有充分准备的情况下在生产环境中执行磁盘扩容操作。
大家想学习达梦数据库或者解决报错问题,可以去达梦数据库社区地址(https://eco.dameng.com)
制作不易,各位看官如果觉得还可以,对您有帮助,请给小弟一键三连 鼓励一下,后续还会继续保持