環境說明
環境是Centos7+VirtualBox.使用三台虛擬機,一台作為控制器,一台作為Cinder存儲,一台用於計算節點。
平台及鏡像
Virtual Box + Centos7 鏡像建立 三個VM.
網絡環境:
1、controller: hostonly網卡+nat網卡+橋接網卡
2、compute: hostonly網卡+nat網卡+橋接網卡
3、cinder: hostonly網卡+nat網卡+橋接網卡
nat網卡用於上網(每個節點都是10.0.2.15。。。),橋接網卡是學校的dhcp服務器分配的ip,需要校園網認證,故只用於節點的地址綁定,hostonly網卡用於創建虛擬機時為虛擬機指定網絡地址分配以及網關(如果用橋接網卡分配的ip,會導致compute節點網絡down掉,不知道為啥)。
問題1:安裝完成之后,顯示的狀態為ERROR。
錯誤信息: ERROR state.: NoValidHost_Remote
2019-12-26 22:25:44.334 16815 WARNING nova.scheduler.utils [req-1d474ac4-0797-4422-91a8-ee3350fe1e7e 329adafcec65431fbe4486e9f8980f3d c37a78a544534cf7a10b4f5cac49ec61 - default default] [instance: 0adf4814-74dd-495e-a26d-3a20f78ed59d] Setting instance to ERROR state.: NoValidHost_Remote: \u627e\u4e0d\u5230\u6709\u6548\u4e3b\u673a\uff0c\u539f\u56e0\u662f \u3002
跟着博客做完出現ERROR,首先進行各種檢查,期間又發現了其他的一些錯誤(比如主機的cinder服務沒有安裝以及各個主機之間時間未同步),解決還是折騰了挺久的,最后還有問題是由於virtual box默認的vcpu是1,而我跟着博客做的話直接建立的flavor類型的vcpu是4,所以報錯找不到合法的主機。
解決方法
創建vcpu為1,然后內存硬盤啥的也盡量小點。
查看資源的命令:
openstack hypervisor stats show
問題2:
Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 1863, in _do_build_and_run_instance filter_properties, request_spec)
File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2141, in _build_and_run_instance bdms=block_device_mapping) File "/usr/lib/python2.7/site-
packages/nova/rpc.py", line 225, in wrapped return f(*args, **kwargs) File "/usr/lib/python2.7/site-packages/nova/compute/utils.py", line 424, in notify_about_instance_creat
fault, priority = _get_fault_and_priority_from_exc(exception) File "/usr/lib/python2.7/site-packages/nova/compute/utils.py", line 372, in _get_fault_and_priority_from_exc
exception) File "/usr/lib/python2.7/site-packages/nova/notifications/objects/exception.py", line 52, in from_exception exception_message=six.text_type(fault))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 0: ordinal not in range(128)
問題2解決
以上錯誤經過百度,有建議說是字符編碼,也有建議說是沒有打開虛擬化,故先嘗試了修改__init__.py文件,但是沒有作用。
之后打開了virtual box的虛擬化功能,創建實例成功。
virtual box中打開支持虛擬化:
創建成功: