虛擬機問題處理一般流程:
1、 加載openstack登錄信息,因爲每個機器所處的環境不同,所以需要加載不同的環境變量。
shell命令爲source admin_xxx.sh
2、 根據用戶提供的IP地址,通過命令nova list | grep IP地址 得到虛擬機的id及name等。
3、 通過nova show 虛擬機id或者name 得到vm的詳細信息,比較重要的幾個參數是:hypervisor_hostname,instance_name及volumes_attached等。
4、 使用nova get-spice-console 虛擬機id spice 命令,獲取spice url端口。
注意spice端口只有在虛擬機運行時纔有。
5、 使用spice客戶端登錄虛擬機查看問題,網址爲spice://spice url。
注意由於spice同一時間只容許一個機器登錄,DAAS客戶使用spice連接可能會發生掉線,IAAS客戶使用ssh或vnc連接不會受到影響。
6、 一般虛擬機很卡的原因是,網速問題(無法解決)和USB2接口問題(在設備管理器中禁用USB即可)。
7、 若虛擬機死機後無法操作,只能採用nova reboot --hard 命令,硬重啓虛擬機。
8、 在該虛擬機的host主機中查看KVM中的配置,使用命令 virsh dumpxml instance_name 得到詳細配置,uuid、name等相關參數與虛擬機信息中的一一對應;disk標籤顯示掛載硬盤信息;target標籤中若參數爲dev='vda' bus='virtio’,則問題可能是部分過老或較新的系統不太支持,若參數爲dev='hda' bus='ide’,則問題是重啓很慢,性能一般;graphics標籤中顯示端口信息。
9、 根據instance_name在host主機中查進程,使用命令ps -aux | grep instance_name 查看當前虛擬機相關的進程信息。
10、若步驟3中,顯示虛擬機已經關閉,則需要查看日誌。在host主機/var/log/nova/nova-compute.log中查看調度、flavor等是否存在問題;在兩個controller節點中查看nova-conduct日誌中api管理是否正常,cinder日誌中volume磁盤管理是否正常。若發生網絡報錯、網關ping不通問題,需要在host主機中查看/var/log/neutron/openvswitch-agent.log日誌,若報錯爲ovs is dead,則只能重啓虛擬機。