When a user stops a VM, blue screen of death (BSOD) occurs on the VM. Therefore, the system automatically attempts to restart the VM, which makes the VM stopping task suspend. However, when the user attempts to log in to the VM using virtual network computing (VNC), a message indicating a connection failure is displayed and VNC login fails.
1. Log in to the CNA where the VM is running as user root.
2. Run the following command to query the VNC port number:
virsh dumpxml i-00000033|grep vnc
i-00000033 in the command indicates the ID of the VM.
Information similar to the following is displayed:
<graphics type='vnc' port='5902' autoport='yes' listen='0.0.0.0' passwd='XXXXXXXX'>
In the command output, the value of port is the VNC port number. The following operations use VNC port 5902 as an example to show how to rectify the fault. Log in to the active VRM node as user root and run the following command to update the database:
export PGPASSWORD='SingleLOUD!1';psql -U galax vrm -c"update tbl_vm set vncport=5902 where id='i-00000033';"
In the command, id indicates the ID of the failed VM. vncport is the VNC port number queried in step 2. PGPASSWORD indicates the password for logging in to the database. The default value is SingleLOUD!1.
The following information is displayed:
4. Run the following command to restart the VRM service:
service vrmd restart
5. On the FusionCompute portal, log in to the VM using VNC again.
During the VM stopping process, the BSOD triggers VM restart. After the VM restarts, the VNC login port number changes. However, the VNC login port number is not updated on the VRM and CNA nodes. As a result, login to the FusionCompute portal using VNC fails.