tacker/vagrant/devstack
Yasufumi Ogawa fc73097874 Update config in tacker installer
For a limitation of IP address range of hostonly network which was
added in the recent update in VirtualBox [1], allowed only
192.168.56.0/21, the installer is terminated without you give
appropriate IP addresses to your VMs.

Forwarding port `10080` for HTTP is also invalid in security for some
browsers. `20080` is valid for the restriction.

This update is to update default values of IP address and port to be
allowed.

[1] https://www.virtualbox.org/manual/ch06.html#network_hostonly

Closes-Bug: #1980312
Signed-off-by: Yasufumi Ogawa <yasufum.o@gmail.com>
Change-Id: I7fbce874ce2445ea72e627e0ad6309062fac9292
2022-07-07 01:19:48 +00:00
..
group_vars Update config in tacker installer 2022-07-07 01:19:48 +00:00
helper Introduce vagrant for devstack 2022-03-10 19:30:49 +09:00
lib Update config in tacker installer 2022-07-07 01:19:48 +00:00
roles Introduce vagrant for devstack 2022-03-10 19:30:49 +09:00
samples Update config in tacker installer 2022-07-07 01:19:48 +00:00
.gitignore Introduce vagrant for devstack 2022-03-10 19:30:49 +09:00
ansible.cfg Introduce vagrant for devstack 2022-03-10 19:30:49 +09:00
hosts Update config in tacker installer 2022-07-07 01:19:48 +00:00
README.md Update config in tacker installer 2022-07-07 01:19:48 +00:00
site.yaml Introduce vagrant for devstack 2022-03-10 19:30:49 +09:00
Vagrantfile Introduce vagrant for devstack 2022-03-10 19:30:49 +09:00

Devstack Installer for Tacker

What is this

Deployment tool for devstack for testing multi-VM OpenStack environment, consists of vagrant and ansible.

It only supports Ubuntu on VirtualBox currently.

How to use

Requirements

You need to install required software before running this tool. Please follow instructions on official sites for installation.

Before launching your VMs, you should should install plugin vagrant-disksize for expanding size of volume of VM. It is because the default size of box provided from Ubuntu, 10GB or so, is not enough for deploying devstack environment. It's required for expanding the volume size.

$ vagrant plugin install vagrant-disksize

Configure and Fire Up VMs

Before launching VMs with vagrant, configure machines.yml, which defines parameters of each VM you deploy. It should be placed at project root, or failed to run vagrant up. You can use template files in samples directory.

$ cp samples/machines.yml .
$ YOUR_FAVORITE_EDITOR machines.yml

You should take care about private_ips which is used in hosts for ansible-playbook as explained later.

You should confirm you have a SSH public key before you run vagrant. If your key is different from ~/.ssh/id_rsa.pub, update ssh_pub_key in machines.yml.

Run vagrant up after configurations are done. It launches VMs and create a user stack on them.

$ vagrant up

If vagrant up is completed successfully, you are ready to login to VMs as stack user with your SSH public key.

Setup Devstack

This tool provides ansible playbooks for setting up devstack. You should update entries of IP addresses in hosts as you defined private_ips in machines.yml.

There are some parameters in group_vars/all.yml such as password on devstack or optional configurations. You don't need to update it usually.

$ ansible-playbook -i hosts site.yaml

After finished ansible's tasks, you can login to launched VMs with hostname you defined in machines.yml. So, let's login to controller node and OpenStack. You will find that two examples of local.conf are prepared in $HOME/devstack for your environment.

  • local.conf.example
  • local.conf.kubernetes
$ ssh stack@192.168.56.11
$ cd devstack
$ cp local.conf.kubernetes local.conf
$ ./stack.sh

See instruction how to configure local.conf described in DevStack Quick Start.