1、問題現象
創建完虛擬機以后,通過nova get-vnc-console命令,獲取虛機的vnc連接地址,在瀏覽器中打開該連接,報1006錯誤
2、vnc的原理圖

3、定位分析
1)分別在控制節點和計算節點上檢查nova.conf的配置文件是否有誤
2)在控制節點上檢查openstack-nova-api,openstack-nova-consoleaut,openstack-nova-novncproxy服務是否正常
3)在計算節點上檢查openstack-nova-compute服務是否正常
對這三個方向的可能錯誤進行排查,發現,這三個方向的內容都是正常,無報錯信息,在控制節點上,tail -f 的方式,動態查看,vnc 訪問時的報錯信息,發現有如下內容:
INFO nova.console.websocketproxy [req-a9ef9047-7b5b-4251-b2c3-3de8fa2db7d1 - - - - -] handler exception: [Errno 113] EHOSTUNREACH,懷疑是iptables導致的
iptables -n -v -L |grep 5900命令行,過濾vnc的端口,發現,沒有5900的過濾,添加vnc的rule,
iptables -I INPUT -p tcp -m multiport --ports 5900:6100 -m comment --comment "vnc ports" -j ACCEPT,重新在瀏覽器上vnc訪問虛機,發現可以訪問了
