ubuntu16.04-server搭建openstack測試環境
由於需要使用JavaEE+Maven搭建openstack4j開發環境並測試,所以順手搭建一個openstack,看到網上有比較簡單的方法,用devstack安裝openstack,考慮到電腦配置還撐得住(我的虛擬機器是60G硬碟+4G記憶體,這個以下配置沒試過)。
1、ubuntu連結地址
##http://101.110.118.70/old-releases.ubuntu.com/releases/14.04.1/ubuntu-14.04.1-server-amd64.iso
https://www.ubuntu.com/download/server/thank-you?country=CN&version=16.04.3&architecture=amd64
2、虛擬機器的配置我就不累述了,以前寫過相應的,有興趣可以找找。
我的配置是60G硬碟+4G記憶體,NAT橋接,為了省事,其實沒有往網路配置裡面寫東西。
(ifconfig -a 檢視 /etc/network/interfaces修改 )
$ sudo vim /etc/network/interfaces
原有內容只有如下兩行:
auto lo
iface lo inet loopback
3、更換apt源為阿里源
vim /etc/apt/sources.list
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
儲存退出執行
#apt-get update
#apt-get upgrade
4、設定時間同步
設定時區:dpkg-reconfigure tzdata
選擇Asia -> 再選擇Shanghai -> OK
同步時間命令:
1、sudo apt-get install ntpdate // 安裝時間同步工具
2、sudo ntpdate cn.pool.ntp.org // 與網路伺服器同步時間
3、date // 檢視時間是否已同步
5、這裡遇到第一個問題,xshell連不上,原因沒有ssh-server,Unbuntu預設只安裝了ssh-client。
dpkg -l | grep ssh ,先檢視下
apt-get install ssh
6、問題二,vi好像不太好用,裝下vim(還有git安裝,我就不寫了)
sudo apt-get remove vim-common
sudo apt-get install vim
7、clone devstack
因為是第二遍做了,所以優化下步驟:
(1)先clone:git clone http://git.trystack.cn/openstack-dev/devstack.git -b stable/pike
(2)建立使用者:devstack/tools/create-stack-user.sh
建立的使用者名稱為stack,自己修改下密碼,使用者目錄在/opt/stack
(3)將clone的devstack目錄移到/opt/stack下
cp -R /home/devstack /opt/stack/
8、注意,上面的devstack目錄是root使用者和使用者組,現在需要建立使用者,並chown.
預設建立完就是stack使用者和stack使用者組
記得要設定密碼和chown -R stack:stack /opt/stack/devstack
在root使用者下給stack使用者授權。編輯/etc/sudoers,
找到這一行 root ALL=(ALL:ALL) ALL,在下面加上一行 stack ALL=(ALL:ALL) ALL。
root@us14:~# vi /etc/sudoers
# User privilege specification
root ALL=(ALL:ALL) ALL
stack ALL=(ALL:ALL) ALL
root@us14:~# chown –R stack:stack /home/devstack
root@us14:~# chown –R stack:stack /opt/stack
9、下來再devstack目錄下,建立local.conf檔案(我目前只搭建一個節點,以後有機會多節點的)
從samples裡面cp local.conf ,然後進行修改
10、為了加快下載速度,在conf檔案中加入國內映象(http://git.trystack.cn/cgit)
# use TryStack git mirror
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=http://git.trystack.cn/git/spice/spice-html5.git
10、從其他大神那邊copy的一些經驗(https://www.cnblogs.com/Allvirus/p/7783962.html)
超時很正常,多搞幾次就好
#cd files/
#wget -c https://github.com/coreos/etcd/releases/download/v3.1.10/etcd-v3.1.10-linux-amd64.tar.gz
#wget -c https://github.com/coreos/etcd/releases/download/v3.1.7/etcd-v3.1.7-linux-amd64.tar.gz
**一次下載不成功請多執行上面命令幾次直到finish
11、./devstack/stack.sh成功
=========================
DevStack Component Timing
=========================
Total runtime 1506
run_process 30
test_with_retry 3
apt-get-update 7
pip_install 89
osc 146
wait_for_service 33
dbsync 21
apt-get 36
=========================
This is your host IP address: 192.168.154.128
This is your host IPv6 address: ::1
Horizon is now available at http://192.168.154.128/dashboard
Keystone is serving at http://192.168.154.128/identity/
The default users are: admin and demo
The password: admin
WARNING:
Using lib/neutron-legacy is deprecated, and it will be removed in the future
Services are running under systemd unit files.
For more information see:
https://docs.openstack.org/devstack/latest/systemd.html
DevStack Version: pike
Change: 8565ea8578c828f55cba14394b2baaca631c5ab0 Backport changes of zuul jobs and definitions to pike 2018-02-19 16:39:30 +0100
OS Version: Ubuntu 16.04 xenial
FAQ:
A、
版本不支援。嗯,果然沒有辣麼順利
B、
/home/devstack/tools/install_pip.sh:89 Download of get-pip.py failed
suod apt-get install python-pip
然後在devstack/tools目錄下,找到install_pip.py,註釋掉install_get_pip這個函式呼叫,再執行./stack.sh