最近剛上手安裝devstack,碰到一些問題,紀錄下來,失敗的主要問題是下載下傳各種源的網絡問題,選擇合适的源很重要。
關于虛拟機網絡,采用橋接,這樣主控端和虛拟機能互通,還要保證虛拟機能通路外網
關于硬體配置,記憶體4G以上,不然nova服務啟動,會報記憶體配置設定失敗的錯誤
步驟:
1,首先安裝git
sudo apt-get install git
2,擷取devstack源代碼(liberty版本)
git clone https://git.openstack.org/openstack-dev/devstack -b stable/liberty
3,擷取完之後進行一些修改
- 更新ubuntu的源為國内源
重新載入源,檔案路徑:/etc/apt/sources.list
更改内容為國内源,國外的源由于有限制使用起來經常會失敗,提供一下阿裡的源
deb http://mirrors.aliyun.com/ubuntu/ trusty main multiverse restricted universe
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main multiverse restricted universe
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main multiverse restricted universe
deb http://mirrors.aliyuncom/ubuntu/ trusty-proposed universe restricted multiverse main
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main multiverse restricted universe
deb-src http://mirrors.aliyuncom/ubuntu/ trusty-proposed universe restricted multiverse main
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main multiverse restricted universe
将上述内容寫入sources.list然後執行下述指令更新(保險做法将原來的sources.list備份一下,下述指令是清除已安裝的東西然後再更新)
sudo rm -fR /var/lib/apt/lists/*
sudo apt-get clean && sudo apt-get update && sudo apt-get upgrade
- 更改get-pip.sh的源路徑
将devstack/tools/install_pip.sh 的PIP_GET_PIP_URL的變量路徑改為https://coding.net/u/xiaoquqi/p/pip/git/raw/master/contrib/get-pip.py
- 在devstack下增加localrc檔案(新版本名字為local.conf,詳細用法參考官方文檔)
比較重要的檔案( 将HOST_IP改成自己的IP)
DEST=/opt/stack
# SCREEN_LOGDIR=$DEST/logs/screen
HOST_IP=200.21.101.203 # controller ip
MULTI_HOST=True
# LOGFILE=$DEST/logs/stack.sh.log
SERVICE_TOKEN=0210
ADMIN_PASSWORD=0210
MYSQL_PASSWORD=0210
RABBIT_PASSWORD=0210
SERVICE_PASSWORD=0210
#LDAP_PASSWORD=0210
LOCK_PATH=/tmp
# To get a clean install everytime
RECLONE=no
# To enable neutron
enable_service n-net
disable_service q-svc
disable_service q-agt
disable_service q-dhcp
disable_service q-l3
disable_service q-meta
disable_service quantum
# Enable the ceilometer services
disable_service ceilometer-acompute,ceilometer-acentral,ceilometer-collector,ceilometer-api
# Enable Heat
disable_service heat h-api h-eng
- 更換pip源
openstack是python項目 好多依賴都要用pip install 當然要換pip源啦
執行以下指令即可
mkdir ~/.pip
cat << EOF > ~/.pip/pip.conf
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
trusted-host = mirrors.aliyun.com
EOF
- 安裝使用者必須為非root且具有sudo權限的普通使用者(新增名為stack的使用者)
adduser stack
添加stack的sudo權限
在/etc/sudoers 加上下面一行
stack ALL=(ALL) NOPASSWD: ALL
4,一切準備就緒安裝
cd devstack && ./stack.sh
5, 安裝完成會出來資訊,然後登入danshborad就可以玩耍了
碰到問題:
oslo.config子產品導入問題
**keystone-manage pki_setup --keystone-user keystone --keystone-group keystone**
Traceback (most recent call last):
File "/usr/bin/keystone-manage", line 30, in <module>
from keystone import cli
File "/usr/lib/python2.7/site-packages/keystone/cli.py", line 19, in <module>
from oslo.config import cfg
ImportError: No module named oslo.config
安裝一下 oslo.config 子產品就好了