GaussDB-后台手动删除实例

115 阅读5分钟

GaussDB-后台手动删除实例

操作场景

后台手动删除实例。

注意事项
  • 以下步骤仅供参考,具体需要根据实际场景进行操作。
  • 后台手动删除需要删除实例所有节点的信息,本章以某个节点为例,说明需要删除的内容。
操作步骤
  1. 以root用户登录到实例节点。

  2. 找到public_cloud.conf文件。可通过查询om_agent进程获取到该文件的地址前缀,一般为/dbs/om-agent/agent_***/。

    ps aux | grep om_agent

    例如,地址前缀为/dbs/om-agent/agent_7b919469/,则文件地址为/dbs/om-agent/agent_7b919469/common/public_cloud.conf。

  3. 找到以下目录文件进行删除。例如这些目录文件为:

    instanceDir = /var/chroot/var/lib/engine/data

    appDir = /var/chroot/usr/local/core/app

    tmpDir = /var/chroot/usr/local/temp

    cmDir = /var/chroot/usr/local/cm

    etcdDir = /var/chroot/usr/local/etcd

    gtmDir = /var/chroot/usr/local/gtm

    cooDir = /var/chroot/usr/local/cn

    dataDir = /var/chroot/var/lib/engine/data1/data

    实际的目录以public_cloud.conf中展示的内容为准。

  4. 参考以下命令,删除实例的目录文件。

    rm -rf /var/chroot/var/lib/engine/data/ && rm -rf /var/chroot/usr/local/core/app/ && rm -rf /var/chroot/usr/local/temp/* && rm -rf /var/chroot/usr/local/cm/* && rm -rf /var/chroot/usr/local/etcd/* && rm -rf /var/chroot/usr/local/gtm/* && rm -rf /var/chroot/usr/local/cn/* && rm -rf /var/chroot/var/lib/engine/data1/data/***

  5. 执行以下命令,删除该实例用户发起的所有进程。

    pkill -u  {用户名 }

  6. 删除环境变量。

    • 对于沙箱环境,执行以下命令。

      rm -rf /var/chroot/home/Ruby/gauss_env_file

      rm -rf /home/Ruby/gauss_env_file

    • 对于非沙箱环境,进入实例安装的用户目录(例如/home/omm),执行以下命令。

      rm -rf gauss_env_file

  7. 恢复网络相关设置。

    • 对于沙箱环境,可以通过以下命令恢复。

      cp -f /etc/sysconfig/iptables.bk /etc/sysconfig/iptables

      service iptables save

      systemctl restart iptables.service

      systemctl is-active iptables.service

    • 对于非沙箱环境,修改/etc/sysconfig/iptable。需自行判断哪些为用户自己的端口策略,仅保留12017端口及用户自己的端口策略。

      修改后执行以下命令。

      service iptables save

      systemctl restart iptables.service

      systemctl is-active iptables.service

  8. 执行以下命令,删除部分全局定时任务,和实例安装用户下的定时任务。

    sed -i '/auto_incre_backup.sh/d' /etc/crontab

    sed -i '/cron.sh/d' /etc/crontab

    sed -i '/om_monitor/d' /etc/crontab

    sed -i '/ReniceLogicalDecodeThreads.sh/d' /etc/crontab

    crontab -u  {用户名} -r

  9. 执行以下命令,清理OM_Agent服务。

    crontab -u Ruby -r

    rm -rf {om_agent安装目录}

    pgrep -f om_agent.py | xargs kill -9

    参考步骤2,通过om_agent进程获取 {om_agent安装目录} ,即/agent_***/的上一级目录。

    例如,通过进程查询到地址为/dbs/om-agent/agent_7b919469/,则 {om_agent安装目录}为/dbs/om-agent/,执行rm -rf /dbs/om-agent/ 命令。

  10. 非自定义安装情况下,需要清除以下数据盘。参考命令如下所示:

    有些盘、逻辑卷及卷组可能并不存在,需要根据实际情况确定。

    /dev/gaussdbvg/和/dev/backupvg/下面有多少盘也要根据实际情况确定。

    1. 参考以下命令,解除以下数据盘的挂载。

      umount -l /dev/gaussdbvg/etcddata

      umount -l /dev/etcdvg/etcddata

      umount -l /dev/backupvg/backupdata

      umount -l /dev/gaussdbvg/backupdata

      umount -l /dev/gaussdbvg/mydata1

      umount -l /dev/gaussdbvg/mydata2

      umount -l /dev/gaussdbvg/mydata3

    2. 参考以下命令,删除逻辑卷。

      lvremove -f /dev/etcdvg/etcddata

      lvremove -f /dev/backupvg/backupdata

      lvremove -f /dev/gaussdbvg/backupdata

      lvremove -f /dev/gaussdbvg/mydata1

      lvremove -f /dev/gaussdbvg/mydata2

      lvremove -f /dev/gaussdbvg/mydata3

    3. 参考以下命令, 删除卷组。

      vgremove -f /dev/backupvg

      vgremove -f /dev/gaussdbvg

      vgremove -f /dev/etcdvg

    4. 执行以下命令,验证是否完成数据盘清除。

      pvcreate /dev/vdb

      结果回显“*** successfully created”则表示已清除完成。

      当节点有多个数据盘时,需要对每个数据盘执行pvcreate命令。

  11. 挂载NAS设备的情况下,执行以下命令,卸载NAS目录。

    1. 执行以下命令,卸载NAS目录。其中{nas_mount_path}为NAS挂载目录。

      umount -l {nas_mount_path}

    2. 修改自动挂载配置文件/etc/fstab,取消开机自动挂载NAS目录。

      1. 执行如下命令,修改/etc/fstab文件。

        vi /etc/fstab

      2. 删除NAS挂载条目。

      3. 按“Esc”键后执行 :wq ! 保存并退出修改。

  12. 修改Bash启动脚本。

    • 对于沙箱环境,修改/home/Ruby/目录下的.bashrc文件。

    • 对于非沙箱环境,修改实例安装的用户目录(例如/home/omm)下的.bashrc文件。

      需要删除.bashrc文件中如下的相关内容:

      export PATH=/***/om-agent/agent_***/
      export PYTHON_VERSION=python3
      export AGENT_PATH=***
      export GTM_FREE=***
      export MPPDB_ENV_SEPARATE_PATH=***
      export agent_tool_path=***
      export OM_CTL=***
      source ~/gauss_env_file
      
  13. Agent元数据库信息和文件清理。

    1. 执行以下命令,登录Agent元数据库。Agent元数据库位置:/home/Ruby/ agent_sqlite.db。

      sqlite3 agent_sqlite.db

    2. 执行以下命令,清除sys_common_param_tb表的信息。

      delete from sys_common_param_tb where name='new_ops_format';

      delete from sys_common_param_tb where name='enable_sm_algorithm';

      delete from sys_common_param_tb where name='upgrade_scc_version';

      delete from sys_common_param_tb where name='disk_type';

      delete from sys_common_param_tb where name='docker_cpu_overuse_correction';

    3. 执行以下命令,清除其它表信息。

      PRAGMA writable_schema = 1;

      DELETE FROM sqlite_master WHERE type IN ('table','index','trigger');

      PRAGMA writable_schema = 0;

      VACUUM;

    4. 执行以下命令,删除文件目录。

      rm -rf /home/Ruby/alpha_data_packet

    5. 执行以下命令,重启Agent。

      touch /home/Ruby/need_shut_down.touch

  14. 清理和重置系统文件。

    1. 删除全局变量文件。

      rm -rf /etc/gauss_env_file_global

    2. 清理全局配置文件/etc/profile。

      需要删除如下的相关内容。

      umask 00**
      export UNPACKPATH=***
      export PATH=$PATH:$UNPACKPATH/script/gspylib/pssh/bin:$UNPACKPATH/script
      export LD_LIBRARY_PATH=***
      export PYTHONPATH=***
      
    3. 删除后,执行以下命令,重新生效配置文件。

      source /etc/profile

  15. 完成上述步骤后,删除该主机,重新添加。

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