Why Does the OS Fail to Respond When kdump Occurs on a Linux ECS?
Symptom
When kdump occurs on a Xen Linux ECS, the OS fails to respond and cannot be automatically recovered. For example, if you run the echo c>/proc/sysrq-trigger command to trigger kdump, this fault occurs.
Generally, kdump is disabled for public images. This issue does not occur on the ECSs created using public images.
Possible Causes
- Certain Linux kernel versions are incompatible with Xen virtualization.
- If kdump is enabled in the ECS with the kernel not supporting soft_rest, the ECS stops responding during dump.
Solution
Method 1: Disable kdump.
CentOS 7.5 is used as an example in the following.
- Forcibly restart the ECS.
- Log in to the management console.
- Choose Compute > Elastic Cloud Server.
- In the ECS list, select the target ECS and click Restart.
- Select Forcibly restart the preceding ECSs or Forcibly stop the preceding ECSs.
- Click OK.
- Disable kdump.
Solution 2:
If the target ECS supports the crash_kexec_post_notifiers function, add the function to the ECS startup configuration file (menu.lst or grub.cfg). To do so, perform the following operations:
- Run the following command to check whether the ECS supports the crash_kexec_post_notifiers function:
cat /proc/kallsyms |grep crash_kexec_post_notifiers
Figure 2 Support for the crash_kexec_post_notifiers function
- If yes, go to step 2.
- If no, use method 1.
- Add the crash_kexec_post_notifiers function to the startup configuration file menu.lst or grub.cfg.
Take menu.lst as an example.
