OpenQRM tracks data center's usage and utilization while
generating detailed reports at the same time. It provides automatic failover for
servers under its control. In fact, you can set up automatic failover from one
openQRM managing server to another, so there's no single point of failure. The
system also supports diskless servers, which lowers the cost and rates of
failure. It can manage thousands of such servers. It dynamically adjusts the
amount of allocated servers according to actual usage and provides high
availability for enterprise services and applications. OpenQRM separates running
applications from physical servers, thereby allowing flexible use of resources
and ease of management. It supports booting of servers from local disk, NAS,
iSCSI, etc.
|
OpenQRM comes with a number of plugins like dhcpd for a
DHCP server. It provides the required functionality of letting node's network
boot and receive IP addresses. This plugin is useful if you don't have another
DHCP server running in your network. It also has a plugin for iSCSI, which
installs iSCSI-enabled kernels for use with openQRM. These kernels let you store
filesystem images on a storage device, which supports iSCSI. It also has a
plugin for LDAP to allow user authentication in openQRM through an LDAP server
instead of the internal user/password mechanism of openQRM. It has another
useful plugin for Microsoft Windows, which lets openQRM manage Windows. Servers
perform basic functions on it such as start and stop. It also lets you create
your own Plugins. It also has the support for different partitioning
technologies such as VMWare and Xen.
OpenQRM, by default, has a status bar at the top of the
window, which displays all the information about the virtual environments,
nodes, virtual machines. The bar shows as to how many of these are active or
inactive, idle or otherwise, giving an error message. When a machine shows
error, openQRM displays an alert on this window immediately. Here, nodes are the
machines, which are booted trough openQRM image and virtual environments are
created using these nodes. In its management tools, openQRM lets you create
filter for these nodes, virtual environments and machines. By default, it
filters them into categories like running, inactive or active, or in error etc.
In openQRM, you can create and start running virtual environments comprising of nodes such as servers in your network quite easily |
Using openQRM
To start using openQRM, you first need to download the software from
the website link given above. Here you have two options, either you can download
the ISO of openQRM and boot your server with it, or you can download the RPMS or
TGZ of openQRM and install it onto your already running linux server. Before
installing the RPMS or TGZ files, you need to make sure that you are running
'mysqld' on your server. Here we are looking at how to use openQRM with its
bootable CD. Once booted, if you don't have a dhcp server running in your
network, it will ask you to enable the DHCP plugin of openQRM. Just type 'y'
and press enter, it will start DHCP server for you.
Boot the servers or workstations with PXE that you want to
manage with openQRM. They will automatically boot from the image, which is on
openQRM server. This image will register itself with openQRM. You can also add
your own image and boot these machines from that image. You now have two
idle nodes. Now open the openQRM GUI for this, and double click the 'OpenQRM
GUI' icon on the desktop. Next, you need to log in. By default you can
use the following:
Userid: qrm
Password: qrm
Once you are logged in, you can change the password if you
want. To create a new virtual environment of these machines, which we just
booted with openQRM image, browse to virtual environments. In tools, click on
new virtual environment. A window will open where you name the virtual
environment. Next it will ask you to choose a kernel image. Click on the Edit
Tab. Here, by default, you will see three images. Choose qrm image and provide
the Filesystem Image. Click on the add button. By default, there will be two
images — small_iscsi and small_nfs, choose the one according to your need. Now
you need to design the node's hardware profile. For this, specify the RAM
amount, number of CPUs and CPU speed for every node. If you are not sure about
this, you can just leave it to any, letting openQRM decide those things.
To set the policy for the virtual environment, click on the
Provisioning and Policy tab. Here you can define the minimum, maximum and the
number of nodes, which the openQRM should use during the start. You can also
define policy for the maximum load a node should take. You can also run an
external script for policies. Next, click on High Availability tab to define
whether the virtual environment should use Automatic Application Recovery (AAR)
or not. Similarly, you can also choose the support for Automatic Hardware
Failover (AHF) and the number of minimum resources openQRM should use for it.
After giving all these details, click on 'save changes'
and the virtual environment will be created. To start this virtual environment,
got to Action drop-down tab and click on 'start'. Once you start the virtual
environment, one of your nodes will reboot and will bring up a small linux
kernel shipped with openQRM live cd.
Now, to check the High Availability feature of openQRM,
unplug the network cable or just pull the power source from your first node to
simulate a failure. In a few seconds, or as configured by you, openQRM
will detect that it has not received any heartbeats from the assigned node.
Failover will initiate causing openQRM to de-assign the node from the virtual
environment and assign the remaining idle node. This is to show how
openQRM will automatically keep your applications running.
You can add as many nodes as you wish and set openQRM to apply one of the three pre-configured policies/scripts on them |
Creating a custom boot-image
You can create a custom boot image from a remote(running) server trough the
following way. Open a command shell and run the following commands.
> /
create \
-k
-i
where myboot-image is the name of the image,
For example:
> /usr/qrm/bin/qrm-boot-image
create \
-k 2.6.12 \-b myboot-image \-y my-boot-image \-i 198.168.3.20
Creating a custom filesystem-image
You can create a custom filestem-image from a remote (running) server and
create a storage-server on the management configuration page in the openQRM GUI.
For creating a storage server all you need to give is ip address of the remote
storage server and specify what type is it. Next open shell and run the
following:
> /
create \
-s myserver -i
-n
--storage-server
For example:
> /usr/qrm/bin/qrm-filesystem-image
create \
-s myserver \-i 192.168.3.40 \
-n 192.168.3.20:/diskimages/ \
--storage-server mynfs-server
Bottom line
As the number of servers are increasing in data centers, openQRM provides an
easy way to manage them, thereby reducing the downtime, as it can handle
failures automatically.
Swapnil Arora