在部署和使用openstack過程中小伙伴們經常問我關於openstack問題,感謝小伙伴們的信任。其中有很多問題都是重復的,現將一些代表性的問題總結如下:
一、vnc打不開問題
1、檢查controller和所以computer節點的nova.conf 文件vnc選項IP是否為controller的管理IP
# cat /etc/nova/nova.conf | grep “novncproxy_base_url“ 1
2、novncproxy_base_url中盡量寫IP,寫主機名在無dns情況下無法解析導致vnc打不開
二、安裝neutron 提示neutron agent-list 失敗。
Cpu和內存不夠導致,提高硬件配置
三、Ping不通虛擬機?
1、檢查物理鏈路是否正常,網線,交換機是否正常
2、網卡的狀態是否為UP
舉例:
3、neutron綁定的網卡是否為規划的網卡(各個節點都需檢查)
4、neutron服務是否正常
5、路由器接口是否為up
6、網關是否為up
7、虛擬機是否已經正常啟動,且分配到IP
8、創建虛擬機所用的安全組是否允許icmp協議通過?
四、虛擬機獲取不到IP?
1、網絡中有其他的dhcp源干擾
2、neutron所橋接的網卡名稱錯誤,或狀態異常,如網線沒插好,onboot=no
3、neutron服務異常
五、創建雲硬盤失敗
Ntp問題,各個節點時間不同步。
六、創建虛擬機失敗
此類問題比較多,任何一個組件出問題都會導致虛擬機啟動失敗。最好的辦法是掌握虛擬機創建過程中各個組件的調度過程,從日志分析。no valid host was found,這個是個大類,很多錯誤都會顯示這個,需要具體的看日志。
七、安裝cinder報 pvcreate /dev/sdb && vgcreate cinder-volumes /dev/sdb failed. ?
系統中沒有sdb磁盤,cinder是塊存儲服務,需要底端存儲。解決辦法新增一塊磁盤
八、管理網和業務網可以同網段嗎?
盡量做到管理和業務分離,如果IP實在不夠用記得不要沖突
九、官網上Network節點需要3張網卡,其它節點需要兩張網卡,本方案為什么兩塊網卡?
本方案將第一塊和第二塊網卡合並了,如果需要三塊網卡也可合並成一塊網卡
十、創建的虛擬機運行http服務,外部無法訪問網頁?
1、虛擬機的防火牆開啟
2、selinux開啟
3、安全組沒允許80端口通過
十一、重啟controller物理機后整個環境不可用
原因:
在一些老的物理機或手寫的網卡配置文件,重啟物理機網卡都會啟動失敗,而消息隊列和數據庫都是監聽的管理網IP,網卡沒起來導致消息隊列和數據庫啟動失敗,從而導致nova和neutron等一系列的服務啟動失敗。
解決辦法:
通過下列命令查詢那些服務啟動失敗,然后挨個手動啟動。
systemctl –failed
十二、外部可以訪問虛擬機,但ping不通百度?
網絡規划問題
網絡問題排查思路:
1、ping 自己 目的:檢查網卡狀態和配置是否正確
2、ping網關 目的:檢查路由尋址是否正常
3、ping dns 目的:檢查dns是否可達
此類問題不清楚的,建議學習cisco的ccna路由和交換知識
十三、鏡像忘記密碼怎么辦?
1、創建虛擬機時選擇秘鑰對,可從controller上免密碼登錄
2、創建虛擬機時直接修改密碼
參見:http://www.chenshake.com/openstack-mirror-and-password/
十四、dashboard界面總是拋出異常錯誤?
在點擊openstack的dashboard時右上角總是彈出一些錯誤的提示,再次刷新時又不提示
原因:
MYSQL數據庫安裝完成后,默認最大連接數是100,一般流量稍微大一點這個連接數是遠遠不夠的
解決辦法:
1、修改mairadb的配置文件,將最大連接數改為1500
# echo "max_connections=1500" >>/etc/my.cnf.d/mariadb_openstack.cnf 1
2、重啟數據庫
# service mariadb restart 1
十五、如何制作openstack鏡像模板?
參見:http://blog.csdn.net/wylfengyujiancheng/article/details/50468173
Linux模板制作方法類似
十六、后端存儲如何選型?
上圖為官方調查報告,根據公司資金及技術實力選擇。個人比較推薦ceph
十七、在部署計算節點時,腳本不能繼續進行,但沒有報錯
請確保controller節點正常運行且與computer節點網絡正常,因為在computer節點上啟動nova服務時,需要去controller上注冊服務。
十八、消息隊列啟動失敗
檢查/etc/hosts中IP是否正確,如果采用腳本安裝還需檢查installrc和lib/hosts中IP是否正確
十九、數據庫啟動失敗
檢查監聽IP是否正確,如果采用腳本安裝還需檢查installrc和lib/hosts中IP是否正確
如都沒問題,手動卸載數據庫,並刪除庫文件rm -rf /var/lib/mysql/再次安裝
二十、執行source admin-openrc.sh后執行命令報錯
環境中有代理,或者其他環境變量干擾。此問題也和開發人員編程習慣有關,在寫代碼是從不喜歡寫絕對路徑,環境中執行了該程序導致。出現問題是無從查起。
解決辦法:
重啟物理機、或者將admin-openrc.sh內容拷貝出來在命令行中執行一遍
二十一、通過dashboard界面上傳鏡像,創建虛擬機失敗?
由於網絡原因,在傳輸時文件極其容易損壞,建議現將鏡像上傳到后台,通過命令行上傳。
# source /root/admin-openrc.sh # openstack image create "cirros" --file /tmp/cirros-0.3.4-x86_64-disk.img --disk-format qcow2 --container-format bare --public 1 2 3
二十二、如何做到公司不同部門走不同網段網絡?
1、用admin用戶創建兩外出網絡,不同租戶(對應公司部門)創建的虛擬機分配不同的浮動IP網絡
2、也可將admin創建的不同網絡綁定到對應的物理網卡上,方法后續補充
二十三、如何將官網的openstack源同步到本地?
1、 采用reposync,將所有的源都同步下來
2、 參見http://blog.csdn.net/wylfengyujiancheng/article/details/50008325
二十四、Mongodb啟動失敗,如何解決?
監聽的IP是否正確,如果采用腳本安裝還需檢查installrc和lib/hosts中IP是否正確
二十五、如何實現虛擬機動態遷移?
參見:http://blog.csdn.net/wylfengyujiancheng/article/details/50822695
二十六、如何在線拉伸虛擬機大小?
http://blog.csdn.net/wylfengyujiancheng/article/details/50822491
二十七、如何將快照導入到本地?
http://blog.csdn.net/wylfengyujiancheng/article/details/48825207
二十八、cpu、內存和硬盤資源超配
它們默認的超配比為:
• CPU: CONF.cpu_allocation_ratio = 16
• RAM: CONF.ram_allocation_ratio = 1.5
• DISK: CONF.disk_allocation_ratio = 1.0
在生產環境中的利用率建議cpu:vcpu 1:1.5 mem 1:1 disk 1:1
二十九、虛擬機流量全部通過network節點,大規模時如何減輕network的負載
采用dvr,分布式虛擬路由技術
請參見:http://www.sxt.cn/u/756/blog/3168
三十、win7鏡像放到openstack中出 錯誤代碼0X0000005D 這個該如何解決?
將虛擬化類型改為kvm
# cat /etc/nova/nova.conf | grep ^virt_type 1
三十一、安裝neutron時修改網卡失敗
nmcli connection modify ipv4.addresses 192.168.80.253/24 && nmcli connection modify ipv4.method manual && nmcli connection up failed.
請檢查各個節點的各個網卡名稱是否與實際名稱一致,如不一致可用nmtui命令修改
舉例:
不一致
待解決問題:
1、 腳本中有沒有安裝swift組件?
雖然swift是openstack的元老組件,它和ceph比都有自己的優勢和劣勢,但本人比較傾向於ceph,腳本中沒寫swift的安裝腳本,但本地源中包含了swift的rpm包。如有興趣,請小伙伴們補充
https://github.com/wuyeliang/install_openstack
2、 有沒有界面直接調用安裝腳本,os安裝完成后即登錄http界面,通過點點鼠標即可完成部署?
前端技術本人不擅長,如有興趣,請小伙伴們補充
https://github.com/wuyeliang/install_openstack
3、 有沒有卸載腳本?
暫時沒有,如有興趣,請小伙伴們補充
https://github.com/wuyeliang/install_openstack
4、 關於高可用和負載均衡腳本?高可用和負載均衡采取哪種架構?
這個是需要花費不少時間暫時本人沒這個精力寫自動化腳本。如有興趣,請小伙伴們補充。https://github.com/wuyeliang/install_openstack
本人建議采用3controller模式。具體如下
數據庫如下: