DevStack 安装 OpenStack 多节点(Juno+Neutron+ML2+VXLAN)

原创 2015年03月06日 15:42:47

转载请注明:http://blog.csdn.net/yeasy/article/details/44100489 

目前安装 OpenStack 常见的方案有 Redhat 的 RDO 和社区的 DevStack

当然,也可以手动安装,可以参考:github.com/ChaimaGhribi/OpenStack-Juno-Installation/blob/master/OpenStack-Juno-Installation.rst

其中,RDO 功能比较强大,运行也稳定,可以在一个节点上通过一个 answer 文件直接部署多个节点,搭建一套 OpenStack 环境。但是可惜,在 Ubuntu 上还不支持。

DevStack 支持 Ubuntu、Fedora 等环境,需要在每个节点上单独执行,适合进行实验。目前常见的教程一般都是讲解 DevStack 单节点安装。本文讲解最新的 Juno 版本在多节点上的安装过程。

网络环境

两台机器,分为控制节点(同时也作为网络节点)和计算节点。

控制节点

eth0: 9.186.100.77/24 作为管理网络(同时也是公共网络)。 eth1: 10.0.100.77/24 作为内部网络接口。

计算节点

eth0: 9.186.100.88/24 作为管理网络(同时也是公共网络)。 eth1: 10.0.100.88/24 作为内部网络接口。

配置 stack 用户

创建 stack 用户

sudo groupadd stack
sudo useradd -g stack -s /bin/bash -d /opt/stack -m stack

添加 stack 用户权限。

sudo echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers

切换到 stack 用户

sudo su - stack

下载代码

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

sudo apt-get install git -y 
git clone https://git.openstack.org/openstack-dev/devstack -b stable/juno

编写运行配置文件

在 devstack 根目录下,编写 local.conf。

控制节点的 local.conf

[[local|localrc]]

MULTI_HOST=true
HOST_IP=9.186.100.77 # management network

FIXED_RANGE=10.0.0.0/24 #tenant private network
NETWORK_GATEWAY=10.0.0.1
#FIXED_NETWORK_SIZE=4096

PUBLIC_INTERFACE=eth0  #public network
FLOATING_RANGE=9.186.100.128/24
PUBLIC_NETWORK_GATEWAY=9.186.100.1

TUNNEL_ENDPOINT_IP=10.0.100.77 # data network endpoint for vxlan

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

# Credentials
ADMIN_PASSWORD=admin
MYSQL_PASSWORD=secret
RABBIT_PASSWORD=secret
SERVICE_PASSWORD=secret
SERVICE_TOKEN=abcdefghijklmnopqrstuvwxyz

# enable neutron-ml2-vxlan
disable_service n-net
enable_service q-svc,q-agt,q-dhcp,q-l3,q-meta,q-metering,q-lbaas,q-fwaas,q-vpn,neutron,tempest,heat

#OFFLINE=True

LOG_COLOR=False
LOGDIR=$DEST/logs
SCREEN_LOGDIR=$LOGDIR/screen

计算节点的 local.conf

[[local|localrc]]
MULTI_HOST=true

HOST_IP=9.186.100.88 # management network

FIXED_RANGE=10.0.0.0/24 # tenant private network
NETWORK_GATEWAY=10.0.0.1
#FIXED_NETWORK_SIZE=4096

TUNNEL_ENDPOINT_IP=10.0.100.88 # data network endpoint for vxlan

# Credentials
ADMIN_PASSWORD=admin
MYSQL_PASSWORD=secret
RABBIT_PASSWORD=secret
SERVICE_PASSWORD=secret
SERVICE_TOKEN=abcdefghijklmnopqrstuvwxyz

# Service information
SERVICE_HOST=9.186.100.77
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

# vnc config
NOVA_VNC_ENABLED=True
NOVNCPROXY_URL="http://$SERVICE_HOST:6080/vnc_auto.html"
VNCSERVER_LISTEN=$HOST_IP
VNCSERVER_PROXYCLIENT_ADDRESS=$VNCSERVER_LISTEN

#OFFLINE=True

LOG_COLOR=False
LOGDIR=$DEST/logs
SCREEN_LOGDIR=$LOGDIR/screen
#LOGFILE=/opt/stack/logs/stack.sh.log

