virtualbox+ubuntu 16.04+devstack+openstack 安装教程
阅读原文时间:2021年04月22日阅读:1

本教程是在virtualbox中安装两台ubuntu16.04.4 server虚拟机,通过devstack安装openstack

以下红色为终端输入的命令,蓝色是配置文件需要输入的

我是学习了cloudman老师的教程才会安装的,下面是转载网址:

http://cloudman.cc/

https://mp.weixin.qq.com/s/g-bKZqRFUGXDghIfGJ16_g 视频教程

https://www.cnblogs.com/CloudMan6/p/5357273.html 里面是老师的博客,下面有评论,会讨论一些错误,大家认真看。

安装环境:win10 

 ubuntu16.04.4 server

  笔记本16g内存  i7cpu 

网络为中国电信

 VirtualBox-5.2.8-121009-Win.exe 

 Xshell 5

首先去官网下载virtualbox,我是5.28版本,同时官网上下载拓展程序Oracle_VM_VirtualBox_Extension_Pack-5.2.8-121009 openstack.vbox-extpack   

1.安装Xshell,可以连接终端复制粘贴代码。下面会用到

2.打开vbox,管理---全局设定--扩展那里添加下载的extpack包。

3.安装openstack需要设置好网卡,vbox设置成功了,最后我又去vmware安装,因为网卡不会设置,所以没有安装成功。

原理和操作大家去看cloudman老师的视频,下面我简单介绍。

3.1 首先新建虚拟机,需要安装两个虚拟机,控制节点和计算节点,命名为controller和compute 

点击vbox 新建,写个名字其他参数跟我一样。(控制节点内存最好8g,4g也可以,反正越大越好)

点击创建,进入下一图 (文件写80g),点击创建

创建好的虚拟机上右键,--设置,选择网卡

controller需要设置3个网卡,compute设置2个网卡,compute内存2g,

compute 网卡

然后ok--启动--选择下载的ubuntu镜像,安装。安装过程中会出错,查了下,是因为一开始选择中文,中文界面安装时会报错失败,大家可以先中文安装,看看前面的选项,(因为英文看不大懂),到出错按esc键回去选择英文继续安装即可,英文好的可以一路英文界面安装,其中主机名分别是 devstack-controller和devstack-compute,建立的用户名和密码随意。安装完成后启动ubuntu。

4.进入后输入

ip r

可以查看ip

第一行是网关 192.168.0.1

第二行是192.168.0.0 -----192.168.0.125

第三行 192.168.122.0-----192.168.122.1 linkdown

大家显示出的顺序二三行也许不一样,认准linkdown即可。

首先进入root模式,开启ssh登陆,输入

ssh ren@192.168.0.125                      ren是我自定的用户名,大家换成自己的

输入自己的密码,继续

sudo su               输入密码

passwd              设置root密码,连续输入两次

打开ssh配置文件

vi /etc/ssh/sshd_config

Permitrootlogin 改成yes

保存

输入 重启ssh服务

systemctl restart sshd.service

输入 

exit

exit

两次exit退到初始用户,然后再进入root用户

ssh root@192.168.0.125

查询网关

ip l

可以看到5或者6个网关,之前设置的三个网卡,名字是enp0s3 enp0s8 enp0s9 大家网关名字可能与我不相同,但是出现相近的三个即是。下面设置网络

vi /etc/network/interfaces

设置enp0s3 为静态,address大家自己随意设置,之前我是192.168.0.125 现在设为192.168.0.10 gateway与之前 ip r查询的一样   enp0s8 enp0s9 为自动获取  ;  compute设置为192.168.0.11 其他设置一样

保存 重启

reboot

重启后,

ssh root@192.168.0.10                   注意这里为你设置的address ip

修改主机名
vim /etc/hostname
devstack-controller
vim /etc/hosts
192.168.0.10 devstack-controller
下面是compute的
vim /etc/hostname
devstack-compute
vim /etc/hosts

192.168.0.11 devstack-compute

把官方的apt源换成国内的

vi /etc/apt/sources.list

deb http://mirrors.aliyun.com/ubuntu/ xenialmain 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-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/xenial-backports main restricted universe multiverse

保存  终端输入下面,升级各种

apt-get update

安装完后再安装compute节点 其中vbox网卡两个,配置时ip不一样 其他都与controller一样

安装完后 controller--ip 192.168.0.10  compute--ip 192.168.0.11 互相可以ping通,而且ping baidu.com 也可以。

5. 打开Xshell 新建

输入ip 确定 连接 输入ubuntu用户名 密码 连接上

6.部署openstack  先安装pip

apt install python-pip

apt install -y python-pip

pip install --upgrade pip

下载 devstack 代码,并切换到 stable/ocata 分支

apt-get install git -y

git clone https://git.openstack.org/openstack-dev/devstack -b stable/ocata 视频中是newton,现在不行了,换成ocata版本

安装完 ls 查看一下出现  devstack目录

创建 stack 用户

devstack/tools/create-stack-user.sh

