暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

华为GaussDB A 开启和关闭core dump功能

墨天轮 2019-10-12
3337

开启和关闭core dump功能

操作场景

集群开启core dump功能后,当数据库进程发生异常导致退出时,操作系统会将进程当前的内存状况存储在core dump文件中,以便运维人员快速定位问题。建议集群在安装时在preinstall阶段进行开启。本章节指导系统管理员,如何在集群运行过程开启或关闭core dump功能。

对系统的影响

需要重启集群MPPDB服务。

开启core dump功能

说明:
  • 开启功能不支持指定单独的core文件目录存储,core文件仅生成于各进程的启动目录下。
  • 如果是欧拉系统,需要先以root用户登陆每个节点执行如下命令清除系统的默认ulimit设置:

    sed -i "/^ulimit -c.*/d" /etc/profile; echo "root soft core 0" >> /etc/security/limits.conf

  • 使用PuTTY工具,以root用户登录主管理节点(如使用omm用户安装集群,请使用omm用户登录),执行以下命令,防止“PuTTY”超时退出。

    TMOUT=0

    说明:

    如果在EulerOS下,需要执行以下操作防止超时退出:

    • 执行vi /etc/profile打开配置文件,修改参数“export TMOUT=0”,保存退出,再执行source /etc/profile导入配置文件。
    • 执行vi /etc/ssh/sshd_config打开配置文件,修改参数“ClientAliveInterval”为0 ,“ClientAliveCountMax”为3,保存退出,执行service sshd restart重启sshd服务。
    • 断开PuTTY重新连接节点,配置生效。

  • 开启core dump功能。

    • 进入安装脚本工具包的解压目录,例如“/opt/FusionInsight_SetupTool/preinstall”,

      cd /opt/FusionInsight_SetupTool/preinstall

    • 执行vi preinstall.ini打开配置文件,并在配置文件中增加g_core_dump=1g_core_dump_dir=""配置项。
    • 保存退出。
    g_hosts="192.168.10.[10–16]" g_user_name="root" g_port=22 g_parted=2 g_parted_conf="192.168.10.10:host0.ini;192.168.10.11:host1.ini;192.168.10.12:host2.ini;192.168.10.13:host3.ini; 192.168.10.14:host4.ini;192.168.10.15:host5.ini;192.168.10.16:host6.ini;" g_add_pkg=1 g_pkgs_dir="redhat-6.4:/media/" g_log_file="/tmp/fi-preinstall.log" g_debug=0 g_hostname_conf="192.168.10.10:192.168.20.10:host0;192.168.10.11:192.168.20.11:host1;192.168.10.12:192.168.20.12:host2;192.168.10.13:192.168.20.13:host3;192.168.10.14:192.168.20.14:host4;192.168.10.15:192.168.20.15:host5;192.168.10.16:192.168.20.16:host6;" g_swap_off=1 g_core_dump=1 g_core_dump_dir=""

  • 执行preinstall操作。输入root用户的密码(如使用omm用户安装集群,请输入omm用户密码),等待执行完毕。

    cd /opt/FusionInsight_SetupTool

    ./setuptool.sh preinstall

  • omm用户重开会话登录每一个MPPDB节点,执行以下操作重启每个MPPDB节点的om_monitor进程。

    • 执行ps -ef | grep om_monitor | grep -v grep | awk '{print $2}' | xargs kill -9命令终止om_monitor进程。
    • 执行crontab -l | grep om_monitor | awk '{for(i=1;i<=5;i++){ $i="" };print $0}' | xargs命令查询om_monitor启动命令。
    • 将4.b输出的内容复制到命令行按“Enter”键执行,重新启动om_monitor。
    • 执行ps -ef | grep om_monitor | grep -v grep | awk '{print $2}'命令查询重启后的om_monitor进程ID。
    • 执行cat /proc/om_monitor进程ID/limits | grep "Max core file size" | awk '{print $5}',查询om_monitor进程的core dump开关值是否为“unlimited”
      • 是,执行5。
      • 否,重新执行4.a~4.e。

  • 登录FusionInsight Manager界面,在“集群”下拉列表中单击需要操作的集群名称。选择“服务 > MPPDB > 更多 > 重启”。

    等待重启后,配置生效。

  • omm用户登录主OMS节点执行如下命令重启所有NodeAgent进程:

    ${BIGDATA_HOME}/om-server/om/inst/restartAllNoes.sh

