dsc集群添加磁盘空间

达梦数据库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磁盘空间就扩容成功。

磁盘扩容是一项关键的系统维护任务,但由于其潜在的风险,必须在充分准备和严格的操作规程下进行。以下是对操作过程的优化建议,以确保生产环境的稳定性和数据的安全性:

  1. 风险评估:在进行任何扩容操作之前,进行全面的风险评估,识别所有可能影响系统稳定性和数据完整性的因素。

  2. 备份数据:在执行扩容之前,务必对所有关键数据进行完整备份,以防万一发生不可预见的问题。

  3. 详细规划:制定详细的扩容计划,包括所需资源、预期影响、操作步骤和回滚方案。

  4. 测试环境验证:在生产环境之前,在测试环境中模拟扩容操作,验证操作的可行性和安全性。

  5. 专业团队执行:确保由经验丰富的专业团队执行扩容操作,遵循最佳实践和标准操作流程。

  6. 监控系统状态:在扩容过程中,密切监控系统状态和性能指标,以便及时发现并解决任何问题。

  7. 逐步实施:如果可能,采用逐步实施的策略,先在较小规模上进行尝试,然后逐步扩展到整个系统。

  8. 文档记录:详细记录扩容过程中的所有操作步骤和结果,以供未来参考和审计。

  9. 应急响应计划:制定并演练应急响应计划,以便在出现问题时能够迅速采取措施,最小化影响。

  10. 用户通知:在执行可能影响服务的扩容操作前,提前通知用户,减少对用户的影响。

请注意,上述建议仅供参考,实际操作应根据具体的系统环境、配置和业务需求进行调整。在任何情况下,都应避免在没有充分准备的情况下在生产环境中执行磁盘扩容操作。

大家想学习达梦数据库或者解决报错问题,可以去达梦数据库社区地址(https://eco.dameng.com

制作不易,各位看官如果觉得还可以,对您有帮助,请给小弟一键三连 鼓励一下,后续还会继续保持

相关推荐
woshilys2 分钟前
sql server 查询对象的修改时间
运维·数据库·sqlserver
Hacker_LaoYi3 分钟前
SQL注入的那些面试题总结
数据库·sql
建投数据1 小时前
建投数据与腾讯云数据库TDSQL完成产品兼容性互认证
数据库·腾讯云
Hacker_LaoYi2 小时前
【渗透技术总结】SQL手工注入总结
数据库·sql
岁月变迁呀2 小时前
Redis梳理
数据库·redis·缓存
独行soc2 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
你的微笑,乱了夏天3 小时前
linux centos 7 安装 mongodb7
数据库·mongodb
工业甲酰苯胺3 小时前
分布式系统架构:服务容错
数据库·架构
独行soc4 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍08-基于时间延迟的SQL注入(Time-Based SQL Injection)
数据库·sql·安全·渗透测试·漏洞挖掘
White_Mountain4 小时前
在Ubuntu中配置mysql,并允许外部访问数据库
数据库·mysql·ubuntu