GaussDB-安装实例磁盘相关问题处理

205 阅读4分钟

GaussDB-安装实例磁盘相关问题处理

操作场景

“实例管理”页显示创建失败的实例。

打开“任务中心”,找到任务状态为“失败”的任务,单击“任务详情”,失败任务为“PrepareDb”。

单击“WaitAgentCmdTask”右侧的“操作 > 查看失败原因”,失败原因首行显示“failed due to application method exception; exception=message:Failed [InitDb] step 9”。

场景1 数据盘数据未清理导致失败

问题现象

失败原因中有以下关键信息:

Execute pvcreate /dev/vdb failed:ext4 signature detected on /dev/vdb at offset 1080.Wipe it? [y/n]:

处理步骤

  1. 以root用户登录所有失败节点。

  2. 执行失败原因中的命令,即Execute {cmd} failed之间的命令,如本示例为pvcreate /dev/vdb,具体以实际失败信息为准。

    该操作会清空磁盘数据,在输入“y”前请先确认已备份或可删除数据,再进行操作。

    pvcreate /dev/vdb

    回显如下:

    WARNING: ext4 signature detected on /dev/vdb at offset 1080. Wipe it? [y/n]: y
      Wiping ext4 signature on /dev/vdb.
      Physical volume "/dev/vdb" successfully created.
    

    回显出现successfully created. 字样表示清理成功。

  3. 在每个失败节点上分别完成以上操作后,登录云数据库GaussDB管理平台(TPOPS)

  4. 在任务中心中找到对应任务,单击失败任务为“PrepareDb”后“操作 > 重做 > PreInstall4MiniInstanceTask > 确定”。

场景2 数据盘已存在挂载点

问题现象

失败原因中有以下关键信息:

Can't open /dev/sdb exclusively. Mounted filesystem?

处理步骤

  1. 以root用户登录所有失败节点。

  2. 执行以下命令,查看报错盘是否有挂载点。

    报错盘为Can't open {disk} exclusively之间的盘符,如本示例为/dev/vdb。

    lsblk | grep vdb

    回显如下:

    vdb           252:16   0  300G  0 disk /opt/cluster
    
  3. 执行以下命令,卸载挂载点。

    umount -l /opt/cluster

  4. 执行以下命令,清理磁盘。

    该操作会清空磁盘数据,在输入“y”前请先确认已备份或可删除数据,再进行操作。

    pvcreate /dev/vdb

    回显如下:

    WARNING: ext4 signature detected on /dev/vdb at offset 1080. Wipe it? [y/n]: y
      Wiping ext4 signature on /dev/vdb.
      Physical volume "/dev/vdb" successfully created.
    

    回显出现“successfully created.”字样表示清理成功。

  5. 在每个失败节点上分别完成以上操作后,登录云数据库GaussDB管理平台(TPOPS)

  6. 在任务中心中找到对应任务,单击失败任务为“PrepareDb”后“操作 > 重做 > PreInstall4MiniInstanceTask > 确定”。

场景3 数据盘已划分分区

问题现象

失败原因中有以下关键信息:

Device /dev/vdb excluded by a filter.

处理步骤

  1. 以root用户登录所有失败节点。

  2. 执行以下命令,查看报错盘是否有挂载点。

    报错盘为Device {disk} excluded by a filter之间的盘符,如本示例为/dev/vdb。

    lsblk | grep vdb

    回显如下:

    vdb           252:16   0  300G  0 disk 
    └─vdb1        252:17   0  100G  0 part /opt/cluster
    
  3. 执行以下命令,卸载挂载点。

    umount -l /opt/cluster

  4. 执行以下命令,删除磁盘分区。

    parted /dev/vdb

    回显如下:

    GNU Parted 3.3
    Using /dev/vdb
    Welcome to GNU Parted! Type 'help' to view a list of commands.
    (parted) mklabel msdos                                                    
    Warning: The existing disk label on /dev/vdb will be destroyed and all data on this disk will be lost. Do you want to continue?
    Yes/No? yes                                                               
    (parted) quit                                                             
    Information: You may need to update /etc/fstab.
    
  5. 执行以下命令,清理磁盘。

    该操作会清空磁盘数据,在输入“y”前请先确认已备份或可删除数据,再进行操作。

    pvcreate /dev/vdb

    回显如下:

    WARNING: ext4 signature detected on /dev/vdb at offset 1080. Wipe it? [y/n]: y
      Wiping ext4 signature on /dev/vdb.
      Physical volume "/dev/vdb" successfully created.
    

    回显出现“successfully created.”字样表示清理成功。

  6. 在每个失败节点上分别完成以上操作后,登录云数据库GaussDB管理平台(TPOPS)

  7. 在任务中心中找到对应任务,单击失败任务为“PrepareDb”后“操作 > 重做 > PreInstall4MiniInstanceTask > 确定”。

场景4 mount命令无法挂载

问题现象

使用mount命令挂载时没有报错,但是无法挂载。通过查看/var/log/messages文件可以看到有以下报错信息。

Unit X.mount is bound to inactive unit

处理步骤

  1. 以root用户登录失败节点。

  2. 查看/var/log/messages文件,查看报错信息

  3. 执行以下命令,重新加载守护进程,即可重新挂载。

    systemctl daemon-reload

更多详情请参考GaussDB 文档中心:doc.hcs.huawei.com/db/zh-cn/ga…