关闭core dump功能

  • 使用PuTTY工具,以root用户登录主管理节点(如使用omm用户安装集群,请使用omm用户登录),执行以下命令,防止“PuTTY”超时退出。

    TMOUT=0

    说明:

    如果在EulerOS下,需要执行以下操作防止超时退出:

    • 执行vi /etc/profile打开配置文件,修改参数“export TMOUT=0”,保存退出,再执行source /etc/profile导入配置文件。
    • 执行vi /etc/ssh/sshd_config打开配置文件,修改参数“ClientAliveInterval”为0 ,“ClientAliveCountMax”为3,保存退出,执行service sshd restart重启sshd服务。
    • 断开PuTTY重新连接节点,配置生效。

  • 关闭core dump功能。

    • 进入安装脚本工具包的解压目录,例如“/opt/FusionInsight_SetupTool/preinstall”,

      cd /opt/FusionInsight_SetupTool/preinstall

    • 执行vi preinstall.ini打开配置文件,并将配置文件中的“g_core_dump”设置为0。
    • 保存退出。
    g_hosts="192.168.10.[10–16]" g_user_name="root" g_port=22 g_parted=2 g_parted_conf="192.168.10.10:host0.ini;192.168.10.11:host1.ini;192.168.10.12:host2.ini;192.168.10.13:host3.ini; 192.168.10.14:host4.ini;192.168.10.15:host5.ini;192.168.10.16:host6.ini;" g_add_pkg=1 g_pkgs_dir="redhat-6.4:/media/" g_log_file="/tmp/fi-preinstall.log" g_debug=0 g_hostname_conf="192.168.10.10:192.168.20.10:host0;192.168.10.11:192.168.20.11:host1;192.168.10.12:192.168.20.12:host2;192.168.10.13:192.168.20.13:host3;192.168.10.14:192.168.20.14:host4;192.168.10.15:192.168.20.15:host5;192.168.10.16:192.168.20.16:host6;" g_swap_off=1 g_core_dump=0 g_core_dump_dir=""

  • 执行preinstall操作。输入root用户的密码(如使用omm用户安装集群,请输入omm用户密码),等待执行完毕。

    cd /opt/FusionInsight_SetupTool

    ./setuptool.sh preinstall

  • omm用户重开会话登录每一个MPPDB节点,执行以下操作重启每个MPPDB节点的om_monitor进程:

    • 执行ps -ef | grep om_monitor | grep -v grep | awk '{print $2}' | xargs kill -9命令终止om_monitor进程。
    • 执行crontab -l | grep om_monitor | awk '{for(i=1;i<=5;i++){ $i="" };print $0}' | xargs命令查询om_monitor启动命令。
    • 将4.b输出的内容复制到命令行按“Enter”键执行,重新启动om_monitor。
    • 执行ps -ef | grep om_monitor | grep -v grep | awk '{print $2}'命令查询重启后的om_monitor进程ID。
    • 执行cat /proc/om_monitor进程ID/limits | grep "Max core file size" | awk '{print $5}',查询om_monitor进程的core dump开关值是否为“unlimited”
      • 是,重新执行4.a~4.e。
      • 否,执行5。

  • 登录FusionInsight Manager界面,在“集群”下拉列表中单击需要操作的集群名称。选择“服务 > MPPDB > 更多 > 重启”。

    等待重启后,配置生效。

  • omm用户登录主OMS节点执行如下命令重启所有NodeAgent进程:

    ${BIGDATA_HOME}/om-server/om/inst/restartAllNoes.sh


查看更多:华为GaussDB 200 常见问题
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论