nova compute vmware #37

  • By james-page
  • Latest version (#37)
  • trusty
  • Stable
  • Edge

Description

OpenStack Compute, codenamed Nova, is a cloud computing fabric controller. In
addition to its "native" API (the OpenStack API), it also supports the Amazon
EC2 API.
.
This charm supports integration of VMware vSphere resources into OpenStack.


VMware vSphere integration for Nova Compute

Overview

This charm provides VMware vSphere integration for Nova Compute, allowing you to run instances on a VMware vSphere cluster managed by vCenter.

NOTE: This charm only supports deployment with >= OpenStack Icehouse, on Ubuntu 12.04 or >= 14.04.

Configuration

The nova-compute-vmware charm has mandatory configuration to support access to the vCenter server managing the vSphere deployment:

nova-compute-vmware:
    host-ip: myvcenter.vsphere
    host-username: accessusername
    host-password: accesspassword
    cluster-name: mycluster

A single nova-compute-vmware charm can also manage multiple clusters within a single vCenter server:

    cluster-name: "az1 az2"

Usage

The nova-compute-vmware charm is used in a similar way to the nova-compute charm; it is deployed with nova-cloud-controller, glance, keystone, mysql, rabbitmq-server and cinder as in a standard OpenStack cloud:

juju deploy --config config.yaml nova-compute-vmware
juju add-relation nova-compute-vmware rabbitmq-server
juju add-relation nova-compute-vmware glance
juju add-relation nova-compute-vmware mysql
juju add-relation nova-compute-vmware nova-cloud-controller

The nova-compute-vmware charm supports two networking options; Nova Network with FlatDHCPManager and Neutron with the VMware NSX plugin.

NOTE: the relation to mysql (or postgresql) is only required when using Nova Network FlatDHCPManager.

Networking

Nova Network

This network option configuration is supplied via the nova-cloud-controller charm:

nova-cloud-controller:
    network-manager: FlatDHCPManager

When using FlatDHCPManager, the unit running the nova-compute-vmware charm must have a second network port attached to the 'flat-network-bridge' as specified in configuration and configured in vSphere - this defaults to br100. Private and public network creation should be completed as normal for a Nova Network managed cloud.

Neutron NSX

This network option configuration is supplied via the nova-cloud-controller charm:

nova-cloud-controller:
    network-manager: Neutron
    quantum-plugin: nsx

Users of NSX should have already manually deployed the various NSX appliances and configured a transport zone with appropriate gateway services for access to instances. In addition, each ESXi hypervisor within the vSphere deployment must be configured with the NSX OVS vApp (for vSphere < 5.5) or the NSX vSwitch (for vSphere >= 5.5). For full details refer to the NSX User Guide documentation.

Details of the NSX controller nodes, access credentials, transport zone and l3 gateway service configuration also needs to be supplied via the nova-cloud-controller charm.

Configuration

vlan-interface
(string) VMware ESXi ethernet adapter name for nova-network VLANManager.
vmnic0
openstack-origin
(string) Repository from which to install. May be one of the following: distro (default), ppa:somecustom/ppa, a deb url sources entry, or a supported Cloud Archive release pocket. Supported Cloud Archive sources include: cloud:precise-folsom, cloud:precise-folsom/updates, cloud:precise-folsom/staging, cloud:precise-folsom/proposed. Note that updating this setting to a source that is known to provide a later version of OpenStack will trigger a software upgrade.
distro
verbose
(boolean) Enable/disable verbose level logging.
host-username
(string) Username for authenticating with VMware VC server.
database
(string) Database name
nova
config-flags
(string) Comma separated list of key=value config flags to be set in nova.conf.
integration-bridge
(string) VMware integration bridge for Neutron networking with VMware NSX.
br-int
nagios_context
(string) Used by the nrpe-external-master subordinate charm. A string that will be prepended to instance name to set the host name in nagios. So for instance the hostname would be something like: juju-myservice-0 If you're running multiple environments with the same services in them this allows you to differentiate between them.
juju
host-password
(string) Password for authenticating with VMware VC server.
rabbit-vhost
(string) Rabbitmq vhost
openstack
flat-network-bridge
(string) FlatDHCP networking bridge. This value needs to match the name of the port group that exists in the ESXi networking configuration. To be used with nova-network's FlatDHCPManager.
br100
cluster-name
(string) VMware Cluster name. Multiple clusters may be managed - space delimited.
rabbit-user
(string) Username used to access rabbitmq queue
nova
debug
(boolean) Enable/disable debug level logging.
host-ip
(string) IP address for connecting to VMware VC server.
database-user
(string) Username for database access
nova
use-syslog
(boolean) By default, all services will log into their corresponding log files. Setting this to True will force all services to log to the syslog.