Linux.com

Home Learn Linux Linux Documentation How To Build Your Virtualized Datacenter Using Open Source, Linux, KVM and Xen, Part 2

How To Build Your Virtualized Datacenter Using Open Source, Linux, KVM and Xen, Part 2

This is part two in a two-part series on how to use open source ConVirt to manage virtual machines written by guest contributor Jaydeep Marfatia, executive vice president of engineering and founder of Convirture.

Previously, I gave you an overview of ConVirt Open Source, who’s using it and why. Today, I’ll  give specific guidance on using Convirt Open Source, which offers an open source, agent-less lifecycle management solution that works for both KVM and Xen. In addition, I’ll touch on some of the advanced automation capabilities which are available in ConVirt’s commercial (e.g. paid for) version as well.

Installing and Configuring ConVirt

The process of installing and configuring ConVirt is well documented – there are 3 basic steps:

  1. Install ConVirt Management Server (CMS)
  2. Prepare Managed Servers for ConVirt
  3. Open ConVirt in your browser and start managing your infrastructure.

Note that ConVirt is agentless, but before you start managing a remote server, you need to ensure that it's properly configured. This can be done easily in a few quick steps using the convirt-tool script:

  • For the Xen platform, running this command configures the Xend Server to listen on port 8006 and opens port 8002 for migration. The command also detects the default bridge and writes a summary of its operations to the /var/cache/convirt/server_info file.
  • For the KVM platform, the command creates appropriate public bridges, required scripts and writes a summary of its operations to the /var

Here are several resources that will help you get there fast and effectively:

The ConVirt Dashboard

ConVirt’s Data Center Dashboard provides an at-a-glance view of your entire virtualized environment, and the highly interactive interface allows you to:

  • Use Context menu on the entity to invoke the operation. For example, select a VM, right mouse click to get to the context menu and invoke the desired operation.
  • View and organize Servers in Server pools and see them hierarchically in the navigator.
  • Search the Servers or Virtual machines by name and get to information about them.
  • Sort the Servers and Virtual machines by their CPU or memory consumptions.
  • Select area of the chart to zoom in and out.
  • Get to the Virtual machine console from the browser via VNC.

ConVirt is multi-user, allowing the same environment to be managed by multiple administrators. It’s also extensible, with multiple hooks for enterprise integration, including LDAP/AD support, CLI, and API-based approaches.

Overview

The Dashboard has 3 basic elements:

ConVirt dashboard

  1. Navigator Pane: This pane displays an organized, hierarchical view of each entity managed by the system, including Server Pools, Hosts, VMs, and Templates. ConVirt has highly interactive interface that allows you to use a context-sensitive menu on the entity to invoke the operation. For example, if you select a VM, you can right mouse click to get to the context menu and invoke the desired operation.
  2. Dashboards: Each entity in the system has at least an Overview tab and a Configuration tab, and if appropriate, a Servers tab. The Overview tab shows summary information as well as information that requires attention. It also shows various charts that shows recent performance.
  3. Task Pane: All operations within ConVirt are carried out via the task engine subsystem. It runs periodic tasks of monitoring servers and virtual machines, data rollups and periodic maintenance. Information about the tasks submitted and their status is presented in the task pane at the bottom.

Configuration View

The Configuration tab shows configuration information about the entity.

ConVirt configuration view

Server View

And if appropriate, the Servers tab shows all the Servers and Virtual machines, in a sortable and searchable presentation that allows you to find the information that you are looking for.

ConVirt server view

Adding A Managed Server

Server Pools

A Server Pool node in the Navigator pane represents a group of managed servers. Desktops, QA Lab and Servers server pools are created by default. They serve as a good starting point. You can create your own server pools as well.

Server pools are a valuable concept because they allow you to manage a set of servers in a uniform fashion. For example, you can define provisioning settings that override or fulfill variables in the image at the time of provisioning. Similarly, you can declare specific types of storage associated with a server pool.

Add New Managed Server

Select a Server Pool in the Navigator pane, then right-click. For example, select the default server pool QA Lab, then select Add Server:

ConVirt Add server ctx menu

Select Virtualization Platform, then click OK.

ConVirt Add server select platform

Type the host name or IP address of the server, and a user name and password for account with permission to access the managed server, then click OK.

ConVirt Add server server details

If the connection is successful, the managed server is added to the Convirt console. You can now create and manage the complete life cycle of virtual machines on this managed server.

ConVirt-Add server server added

VM Lifecycle Management

The most basic lifecycle of a virtual machine is creation, use, and removal, but the tasks involved are more complex than that, including things like:

  • Create a VM
  • Install an OS in the VM
  • Create a template
  •  Snapshot a VM
  • Migrate the VM and/ or the VM's storage
  • Analyze the VM's resource utilization
  • "Right-size"/resize the VM's memory, number of CPUs
  • Remove the VM

ConVirt provides a toolset for day-to-day VM administration and lifecycle management, including monitoring, configuration management, templates-based provisioning, basic automation, live migration and much more.

Templates

