程序员人生 网站导航

DevStack 安装 OpenStack 多节点

栏目:服务器时间:2015-03-26 09:48:22

转载请注明: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 功能比较强大,运行也稳定,可以在1个节点上通过1个 answer 文件直接部署多个节点,搭建1套 OpenStack 环境。但是惋惜,在 Ubuntu 上还不支持。

DevStack 支持 Ubuntu、Fedora 等环境,需要在每一个节点上单独履行,合适进行实验。目前常见的教程1般都是讲授 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]] HOST_IP=9.186.100.77 # management network PUBLIC_INTERFACE=eth0 #public network FIXED_RANGE=10.0.100.0/24 #FIXED_NETWORK_SIZE=4096 FLOATING_RANGE=9.186.100.0/24 PUBLIC_NETWORK_GATEWAY=9.186.100.1 MULTI_HOST=1 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,neutron,tempest,heat # OFFLINE=True

计算节点的 local.conf

[[local|localrc]] HOST_IP=9.186.100.88 # management IP FIXED_RANGE=10.0.100.0/24 #FIXED_NETWORK_SIZE=4096 FLOATING_RANGE=9.186.100.0/24 MULTI_HOST=1 LOGFILE=/opt/stack/logs/stack.sh.log # 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=9.186.100.77 RABBIT_HOST=9.186.100.77 GLANCE_HOSTPORT=9.186.100.77:9292 Q_HOST=9.186.100.77 KEYSTONE_AUTH_HOST=9.186.100.77 KEYSTONE_SERVICE_HOST=9.186.100.77 CEILOMETER_BACKEND=mongodb DATABASE_TYPE=mysql ENABLED_SERVICES=n-cpu,n-net,n-api,c-sch,c-api,c-vol # vnc config NOVA_VNC_ENABLED=True NOVNCPROXY_URL="http://9.186.100.77:6080/vnc_auto.html" VNCSERVER_LISTEN=$HOST_IP VNCSERVER_PROXYCLIENT_ADDRESS=$VNCSERVER_LISTEN # OFFLINE=True

履行配置

履行命令。

./stack.sh

会输出各项操作的结果。日志会写到 stack.sh.log 文件。

其它事项

停止 OpenStack 的各个服务(DevStack 默许每一个服务都在1个 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

重新安装,履行以下命令便可。

./unstack.sh ./stack.sh
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