KVM "shutting down, reason=crashed" 问题处理

打开debug日志抓取信息

2022-10-12 07:42:43.698+0000: 63115: debug : processMonitorEOFEvent:4814 : Monitor connection to 'xx' closed without SHUTDOWN event; assuming the domain crashed
2022-10-12 07:42:43.719+0000: 63115: debug : qemuProcessStop:7017 : Shutting down vm=0x7f7c9c170a50 name=xx id=32 pid=6875, reason=crashed, asyncJob=none, flags=0x0
2022-10-12 07:42:43.747+0000: 63115: debug : qemuDomainLogAppendMessage:7891 : Append log message (vm='xx' message='2022-10-12 07:42:43.747+0000: shutting down, reason=crashed
) stdioLogD=1

结合源码查看

# qemu/qemu_driver.c
if (virDomainObjGetState(vm, NULL) != VIR_DOMAIN_SHUTDOWN) {                                                                                                                                                                                                                                          

    VIR_DEBUG("Monitor connection to '%s' closed without SHUTDOWN event; ""assuming the domain crashed", vm->def->name);                                                                                                                                                                                                                              
    stopReason = VIR_DOMAIN_SHUTOFF_CRASHED; 

qemuProcessStop(driver, vm, stopReason, VIR_ASYNC_JOB_NONE, stopFlags);


# qemu/qemu_process.c
void qemuProcessStop(virQEMUDriver *driver,                                                                                                                                                                                                                                          
     virDomainObj *vm,                                                                                                                                                                                                                                               
     virDomainShutoffReason reason,                                                                                                                                                                                                                                  
     virDomainAsyncJob asyncJob,                                                                                                                                                                                                                                     
     unsigned int flags)                                                                                                                                                                                                                                             
                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                          
     if ((timestamp = virTimeStringNow()) != NULL) {                                                                                                                                                                                                                                       
        qemuDomainLogAppendMessage(driver, vm, "%s: shutting down, reason=%s\n",                                                                                                                                                                                                          
                                   timestamp,                                                                                                                                                                                                                                             
                                   virDomainShutoffReasonTypeToString(reason));                                                                                                                                                                                                           
    }

查看物理机日志

Oct 12 07:42:42 xx kernel: Out of memory: Kill process 6875 (qemu-kvm) score 145 or sacrifice child

确定是因为物理机内存不足导致的问题。

posted @ 2022-10-12 17:43  武平宁  阅读(1024)  评论(0)    收藏  举报