All Projects → OpenStackCookbook → vagrant-openstack

OpenStackCookbook / vagrant-openstack

Licence: other
Vagrant OpenStack-Ansible Environment used by OpenStack Cloud Computing Cookbook 4th Edition

Programming Languages

shell
77523 projects
powershell
5483 projects

Projects that are alternatives of or similar to vagrant-openstack

Chef Bcpc
Bloomberg Clustered Private Cloud distribution
Stars: ✭ 205 (+355.56%)
Mutual labels:  vagrant, openstack
kubernetes-dev-stack
Automation of Kubernetes 1.6.0.alpha3 on Centos 7.3 (kernel 4.9.5, docker 1.13.1, flannel 0.7.0)
Stars: ✭ 15 (-66.67%)
Mutual labels:  vagrant, openstack
Vagrant Openstack Provider
Use Vagrant to manage OpenStack Cloud instances.
Stars: ✭ 229 (+408.89%)
Mutual labels:  vagrant, openstack
halcyon-vagrant-kubernetes
Vagrant deployment mechanism for halcyon-kubernetes.
Stars: ✭ 12 (-73.33%)
Mutual labels:  vagrant, openstack
upstream-institute-virtual-environment
A Vagrant-based image creator for OpenStack Upstream Training sessions
Stars: ✭ 18 (-60%)
Mutual labels:  vagrant, openstack
geecp
Gee Control Panel,全面开源,符合中国市场习惯的企业级产品计费系统。
Stars: ✭ 25 (-44.44%)
Mutual labels:  openstack
vebs
Reusable Bash provisioning scripts for Vagrant (or Ubuntu 14.04) environments.
Stars: ✭ 13 (-71.11%)
Mutual labels:  vagrant
nustuff
Useful scripting and Linux configuration examples
Stars: ✭ 39 (-13.33%)
Mutual labels:  vagrant
paas-templates
Bosh, CFAR, CFCR and OSB services templates for use with COA (cf-ops-automation) framework
Stars: ✭ 16 (-64.44%)
Mutual labels:  openstack
smartserver
SmartHome Server deployment setup
Stars: ✭ 14 (-68.89%)
Mutual labels:  vagrant
WEB CodeSquare AmongUs
군 복무중인 개발자를 위한 국방망용 통합 개발 플랫폼
Stars: ✭ 42 (-6.67%)
Mutual labels:  openstack
learn-ansible-and-jenkins-in-30-days
Ansible + Jenkins in 30 days tutorial.
Stars: ✭ 35 (-22.22%)
Mutual labels:  vagrant
packer-FreeBSD
Build a FreeBSD VM for Vagrant using packer
Stars: ✭ 23 (-48.89%)
Mutual labels:  vagrant
kubeadm-vagrant
Setup Kubernetes Cluster with Kubeadm and Vagrant
Stars: ✭ 49 (+8.89%)
Mutual labels:  vagrant
packer-kali linux
This is a repository that will be used to help create a process of a new kali vagrant box for hashicorp each week.
Stars: ✭ 36 (-20%)
Mutual labels:  vagrant
k8s0
Another minimal kubernetes with ansible
Stars: ✭ 23 (-48.89%)
Mutual labels:  vagrant
micro-service-practice
OpenStack+Docker+RestAPI+OAuth/HMAC+RabbitMQ/ZMQ+OpenResty/HAProxy/Nginx/APIGateway+Bootstrap/AngularJS+Ansible+K8S/Mesos/Marathon构建/探索微服务最佳实践。
Stars: ✭ 25 (-44.44%)
Mutual labels:  openstack
opnsense-starterkit
Try opnsense, build opnsense images or start development
Stars: ✭ 18 (-60%)
Mutual labels:  vagrant
arch-ansible
An Ansible playbook to install Arch Linux
Stars: ✭ 33 (-26.67%)
Mutual labels:  vagrant
acquia-cloud-vm
VirtualBox/Vagrant-based VM to closely match Acquia Cloud environment.
Stars: ✭ 20 (-55.56%)
Mutual labels:  vagrant

vagrant-openstack (Latest Master: Stein)

Vagrant environment that uses OpenStack Ansible for deploying OpenStack.
Contributors:

  • Kevin Jackson (@itarchitectkev)
  • Cody Bunch (@bunchc)
  • James Denton (@jimmdenton)

Additional Contributors:

  • Wojciech Sciesinski (@ITpraktyk)
  • Geoff Higginbottom (@the_cloudguru)

Requirements

Instructions

git clone https://github.com/OpenStackCookbook/vagrant-openstack.git
cd vagrant-openstack
vagrant up

Versions

Time to deploy: 1 - 2 hours.

Horizon interface will be @ https://192.168.100.10/

Details of access can be found in the controller-01 utility container:

./get_openrc.sh

Or manually

vagrant ssh controller-01
sudo -i
lxc-attach -n $(lxc-ls -f | awk '/utility/ {print $1}')
cat openrc

Troubleshooting

The OpenStack-Ansible playbooks output to the following files:

  • setup-hosts.log
  • setup-infrastructure.log
  • setup-openstack.log

In a seperate terminal execute the following exactly as stated; ignoring the warning about the files not existing (yet):

tail -F setup-hosts.log setup-infrastructure.log setup-openstack.log

This will produce the Ansible output that would otherwise be hidden by Vagrant

Environment

Deploys 3 machines:

controller-01 (2vCPU, 6Gb Ram)
compute-01 (1vCPU, 4Gb Ram)
openstack-client (1vCPU, 1Gb Ram)

Networking

eth0 - nat (used by VMware/VirtualBox)
eth1 - br-mgmt (Container) 172.29.236.0/24
eth2 - br-vlan (Neutron VLAN network) 0.0.0.0/0
eth3 - host / API 192.168.100.0/24
eth4 - br-vxlan (Neutron VXLAN Tunnel network) 172.29.240.0/24

Note: check your VirtualBox/Fusion/Workstation networking and remove any conflicts.
Any amendments are done in the file called Vagrantfile:

box.vm.network :private_network, ip: "172.29.236.#{ip_start+i}", :netmask => "255.255.255.0"
box.vm.network :private_network, ip: "10.10.0.#{ip_start+i}", :netmask => "255.255.255.0"
box.vm.network :private_network, ip: "192.168.100.#{ip_start+i}", :netmask => "255.255.255.0"
box.vm.network :private_network, ip: "172.29.240.#{ip_start+i}", :netmask => "255.255.255.0

Demo Script

Review the script lab_environment_setup.sh file and edit to suit. It's a basic shell script that will:

  • Upload a Cirros or Xenial Image if they exist in your current working directory (/vagrant as seen by guests)
  • Create a couple of networks: private network; public network on 192.168.100.0/24 (eth3 from above)
  • Upload your vagrant ssh key
  • Modify the example cookbook Heat template to match the example resources loaded

The openrc OpenStack credentials have been put into a file called /vagrant/openrc (which is 'openrc' from the directory you launched vagrant up):
Now load some images into OpenStack using the following script:

./load_images.sh

Now access the openstack-client VM:

vagrant ssh openstack-client

Now run the following commands:

. /vagrant/openrc        # Source the credentials
/vagrant/lab_environment_setup.sh
openstack stack create -t /vagrant/cookbook.yaml -e /vagrant/cookbook-env.yaml myStack

Resuming a suspended lab

The containers start in a random order following a VM resume, so this dirty hack will reboot the API service containers for you so you can get back to working in your lab again:

vagrant reload
./resume_environment.sh
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].