华为云Stack虚拟机误删恢复总结

举报
李耳King 发表于 2020/10/27 20:50:16 2020/10/27
【摘要】 由于误操作,删除一台重要的数据库虚拟机,删除方式为MO上直接勾选完全删除,不进回收站,下面总结紧急恢复的过程。


存储恢复

虚拟机误删后,需要先判断存储上是否真的删除了,如果存储上完全删除了就无法恢复,因存储采用的是华为分布式FusionStorage8.0.1存储,本身有预删除功能,上层删除后在存储使用率低时默认会保留72小时后才会真正删除。

首先通过SSH工具,以fsadmin账户登录FSM 管理节点(有浮动IP那台)。

执行命令su - root,输入root账户密码,切换到root帐户。

执行/opt/dfv/oam/oam-u/ismcli/ismcli -u admin  命令,并按提示输入admin帐户的密码登录CLI

执行show delay_deleted volume pool_id=1(根据现场实际存储池ID填写),查看存储池上延迟删除的磁盘信息,并记录下需要恢复的卷ID给你个卷名。

image.png

可以看到存储池上有四块预删除卷,通过卷大小与创建时间判断就是我们需要恢复的虚拟机磁盘,此时可以判断本次误删除可以尝试恢复。

然后执行restore delay_deleted volume volume_id=914(卷ID volume_name=volume-e78c65……8926(分别填写上一步查询出的四块预删除的卷名),恢复已删除的卷。

全部执行完成后,再次执行show delay_deleted volume pool_id=1查看是否还存在未恢复的卷。

image.png

可以看到所有的卷都已经恢复,不存在预删除的卷。

  HCS侧恢复

存储恢复后,需要恢复已删除卷在FusionSphere底层的记录,用于重新挂载,同时重新发放一台相同系统的新虚拟机,用于磁盘挂载替换,用于恢复在MO上的记录。

新虚拟机发放后,首先登陆被级联层底层,查询已删除的虚拟机ID


执行cps template-instance-list --service gaussdb gaussdb查询数据库所在的节点。

登陆数据库所在节点,切换数据库用户,进行cinder数据库。


执行如下截图命令,分别恢复四块已删除的盘信息。

image.png

然后参照以上操作步骤,恢复级联层的磁盘信息,全部恢复后重新登陆云平台被级联底层查询磁盘顺序截图如下。

image.png

同时在nova数据库中执行select DEVICE_NAME,INSTANCE_UUID from block_device_mapping where INSTANCE_UUID='11c6….3b3';查看挂载设备的名称。


登陆级联层,找到新发放的虚拟机,卸载其新发放的磁盘,并按上两步查询出来的磁盘顺序及对应磁盘盘符执行“nova volume-attach   新的虚拟机id    磁盘id  设备名”重新挂载恢复过来的四块磁盘。


挂载完成后,重启新发放的虚拟机,虚拟机正常启动,观察数据与应用都正常,虚拟机恢复完毕。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。