为方便起见,将devstack目录放到/opt/stack下,并设置权限

mv devstack /opt/stack
chown -R stack:stack /opt/stack/devstack

创建国内镜像源

mkdir ~/.pip
vi ~/.pip/pip.conf

[global]

index-url= https://pypi.douban.com/simple

trusted-host =  pypi.douban.com

download_cache= ~/.cache/pip

[install]

use-mirrors= true

mirrors= http://pypi.douban.com/

保存

切换到 stack 用户

su – stack

创建国内镜像源

mkdir ~/.pip
vi ~/.pip/pip.conf

跟上面一样 写入配置文件 保存

pwd

显示当前路径

cd devstack

编写运行配置文件

在 /opt/stack/devstack 目录下,创建 local.conf。

vi local.conf

devstack-controller的

[[local|localrc]]

MULTI_HOST=true

HOST_IP=192.168.0.10 # management & apinetwork

LOGFILE=/opt/stack/logs/stack.sh.log

# Credentials

ADMIN_PASSWORD=admin

MYSQL_PASSWORD=secret

RABBIT_PASSWORD=secret

SERVICE_PASSWORD=secret

SERVICE_TOKEN=abcdefghijklmnopqrstuvwxyz

enable_service placement-api

enable_service placement-client

# enable neutron-ml2-vlan

disable_service n-net

enable_serviceq-svc,q-agt,q-dhcp,q-l3,q-meta,neutron,q-lbaas,q-fwaas,q-vpn

Q_AGENT=linuxbridge

ENABLE_TENANT_VLANS=True

TENANT_VLAN_RANGE=3001:4000

PHYSICAL_NETWORK=default

LOG_COLOR=False

LOGDIR=$DEST/logs

SCREEN_LOGDIR=$LOGDIR/screen

# 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

开始部署

devstack-controller 的devstack目录中执行下面

./stack.sh

会输出各项操作的结果。日志会写到 stack.sh.log 文件。整个过程需要连接Internet,网速慢可能会花较长时间,成功后最后会打印出相关信息。下面即是成功了

安装完成后 controller不要重启  下面部署compute 步骤跟前面一样 只是在 /opt/stack/devstack 目录下, local.conf 不一样

devstack-compute

[[local|localrc]]

MULTI_HOST=true

HOST_IP=192.168.0.11 # management & apinetwork

# Credentials

ADMIN_PASSWORD=admin

MYSQL_PASSWORD=secret

RABBIT_PASSWORD=secret

SERVICE_PASSWORD=secret

SERVICE_TOKEN=abcdefghijklmnopqrstuvwxyz

enable_service placement-api

enable_service placement-client

# Service information

SERVICE_HOST=192.168.0.10

MYSQL_HOST=$SERVICE_HOST

RABBIT_HOST=$SERVICE_HOST

GLANCE_HOSTPORT=$SERVICE_HOST:9292

Q_HOST=$SERVICE_HOST

KEYSTONE_AUTH_HOST=$SERVICE_HOST

KEYSTONE_SERVICE_HOST=$SERVICE_HOST

CEILOMETER_BACKEND=mongodb

DATABASE_TYPE=mysql

ENABLED_SERVICES=n-cpu,q-agt,neutron

Q_AGENT=linuxbridge

ENABLE_TENANT_VLANS=True

TENANT_VLAN_RANGE=3001:4000

PHYSICAL_NETWORK=default

# vnc config

NOVA_VNC_ENABLED=True

NOVNCPROXY_URL="http://$SERVICE_HOST:6080/vnc_auto.html"

VNCSERVER_LISTEN=$HOST_IP

VNCSERVER_PROXYCLIENT_ADDRESS=$VNCSERVER_LISTEN

LOG_COLOR=False

LOGDIR=$DEST/logs

SCREEN_LOGDIR=$LOGDIR/screen

# 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

devstak-compute 上执行命令

./stack.sh

7.compute安装成功后会类似出现controller的ip地址。启动openstack只需要在window浏览器上输入 控制节点ip 192.168.0.10即可看到openstack登陆+密码。后续openstack的测试大家可以看cloudman老师的视频,这里就不展示了。

安装出现的问题:

1.假如安装失败,可以继续执行./stack.sh,如果出错,执行./unstack.sh 后再./stack.sh

2.如果报错如下
device br-ex already exists; can't create bridgewith the same name

则删除已有网桥sudo brctl delbrbr-ex,再次执行./stack.sh

3.如果报错No matching distribution found fordebtcollector===1.19.0
更换pip源为清华大学
[global]
trusted-host =  pypi.tuna.tsinghua.edu.cn

index-url = https://pypi.tuna.tsinghua.edu.cn/simple/

4.部署完controller,不需要重启(重启后需要重新跑./stack.sh不然openstack不会启动),直接部署compute

5.所有都安装完成后,不要重启虚拟机了,重启后openstack不会启动,而且之前的rejoin。sh的重启文件在ocata新版中没有了,启动服务非常麻烦,建议大家弄好快照就一直让它休眠,不要关闭。

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章