执行配置

执行命令。

./stack.sh

会输出各项操作的结果。日志会写到 stack.sh.log 文件。成功后最后会打印出相关信息。

控制节点上

Horizon is now available at http://9.186.100.77/
Keystone is serving at http://9.186.100.77:5000/v2.0/
Examples on using novaclient command line is in exercise.sh
The default users are: admin and demo
The password: admin
This is your host ip: 9.186.100.77

执行成功后,在控制节点上,将物理网卡 eth0 绑定到 br-ex 网桥上。

sudo ifconfig eth0 0.0.0.0; sudo ovs-vsctl add-port br-ex eth0; sudo ifconfig br-ex 9.186.100.77/24; sudo route add default gw 9.186.100.1

其它事项

停止服务

停止 OpenStack 的各个服务(DevStack 默认每个服务都在一个 screen 中以进程方式运行,可以通过 screen -x stack 进入查看)。

./unstack.sh

清除安装。

./clean.sh

手动清除

有时候有些文件可能清除不干净,手动执行

sudo rm -rf /etc/libvirt/qemu/inst*
sudo virsh list | grep inst | awk '{print $1}' | xargs -n1 virsh destroy

依赖版本

安装过程中可能会报某些包版本不满足的问题,手动安装后。

例如报 six 包版本过低。

sudo pip install six --upgrade

screen 操作

ctrl+a+" 显示 session 列表。 ctrl+a+d 挂起到后台。

Devstack多节点部署实验

本文为博主翻译文章,转载请注明出处Bob Hou: http://blog.csdn.net/minxihou 这是个在多物理服务器上部署openstack例子:1 先决条件Linux&网络1.1 ...

使用devstack部署多节点openstack

在使用openstack环境的过程中,时常会根据服务需求调整部署的服务。 这就涉及到添加新的节点到原有的openstack环境中。 大家知道devstack一般用来部署All-In-One...

devstack搭建双节点openstack环境

1.该教程使用nova-network,而不使用neutron。 2.两个节点首先要可以无密码登录,即直接ssh上去。具体方法就是互相将本机的公钥粘贴到对方的~/.ssh/authorized_ke...

Devstack 多节点自动化部署

本文为minxihou的翻译文章,转载请注明出处Bob Hou: http://blog.csdn.net/minxihouJmilkFan:minxihou的技术博文方向是 算法&Openstack...
  • Jmilk
  • Jmilk
  • 2016年07月17日 22:03
  • 4106

openstack多节点部署 采用devstack ubuntu11.10 nova多计算结点

部署环境介绍   控制节点:node79  192.168.136.79 计算节点:node78  192.168.136.78 每台机器均为HP Proliant 双网卡,其中eth0为公...

DevStack 部署OpenStack

环境说明 我使用的环境是CentOS7.3 1. 更改CnetOS源1.1备份,下载 进入yum源配置文件所在文件夹/etc/yum.repos.d/CentOS-Base.repo, ...
  • Rain_JN
  • Rain_JN
  • 2017年10月29日 18:34
  • 174

devstack配置说明手册

1.配置通过devstack配置不同功能的openstack是通过修改local.conf配置文件来实现的。local.conf文件是一个可修改的INI格式文件,它通过在配置文件中对元数据包头的信息修...

ubuntu使用python setup.py install出现No module named setuptools

缺少setuptools模块。 安装setuptools: wget “https://bitbucket.org/pypa/setuptools/get/default.tar.gz#egg=s...
  • xiuduyi
  • xiuduyi
  • 2015年03月24日 15:51
  • 1714

Fuel 多台物理机组成单控制节点

目标:3台物理机组成单控制节点openstack 作者:BCEC大马哥 Fuel master IPMI login: http://10.255.2.101 admin/12345678 Fue...

centos6.5通过devstack安装openstack juno

提示没有python-mox,下载安装mox:http://rpm.pbone.net/index.php3/stat/4/idpl/15288633/dir/redhat_el_6/com/pyth...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DevStack 安装 OpenStack 多节点(Juno+Neutron+ML2+VXLAN)
举报原因:
原因补充:

(最多只允许输入30个字)