undercloud虚拟环境部署


安装undercloud VM

以下操作在物理机执行:

1. 添加Newton的repo

需要有这些repository

  • CentOS Base
  • CentOS EPEL
  • Openstack repository
  • Ceph jewel repository

内网安装

我们默认使用UniedStack的内部源:

  1. [openstack-newton]
  2. name=openstack-newton
  3. baseurl=http://tripleo.ustack.com/repo/openstack-newton/
  4. enabled=1
  5. gpgcheck=0
  6. priority=1

添加内网解析

  1. 10.0.100.250 tripleo.ustack.com

公网安装:

  1. curl http://mirrors.aliyun.com/repo/Centos-7.repo > /etc/yum.repos.d/Centos-7.repo
  2. curl http://mirrors.aliyun.com/repo/epel-7.repo > /etc/yum.repos.d/epel-7.repo
  3. wget http://mirror.centos.org/centos/7/cloud/x86_64/openstack-newton/centos-release-openstack-newton-1-1.el7.noarch.rpm
  4. yum install centos-release-openstack-newton-1-1.el7.noarch.rpm

2. 创建stack用户

  1. # useradd stack
  2. # echo "stack ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/stack
  3. #修改stack 用户的密码
  4. $ passwd stack

切换到stack用户下进行一下操作

  1. su stack

3. 安装yum-plugin-priorites

  1. sudo yum -y install yum-plugin-priorities

4. 安装 TripleO CLI

  1. sudo yum install -y python-tripleoclient

5. 通过环境变量定义安装参数

  1. #指定undercloud vm 使用centos7
  2. export NODE_DIST=centos7
  3. #指定有多少个overcloud vm,以及他们的配置
  4. export NODE_COUNT=6
  5. export NODE_CPU=2
  6. export NODE_MEM=6144
  7. export NODE_DISK=40
  8. #undercloud的配置
  9. export UNDERCLOUD_NODE_CPU=4
  10. export UNDERCLOUD_NODE_MEM=8192
  11. export UNDERCLOUD_NODE_DISK=30
  12. #指定undercloud 虚拟机的模板,这个是镜像的目录
  13. export DIB_LOCAL_IMAGE=rhel-guest-image-7.1-20150224.0.x86_64.qcow2
  14. # 需要创建哪几个网桥
  15. export TESTENV_ARGS="--baremetal-bridge-names 'brbm brbm1 brbm2'"
  16. # (可选)指定使用哪个virt pool
  17. export LIBVIRT_VOL_POOL=tripleo
  18. export LIBVIRT_VOL_POOL_TARGET=/home/vm_storage_pool

6. 安装undercloud vm

这一步安装的并不是undercloud,这里安装的仅仅是运行undercloud的虚拟机。运行安装命令时,我们需要建立一个普通用户,用以运行安装undercloud。

切换到这个普通用户下面开始安装:

  1. $ su - stack
  2. $ instack-virt-setup

ssh 进入undercloud os

  1. $ ssh root@instack

部署undercloud openstack

以下步骤在undercloud vm 中执行

1. 安装TripleOClient

  1. $ su - stack
  2. $ sudo yum -y install yum-plugin-priorities
  3. $ sudo yum install -y python-tripleoclient

2. 编辑undercloud 配置文件

创建undercloud配置文件,并修改里面的配置。

  1. $ cp /usr/share/instack-undercloud/undercloud.conf.sample ~/undercloud.conf

然后去修改我们的配置

  1. $ vim ~/undercloud.conf
  2. [DEFAULT]
  3. local_ip = 192.0.2.1/24
  4. network_gateway = 192.0.2.1
  5. undercloud_public_vip = 192.0.2.2
  6. undercloud_admin_vip = 192.0.2.3
  7. local_interface = eth0 # pxe装机的网桥,必须和你的overcloud的pxe网卡在同一个vlan或者说同一个桥下面
  8. network_cidr = 192.0.2.0/24
  9. masquerade_network = 192.0.2.0/24
  10. dhcp_start = 192.0.2.5
  11. dhcp_end = 192.0.2.24
  12. inspection_interface = br-ctlplane
  13. inspection_iprange = 192.0.2.100,192.0.2.120
  14. inspection_extras = true
  15. undercloud_debug = true
  16. [auth]

3. 部署undercloud

  1. $ openstack undercloud install