A template is a set of related configuration from which you can create one or more virtual machines. For example, one of the default Templates included with ConVirt is the Linux _CD_Install in the Common Template Group. It typically consists of default values for Virtual cpus, Memory, storage and network configurations. You can view or customize the existing Linux_CD_Install Template in the ConVirt console:

Convirt template

The default Templates included with ConVirt give a good starting point for creating new virtual machines without making changes. In most cases, however, it may be useful to create custom Template by modifying an existing template to suit your needs. For example, you can create a new custom template for CentOS virtual machines by modifying the existing Linux_CD_Install template in the ConVirt.

With the CentOS template selected, you can right-click, then select Edit Settings on the context menu. You can modify specific properties to customize the template to your needs.

ConVirt template

Template-Based Provisioning

Define storage, network, boot parameters, and much more, within a template, helping to fully automate the provisioning process.

Out-of-box and custom templates are stored in the templates library, enabling categorization of the provisioning images according to business processes. ConVirt tracks the associations between templates and virtual machines using them, tracking compliance with corporate standards.

With ConVirt's single click provisioning, a template can by provisioned with a single click. You can select a server for provisioning or choosing a server pool and letting ConVirt determine the best candidate for running the additional workload.

ConVirt select server

Monitoring

Get an at-a-glance view of the virtual machine availability, performance and configuration information. Analyze historical performance trends and take immediate action.

ConVirt monitoring

Physical server information is key to virtual machine management. ConVirt provides performance monitoring for physical servers. Analyze performance trends, and take actionable steps to improve service levels.

ConVirt collects detailed configuration information for physical servers, including OS details, CPU information, storage and network resources, etc.

Configuration

Con Virt configuration

Administration

Take administrative actions, such as adding more memory to a running virtual machine, taking a snapshot, or rebooting a virtual machine.

Migration

Migrate live virtual machines by right-clicking on that virtual machine or with a single drag-and-drop operation.

migration

When migrating a virtual machine, select a physical server to move it to or pick a server pool and let ConVirt determine the best server to host the additional workload, in compliance with pre-defined policies.

Storage Management & Automation

ConVirt allows you to declare your storage and use it for Virtual Machines. It supports both direct attached storage as well as shared storage topologies. For direct attached storage (local disk or LVM), you do not need to anything specific, you provide the full disk location at the time of provisioning. For shared storage, declare it at the Data Center level and then assign it to one or more server pools. Once this is done, you can create disks on the shared storage. ConVirt keeps track of the storage usage and presents it on various dashboards. This gives administrator an opportunity to fix storage capacity problems before they occur.

Convirt supports a wide variety of storage mechanisms including Local Storage, Network File system (NFS) and ISCSI.

You can declare storage once, at the data center level, and make it available to server pools and virtual machines in your environment.

Network Management

ConVirt works with existing simple networks, bonded networks or VLAN enabled networks once the bridge setup is done on managed server. You can create Host Private Virtual networks using ConVirt.

Creating A Host Private Virtual Network

Select a managed server. e.g. srv-001, then right click and select Manage Virtual Networks. When you press ok. A new network is defined.

ConVirt host vpn

Using A Virtual Network

At the time of provisioning, virtual machine network interfaces can be associated with the network. Here is an example - select the managed server srv-001, then right-click and select Provision Virtual Machine operation. Select the desired template and give a name to the virtual machine. Now go to the Networks section of the wizard. You will typically see one interface with "Default Network" and Autogenerated MAC. Select this interface and click Edit. This will bring up Network Details dialog. From the drop down select the "QA network" defined earlier and press save. Now press ok to provision the new virtual machine. Start the virtual machine, and this virtual machine will be connected to QA network.

Nw select network

Conclusion

Summary – ConVirt offers a single product that can provide almost everything you need to manage open source virtualization for an enterprise data center. The open source product will get you started well on your way, and the commercial product provides much of the automation needed to bring ConVirt up to vCenter caliber functionality. 

Jaydeep Marfatia is Executive Vice President of Engineering and Founder of Convirture. Jaydeep is responsible for all aspects of product development at Convirture. He brings a wealth of industry experience to his current role, including over 10 years in systems management. Prior to co-founding Convirture, Jaydeep held a senior engineering management position in the ASLM division at Oracle, and was one of the principal architects of the Oracle Enterprise Manager 10g product suite. He holds a degree in Computer Science from the University of Mumbai.

 

Comments

Subscribe to Comments Feed

Upcoming Linux Foundation Courses

  1. LFS426 Linux Performance Tuning
    08 Sep » 11 Sep - New York
    Details
  2. LFS520 OpenStack Cloud Architecture and Deployment
    08 Sep » 11 Sep - Virtual
    Details
  3. LFD320 Linux Kernel Internals and Debugging
    15 Sep » 19 Sep - Virtual
    Details

View All Upcoming Courses

Become an Individual Member
Check out the Friday Funnies

Sign Up For the Linux.com Newsletter


Who we are ?

The Linux Foundation is a non-profit consortium dedicated to the growth of Linux.

More About the foundation...

Frequent Questions

Join / Linux Training / Board