当前位置: > 其它学习 > OpenStack >

使用devstack安装OpenStack 双节点部署

时间:2019-12-22 13:43来源:csdn.net 作者:YAH5006
使用devstack安装OpenStack 双节点部署,IT网未对本文做过实践,仅供参考。

来源:https://blog.csdn.net/qq_41241568/article/details/79646871





本文安装的Pike版OpenStack,之前试过liberty、newton和mitaka、ocata版本都以失败告终,所以百度了一下版本顺序,秉着最新最优的执念,终于,Pike版本安装成功!

一:软硬件准备

    设备:win10电脑

    软件:VMware Workstation Pro

    镜像:ubuntu-16.04.1-desktop-amd64.iso

二:虚拟机配置

    devstack-controller:

        内存:4G               硬盘:80G

        网卡1:NAT网络    网卡2:NAT网络     网卡3:host-only网络

        (VMware中使用桥接网络时虚拟机则不能连接往外,关于后期学习时NAT不知道能不能使用,但是使用NAT能安装成功,因此暂且使用这个配置)

    devstack-compute:

        内存:2G               硬盘:40G

        网卡1:NAT网络    网卡2:host-only网络

三:安装过程

    更新系统的下载源与pip源,我使用的下载源是阿里云的,pip源为豆瓣

    ①更换阿里源

#sudo 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

     退出应用更新:

#sudo apt-get update
#sudo apt-get upgrade

    ②更新时区,图形界面可以直接设置在上海,命令行则需要如下命令:

dpkg-reconfigure tzdata

选择Asia -> 再选择Shanghai -> OK

sudo apt-get install ntpdate // 安装时间同步工具
sudo ntpdate cn.pool.ntp.org // 与网络服务器同步时间
date // 查看时间是否已同步

    ③安装pip

sudo apt-get install python-pip

     pip更换为豆瓣源(在其他版本的使用用清华源没有出错,用豆瓣源出错了,pike版对豆瓣源就很友好,可能因为网络吧...)

#sudo mkdir ~/.pip
#sudo vim ~/.pip/pip.conf

     插入以下内容:

[global]

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

trusted-host = pypi.douban.com

    ④下载devstack

sudo git clone https://github.com/openstack-dev/devstack -b stable/pike

    使用devstack中的文件创建stack用户,默认创建无密码用户

sudo devstack/tools/create-stack-user.sh

    将devstack目录放到/opt/stack中并设置权限

sudo mv devstack /opt/stack

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

    切换到stack用户,使用sudo进入,之后可自己设置用户密码

sudo su - stack

    一样需要给stack用户配置pip源

#sudo mkdir ~/.pip

#sudo vim ~/.pip/pip.conf

 插入以下内容:

[global]

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

trusted-host = pypi.douban.com

    ⑤设置local.conf

    进入devstack,创建local.conf

    以下内容只需要修改Host_IP为自己虚拟机的IP地址,即更换接口为自己虚拟机的网卡

controller


 

[[local|localrc]]
# Define images to be automatically downloaded during the DevStack built process.
DOWNLOAD_DEFAULT_IMAGES=False
IMAGE_URLS="http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img"

# 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/sice-html5.git


# Credentials
DATABASE_PASSWORD=admin
ADMIN_PASSWORD=admin
SERVICE_PASSWORD=admin
RABBIT_PASSWORD=admin


# Enabling Neutron (network) Service

disable_service n-net

enable_service q-svc

enable_service q-agt

enable_service q-dhcp

enable_service q-l3

enable_service q-meta

enable_service q-metering

enable_service neutron

enable_service placement-api

enable_service placement-client


## Neutron options

HOST_IP=192.168.2.85  #自己controller的ip

FLAT_INTERFACE=ens33 #使用controller上的那一块网卡

FIXED_RANGE=10.4.128.0/20

FIXED_NETWORK_SIZE=4096

FLOATING_RANGE=192.168.2.128/25

MULTI_HOST=1

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

controller节点和compute节点除local.conf不同,interfaces设置不同外其余皆一样

如果你只是搭建一个节点可以不用管compute节点的配置

compute

安装Compute时要打开controller,并且保证两台虚拟机之间能ping通,controller虚拟机能和宿主机ping通,否则可能会出现Discovering versions from the identity service failed when creating the password plugin. Attempting to determine version from URL.的错误

[[local|localrc]]

HOST_IP=192.168.150.147 # change this per compute node

FLAT_INTERFACE=ens33

FIXED_RANGE=10.4.128.0/20

FIXED_NETWORK_SIZE=4096

FLOATING_RANGE=192.168.2.128/25

MULTI_HOST=1

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

ADMIN_PASSWORD=admin

DATABASE_PASSWORD=admin

RABBIT_PASSWORD=admin

SERVICE_PASSWORD=admin

DATABASE_TYPE=mysql

SERVICE_HOST=192.168.2.85  #controller节点ip

MYSQL_HOST=$SERVICE_HOST

RABBIT_HOST=$SERVICE_HOST

GLANCE_HOSTPORT=$SERVICE_HOST:9292

ENABLED_SERVICES=n-cpu,q-agt,n-api-meta,c-vol,placement-client,placement-api

NOVA_VNC_ENABLED=True

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

VNCSERVER_LISTEN=$HOST_IP

VNCSERVER_PROXYCLIENT_ADDRESS=$VNCSERVER_LISTEN

保存退出

⑥开始安装

    在devsatck下运行./stack.sh

./stack.sh

之后可能或出现很多错误,但是我安装pike版本中只有pip源和timeout的错误,耐心点多重装几次就好了,没词重装前最好都用下./clean.sh 和./unstack.sh

安装其他版本时出现的错误可以参考我的另一篇博文,多百度多看官方文档,祝你好运。

最后出现如下图案则说明安装成功



controller



compute

只有就可以使用浏览器进入192.168.150.146/dashboard进行实验啦

 

(责任编辑:IT)
------分隔线----------------------------