Professional Documents
Culture Documents
2013 NewAgeDisruption.com
INSIGHTS
Abstract
Companies have recognized the benefits of the flexibility of their IT infrastructure. However, the recent past has reinforced the concern to avoid the path to the public cloud for reasons of data protection and information security. Therefore alternatives need to be evaluated. With a private cloud one is found, if this would not end in high up-front investments in own hardware and software. The middle way is to use a hosted private cloud. This type of cloud is already offered by some providers. However, there is also the possibility to build it up and run themselves. This INSIGHTS report shows how this is possible with the open source cloud computing infrastructure solution openQRM.
2013 NewAgeDisruption.com
openQRM Cloud
Basically, an openQRM Cloud can be used for the construction of a public and private cloud. This completely based on openQRMs appliance model and offers fully automated deployments that can be requested by cloud users. For this openQRM Cloud supports all the virtualization and storage technologies, which are also supported by openQRM itself. It is also possible to provide physical systems over the openQRM Cloud. Based on the openQRM Enterprise Cloud Zones, a fully distributed openQRM Cloud infrastructure can also be build. Thus, several separate data centers may be divided into logical areas or the company topology can be hierarchically and logically constructed safely separated. Moreover openQRM Enterprise Cloud Zones integrates a central cloud and multilingual portal including a Google Maps integration, so an interactive overview of all sites and systems is created.
2013 NewAgeDisruption.com
For the assignment of public IP addresses cloud NAT can be used in both scenarios. This openQRM Cloud function will translate the IP addresses of the private openQRM Class C network into public addresses. This requires pre-and postrouting rules on the gateway / router using iptables, configured as follows: o o o iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o br0 -j MASQUERADE iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE More information on pre-and post-routing with iptables can http://www.karlrupp.net/en/computer/nat_tutorial
be
found
at
For the configuration of complex network environments, the IP management plugin is recommended. This enterprise plugin allows to set any network- and IP address configurations for the managed servers. In the openQRM Cloud, it also provides a mapping of networks to cloud users and groups and also supports the automated VLAN management. In addition, two bridges are needed: One of the public interface with a public IP address. One for the private interface dpe for which DHCP is configured. The data in the cloud are later stored in the local storage of the physical server. For this purpose, there are two variants: Recommended: o KVM-Storage LVM Deployment (LVM logical volume deployment) o Requires one or more dedicated LVM volume group (s) for the virtual machines. For more complex setups a central iSCSI target or a SAN is recommended. Option: o KVM-Storage BF Deployment (blockfile deployment) o Create a directory on the Linux server as /var/lib/kvm-storage/storage1 /var/lib/kvm-storage/storage2 (The storage directories can be set arbitrarily on the plugin configuration.) o For more complex setups, a central NAS for the configured mount points should be used.
At the end iptables must be configured according to the rules above and the desired own safety. After that the installation of openQRM follows. Packages for popular Linux distributions are available at http://packages.openqrm.com. After openQRM has been installed and initialized the configuration follows.
2013 NewAgeDisruption.com
2013 NewAgeDisruption.com
Further additional plugins are recommended: Collectd o A monitoring system including long-term statistics and graphics. LCMC o Integrates the Linux Cluster Management Console to manage the high availability of services. High-Availability o Enables automatic high availability of appliances. I-do-it (Enterprise Plugin) o Provides an automated documentation system (CMDB). Local server o Integrates existing and locally installed server with openQRM. Nagios 3 o Automatically monitors systems and services. NoVNC o Provides a remote web console for accessing virtual machines and physical systems. Puppet o Integrates Puppet for a fully automated configuration management and application deployment in openQRM. SSHterm o Allows secure login via a web shell to the openQRM server and integrates resource
Plugins which offer more comfort in the automatic installation of virtual machines as cloud templates are: Cobbler o Integrates cobbler for automated deploying of Linux system in openQRM. FAI o Integrates FAI for the automated provisioning of Linux systems in openQRM. LinuxCOE o Integrates LinuxCOE for the automated provisioning of Linux systems in openQRM. Opsi o Integrates Opsi for the automated provisioning of Windows systems in openQRM. Clonezilla/local-storage o Integrates Clonezilla for the automated provisioning of Linux and Windows systems in openQRM.
2013 NewAgeDisruption.com
This gives openQRM the information that a KVM storage is to be created on this machine.
scp /usr/share/openqrm/plugins/local-server/bin/openqrm-local-server [ip-address of the physical system]:/tmp/ After that, it is executed on the system to be integrated: ssh [ip-address of the physical system]: /tmp/openqrm-local-server integrate -u openqrm -p openqrm -q [ip-address of the openQRM server] -i br0 [-s http/https] (In this example "br0" is the bridge to the openQRM management network.) The integration via "local server" creates in openQRM automatically: a new resource a new image a new kernel a new appliance from the sub-components above Next, the appliance of the currently integrated physical system must be configured to provide the virtual machines. For this the appliance is set as type KVM Storage Host. That works as follows: Edit the appliance o Base > Appliance > Edit Type: Set KVM Storage Host
This gives openQRM the information that a KVM storage is to be created on this machine.
2013 NewAgeDisruption.com
2013 NewAgeDisruption.com
Subsequently a base for the master template is created. This serves as a basis to provide users a product over the order process. Create a new appliance o Base > Appliance > Create Create a new resource o KVM-Storage virtual machine Create a new VM Make settings Select an ISO image Create o Select created resource Create a new image o Add image as KVM-Storage volume o Select KVM-Storage o Select volume group on KVM-Storage o Add a new logical volume o Select an image for the appliance o Edit to set a password The previously chosen password of the ISO is overridden. Select kernel o From the local disk o (LAN boot is also possible) Start appliance o The automatic installation can now be tracked over VNC. o Further adaptations can be done itself. o Please consider Misc > Local-Server > Help >Local VMs Local-Server for local virtual machines
2013 NewAgeDisruption.com
Cleaning up
The created appliance can now be stopped and deleted afterwards. The important point was to create an image that can be used as a master template for the cloud. The created image using the appliance includes the basic operating system which was created from the ISO image.
Basically an openQRM Cloud can be run with basic settings. Depending on the needs and the own specific situation, adaptations can be make. The area description in the right column of the table are helpful.
2013 NewAgeDisruption.com
However, there are parameter which are need to consider regardless of the own use case. These are: Automatic provisioning (auto_provision) o Determines if systems are automatically provisioned by the cloud or if an approval of a system administrator is needed.
Provisioning of physical systems (request_physical_systems) o This parameter defines if besides virtual machines even physical hosts can be provisioned by the cloud.
Cloning of images (default_clone_on_deploy) o By default the cloud rolls out copies (clones) of an image.
High-availability (show_ha_checkbox) o Enables to operate the openQRM cloud including the high-availability of the provided resources.
Billing of the used resources (cloud_billing_enabled) o openQRM has an extensive billing system to determine own prices for all resources to get a transparent overview of the running costs.
Cloud product manager (cloud_selector) o Enables the product manager to provide users various resources over the cloud portal.
Currency for the settlement of resources (cloud_currency) o Determines the local currency with which the resources are to be settled.
Exchange ratio for resources in real currency (cloud_1000_ccus) o Determines how many 1000 CCUS (Cloud Computing Units) correspond to a previously fixed real currency.
Resource allocation for groups (resource_pooling) o Determines from which host an appointed user group receive their virtual machines.
2013 NewAgeDisruption.com
The Cloud product management is used to create various products which users can choose later to build own virtual machines itself over the cloud portal. Products which are available for us are: Number of CPUs Size of local disks Size of RAM Kernel type Number of network interfaces Pre-installed applications Virtualization type If a virtual machine should be high-available
2013 NewAgeDisruption.com
Over the status line by using +/- each product can be activated or deactivated to show or hide it for the user in the cloud portal. Please note: Products which are deactivated but are still active within a virtual machine continue to be billed. To create a new CPU product we select the CPU tap and define in the area Define a new CPU product our wanted parameter.
The first parameter defines how many CPUs (cores), here 64, our product should have. The second parameter determines the value of the product and how many costs occur per hour during its use. In this example, 10 CCUs per hour for 64 CPUs occurs.
With the arrow keys the order on how the single products are displayed in the cloud portal can be determine. The default value is above one. Please note: In the cloud portal standard profiles in the sizes small, medium and big exist. According to the order the profiles are automatically be determined under the respective products. That means that small is always the first value, medium the second and big the third.
2013 NewAgeDisruption.com
openQRM also allows to order virtual machines with pre-configured software stacks. For this openQRM uses Puppet (Plugins > Deployment > Puppet). Thus, for example, it is possible to order the popular LAMP stack. If we have configured our product portfolio, its the users turn to order virtual machines. This is done via the cloud portal.
2013 NewAgeDisruption.com
openQRM Cloud-Portal
To create a new virtual machine (VM) we click on the tap New. An input mask follows on which we can create our VM based on the products the administrator has determined and approved in the backend.
We choose the profile Big and a LAMP server. Our virtual machine now consists of the following products: Type: KVM-Storage VM RAM: 1 GB CPU: 64 cores Disk: 8 GB NIC: 1
In addition the virtual machine should be high-available. This means, if the VM fails, automatically a substitute machine with exactly the same configuration is started to work on with.
For this configuration we will have to pay 35 CCUs per hour. This is equivalent to 0.04 euros per hour or 0.84 per day or 26.04 per month. If we want to order the virtual machine we select send.
2013 NewAgeDisruption.com
Below the tap Orders we see all current and past orderings we have made with our user. The status active i n the first column shows that the machine is already started.
Parallel to this we receive an e-mail including the ip-address, a username and a password, we can use to log into the virtual machine.
2013 NewAgeDisruption.com
The tap Systems confirms both information and shows further details of the virtual machine. In addition we have the opportunity to change the systems configuration, pause the virtual machine or to restart. Furthermore the login via a web-shell is possible.
If the virtual machine is not needed any more it can be paused. Alternatively it is possible that the administrator disposes this due to an inactivity of the system or at a specific time.
Using the slider on the left below Cloud Components it is possible to scroll between the products. Using the mouse allows to assemble the Cloud Appliance (virtual machine) in the middle with the appropriate products.
2013 NewAgeDisruption.com
Our virtual machine Testosteron we assembled in this case with KVM-Storage, Ubuntu 12.04, 64 CPUs, 1024 MB Ram, 8 GB disk, one NIC, and software for a webserver and the high-availability feature.
With one click on Check Costs, openQRM tells us that we will pay 0.03 EUR per hour for this configuration.
2013 NewAgeDisruption.com
To start the ordering process for the virtual machine we click request. We get the message that openQRM starts rolling out the resource and we will receive further information into our mailbox.
The e-mail includes, as described above, all access data to work with the virtual machine.
In the cloud portal under systems we already see the started virtual machine.
2013 NewAgeDisruption.com
Using the VID it is possible to build and deploy a complete WYSIWYG infrastructure via drag and drop. For this purpose, it is necessary to create ready profiles with pre-configured virtual machines at first, which include for example webserver, router or gateways. These can be deployed afterwards.
2013 NewAgeDisruption.com
Contact
New Age Disruption research | analysis | strategy | advisory
Rene Buest Dipl.-Informatiker (FH) M.Sc. in IT-Management and Information Systems Koernerstrasse 30 24103 Kiel, Germany Phone: +49 (0)431 28 93 42 52 Mobile: +49 (0)173 36 49 468 E-Mail: hello@newagedisruption.com Web: http://newagedisruption.com Twitter: @ReneBuest CloudUser: http://clouduser.de
2013 NewAgeDisruption.com