Home > Blogs > OpenStack Blog for VMware


VMware Integrated OpenStack Video Series: Working with Instances

In our last installment, we discussed the simplicity of the VMware Integrated OpenStack deployment process. Today, we will discuss how VMware Integrated OpenStack users can provision virtual machines. First, we need to get familiar with some OpenStack terminology:

  • Instance – a running virtual machine in your environment. The OpenStack Nova service provides users with the ability to manage hypervisors and deploy virtual machines.
  • Image – similar in concept to a VM template. The OpenStack Glance service maintains a collection of images from which users will deploy their instances.
  • Volume – this is an additional virtual disk (VMDK) that is attached to a running instance. Volumes can be added to instances ad hoc via the OpenStack Cinder service.
  • Flavor – allocation of resources (i.e. number of vCPUs, storage, RAM).
  • Security Group – rules governing network access to your deployed instance (ex: this instance may be accessed via TCP port 22 from a certain IP range).
  • Network – the VMware vSphere port group that your instance will be attached to. Your port groups are automatically created by the OpenStack Neutron service.

OpenStack emphasizes the capability for users to manage their infrastructure programmatically through REST APIs, and this is exhibited in the multiple ways that a user can deploy an instance. The Horizon GUI provides the capability to launch instances with a point-and-click interface. The Nova CLI provides users with simple commands to deploy your instances, and these commands can be combined in shell scripts.

For users who want even more control and flexibility over instance deployment, the REST APIs can be leveraged. The important thing to note is that regardless of the interface the user selects, the REST API is utilized behind the scenes. For example, if I use the nova boot CLI command, it translates my simple inputs into an HTTP request that the Nova service will understand.

If you would like to see the API code being generated by your CLI commands, you can use the “–debug” option with CLI tools (ex: nova –debug boot…). An example HTTP Request generated by the nova boot CLI command is included below:

curl -g -i -X POST https://vio-dashboard.eng.vmware.com:8774/v2/b228bcefad9f487fb6ae4821bfb90130/servers
-H "User-Agent: python-novaclient"
-H "Content-Type: application/json"
-H "Accept: application/json"
-H "X-Auth-Token: {SHA1}c1ef2534845b985dc4c52b803e357c08daea265b"
-d '{
"server": {
"name": "apitest",
"imageRef": "0723d0ac-9a08-49f5-9160-97efe05aa6ca",
"flavorRef": "2",
"max_count": 1,
"min_count": 1,
"networks": [{"uuid": "a722cb2b-f041-40b1-ad6a-74a27d30539a"}],
"security_groups": [{"name": "default"}]
}

My instance name (“apitest”) may seem too generic, and it’s possible that another user may use the same name. Not to worry, instance names do not need to be unique: OpenStack identifies all resources, including instances, by unique identifiers. In the sample code above, my source image, flavor, and network are all identified by their unique identifiers. Well, what about vCenter?  In vCenter, my virtual machine’s name includes its OpenStack identifier:

 

VMware Integrated Openstack instance uuid in vCenter

How vCenter Displays an OpenStack Instance

As we saw in the code above, the user specifies the source image, flavor, network, and security group during instance deployment. In the background, the user’s credentials and the interactions between the various OpenStack components are authenticated by the OpenStack Identity service (Keystone). The following graphic provides an illustration of these interactions:

 

VMware Integrated OpenStack Component Interaction

OpenStack Component Interaction

Check out the following video to see instance deployment in action with the Horizon GUI and the Nova CLI, :

 

Stay tuned for next week’s blog post when we discuss working with OpenStack networks! In the meantime, you can learn more on the VMware Product Walkthrough site and on the VMware Integrated OpenStack product page.

One thought on “VMware Integrated OpenStack Video Series: Working with Instances

  1. Pingback: VMware Integrated OpenStack Video Series: Working with Networks - OpenStack Blog for VMware - VMware Blogs

Leave a Reply

Your email address will not be published. Required fields are marked *

*