Openstack Essex VMware Install

mikeyp-dell edited this page Sep 20, 2012 · 37 revisions
Clone this wiki locally

Openstack Essex VMware Install

Objective

This page is designed to help users who want to run a complete OpenStack environment in a virtualized environment (VMware Workstatation 8 target) for pilot, testing or development.

** THIS CONFIGURATION IS PRELIMINARY! **

Please update as needed!

Watch the Crowbar Overview video and Essex Install video

New Video showing setup: http://www.youtube.com/watch?v=JTrtVU0f9ek

Special VMWare config needed

The virtual machines that OpenStack is being deployed to need to have the setting

vcpu.hotadd = FALSE

added to their configuration files (*.vmx) Without this setting, libvirt will hang. You can do this with a text editor. This change should be made before PXE booting them.

Network Configuration for VMs that are host addressable and have Internet access

The following steps MUST be run before you install Crowbar.

Information you need from your system:

VMware NAT Gateway: 192.168.[subnet].1
VMware NAT DHCP Range: 192.168.[subnet].128 - 255
Host IP on NAT network: 192.168.[subnet].2
configuration network.json key default value updated value comments
Network Mode attributes\network\mode single dual determines the conduit map
Public Network vlan attributes\networks\public\vlan true false turn off vlan for public
Public Network subnet attributes\networks\public\subnet 192.168.122.0 192.168.[subnet].0 move to NAT
Public Network broadcast attributes\networks\public\broadcast 192.168.122.255 192.168.[subnet].255 move to NAT
Public Network router(gateway) attributes\networks\public\router 192.168.122.2 192.168.[subnet].1 move to NAT
Public Network host attributes\networks\public\ranges\host { "start": "192.168.122.3", "end": "192.168.122.49" }, { "start": "192.168.[subnet].3", "end": "192.168.[subnet].25" }, Lowest free block from NAT
Public Network dhcp attributes\networks\public\ranges\dhcp { "start": "192.168.122.50", "end": "192.168.122.127" }, { "start": "192.168.[subnet].26", "end": "192.168.[subnet].49" }, move to NAT
Nova Floating vlan attributes\networks\nova_floating\vlan true false all NAT to route traffic
Nova Floating subnet attributes\networks\nova_floating\subet 192.168.122.0 192.168.[subnet].0 move to NAT
Nova Floating broadcast attributes\networks\nova_floating\broadcast 192.168.122.255 192.168.[subnet].255 move to NAT
Nova Floating host attributes\networks\nova_floating\ranges\host { "start": "192.168.122.3", "end": "192.168.122.49" }, { "start": "192.168.[subnet].3", "end": "192.168.[subnet].25" }, Lowest free block from NAT
Nova Floating dhcp attributes\networks\nova_floating\ranges\dhcp { "start": "192.168.122.50", "end": "192.168.122.127" }, { "start": "192.168.[subnet].26", "end": "192.168.[subnet].49" }, move to NAT

The new configuration will have the following blocks defined from the NAT subnet:

.1 = NAT router
.2 = Host IP
.3-.25 = Available Static Host IPs for Crowbar
.26-.49 = Public DHCP addresses (not used)
.50-64 = unused range
.65-.126 = Nova Floating IP Allocation
.127 = Broadcast

The following configuration is required for host & outbound access from the VMs.

Prep for Installation

  1. Open VMware Virtual Network Editor and record values:
  2. Record the subnet for this environment E.g. 192.168.47.0/24
  3. Record the gateway address for this NAT, it is under the NAT settings E.g. 192.168.47.1
  4. Record the DHCP range used by the NAT, it is under the DHCP settings. E.g.: 192.168.47.128-254
  5. Record the other nodes that are static on the NAT network. This can be seen by looking vmnetX (e.g. vmnet8) My host system has a static IP on this network. My host is: 192.168.47.2
  6. Make sure that all VMs have at least two interfaces
  7. First interface is a host-only network
  8. Second interface is the NAT network

Install the admin node VM.

  1. Boot from the ISO and allow it to install the OS and basics.

Change the Crowbar Network Configuration by editing bc-template-network.json

  1. Log in to your new Crowbar Admin and get to root access
  2. Run: cd /opt/dell/barclamps/network/chef/data_bags/crowbar
  3. Run: cp bc-template-network.json /root/network.json.backup

network.json - general

  1. Change the network node from single to dual – about line 7

network.json - public network

  1. Edit the public network stanza – line 146
  2. Turn off vlans: use_vlan => false – line 149
  3. Change subnet to the values from above -> 192.168.47.0
  4. Change mask to the values from above -> 255.255.255.0
  5. Change broadcast to figured out value from the two above -> 192.168.47.255
  6. Change Router to the value from 1.b -> 192.168.47.1
  7. Change the range for hosts to not overlap with the NAT DHCP range, but leave a hole for floating
Current default range is 2-49. Change it to not include the statics. 
A reasonable setup would be 3-25  
E.g. start => 192.168.47.3 end => 192.168.47.25
  1. Change the range for dhcp to not overlap with the NAT DHCP range, but leave a hole for floating
Current default range is 50-127 Change it not include the statics. 
A reasonable setup would be 26-49

network.json - nova_floating

  1. Edit the nova_floating network – line 176
  2. Turn off vlans: use_vlan => false
  3. nova_floating is a subnet mask based subset of the public network.
The default uses the 3rd quarter but that overlaps with the NAT default. 
Change the network to the 2nd quarter if you followed the suggestions above. 
Subnet needs to be the 64. E.g 192.168.47.64
Netmask needs to be: 255.255.255.192 
Broadcast needs to be the 127 address: 192.168.47.127 
Host range need to be 65-126. E.g. start => 192.168.47.65 end end => 192.168.47.126

network.json - done

  1. Save and close the file

Complete the Crowbar Admin Installation

  1. Run: cd /tftpboot/ubuntu_dvd/extra
  2. Run: ./install (fqdn of admin node) This takes a long time. Use: screen -r to watch progress.
  3. Run: cd /opt/dell/bin
  4. Run: crowbar network allocate_ip default (fqdn of admin node) public host 192.168.47.10 -U crowbar -P crowbar
 Address allows you to force the ip for the admin node. I used the 10 address to match the admin 10 address
  1. Run: chef-client
  2. Deploy applications like normal.