This post is also available in: Spanish
OPenNebula monitoring: Do we have security in the cloud?
In order to develop the topic “How to monitor OpenNebula?” in a logical order, let’s see first what OpenNebula is, and then make a meticulous reference to its monitoring.
Thus OpenNebula is an open source management platform for building private, public and even hybrid SaaS clouds. As you may suppose, installing a cloud from scratch can be complex, since there are many concepts and components involved in the process itself.
However, once you are familiar with these concepts and components, such as system administration, visualization management, infrastructure planning and other concepts that we will refer to later, the installation process will be less complex. On the other hand, but in the same conceptual direction, we are going to outline (shortly) a series of steps that will later acquire conceptual relevance when we talk about how to monitor OpenNebula.
The steps are:
- Choosing the hypervisor
- Designing and install the cloud
- Configuring infrastructure and services
- Operating the cloud
- Installing advanced components
- Integrating it with other components
As far as choosing the hypervisor to use in our cloud infrastructure is concerned, let’s say that OpenNebula’s primitive distribution provides full support for the two most widely used hypervisors, vMware (through vCenter) and KVM, in both cases at different levels of functionality and depth. With regard specifically to KVM cloud visualization and management, it is worth mentioning that many companies and organizations use OpenNebula to manage data center virtualization, consolidate servers, and integrate IT assets available for computing, storage, and networking.
During this implementation process, OpenNebula integrates directly with KVM while gaining complete control over physical and virtual resources, providing us with advanced capabilities for resource optimization, capacity management, high availability and, in the process, business continuity. It should be noted, however, that some of the above-mentioned implementations use, in addition, the various features of OpenNebula Cloud Management and also Provisioning, when it is necessary to federate data centers, offer self-service portals for end-users and for the implementation of Cloudbursting.
As far as Cloud Management is concerned, we must bear in mind that different companies use OpenNebula to provide a multiuser cloud provisioning layer. Now, these implementations are looking for resilience, provisioning and Cloud Multi-tenancy features in the form of federation of data centers, virtual data centers or, hybrid cloud computing, in order to make the connection of internal infrastructures with public clouds, while the infrastructure itself is managed by means of tools (already familiar, at least, hypothetically) for the operation and management of infrastructure, such as vCenter Operations Manager and vSphere.
After the cloud has been installed using a hypervisor, other hypervisors can be added. In addition, it is feasible to implement hyper-hypervisor environments that are heterogeneous and managed by a single instance of OpenNebula. One of the many advantages of using OpenNebula in VMware, can be seen in the strategic path to openness, as companies or organizations go beyond virtualization in private clouds.
To be clearer and more explicit, let’s note that OpenNebula is able to leverage VMware’s existing infrastructure and, by the way, protect IT investments and gradually integrate other open source hypervisors. In this way, we avoid the possible blocking of future suppliers and, in addition, strengthen the company’s negotiating position. In addition, there are other virtualization technologies such as Xen and LXC that are compatible with the community. On the other hand, there is a catalogue of OpenNebula add-ons that we can consult if we want to go deeper into the subject.
To learn how to monitor OpenNebula, we do not consider it necessary to go deeper into the design, installation of the cloud, infrastructure and services configuration, or the fact of operating in the cloud. But what we do need to emphasize is the step we had called “Integration of other components”.
In view of the fact that there aren’t two identical clouds, OpenNebula offers a good number of interfaces, which can be used to interact with the functionality offered, either to manage virtual or physical resources. So, let’s see what the modular and extensible architecture is, with customizable add-ons to integrate with any third-party data center infrastructure platform for monitoring, storage, virtualization, authentication, cloud burst, and more. We are referring more specifically to:
- One Flow API: to create, control and monitor multi-tiered services or applications that consist of interconnected virtual machines.
- Hook Manager: to activate the administration scripts, when changing the current status of the virtual machine.
- API for integration: This API is used for integration with higher level tools, such as self-service portals and billing. It also provides all the OpenNebula kernel functionality through links to Ruby and Java and also to the XMLRPC API.
- Sunstone (server): routes and also custom tabs to extend this same server, of course.
Which are the monitoring controllers?
“IM Controllers” or “Monitoring Controllers” perform the function of collecting virtual machine and host monitoring data, so that they run a set of polls on the hosts themselves. Now, OpenNebula actively queries that data or, well, it is sent by an agent (towards the frontend) that runs on hosts. We are referring, more specifically, to a guide or tutorial on the process of customizing or, if you prefer, adding polls to hosts. In addition, this is a starting point for how to create a new IM Controller or, in other words, a new Monitoring Controller from scratch.
Thus, we need to explain what is related to the location of the probe, to say, in the first instance, that the default probes must be installed in the interface, using the following path:
○ KVM: Before presenting the path, let’s say that in this case (KVM) probes are distributed to the hosts. Therefore, if the probes are changed, it is necessary to distribute them to hosts by running: .onehost sync . The path is:
○ vCenter, Azure and EC2. The path is:
As far as the general structure of the probe is concerned, we think that in order not to be too extensive, the best thing is that if you are interested, you should visit the official OpenNebula website, in order to obtain precise information. However, it should be noted that an IM controller is composed of one or more scripts that write in the stdout the information of the way in which, precisely, it is expressed in the page to which we intend to lead the reader through the previous link. Let us make it clear, though, that when we land on this page, at the end of it we will find the following:
IM_MAD = ( name = “ganglia”, ejecutable = “one_im_sh”, arguments = “ganglia” )
Then, when you reach (in the extreme lower part of the page to which we are referring), to the previous coding, we will not find two options:”Previous” and, also, with “Next” or “Next”, which is the option that we must click in order to continue seeing (and analyzing) the structure of the probe, which will be used to monitor OpenNebula. On the other hand, we are going to see the reasons why it is convenient to decide for OpenNebula, among which we find that its monitoring is relatively simple.
Why choose OpenNebula based on its monitoring?
- When we use the OpenNebula CLI (or web interface), we can track activities whenever we want. To this end, we have a central directory service through which we can add new users, while they may have rights, individually considered. At OpenNebula, it’s easy to set up new virtual systems, target the right users and groups, and of course manage systems.
- Permanent Availability: OpenNebula does not deal only with initial procurement. In addition, it has high availability of its cloud environment, while that availability is much better than other cloud solutions. Now, if we want to increase availability, we can configure OpenNebula’s central services, although it is not absolutely necessary. All systems continue to operate in their original state, and are automatically included in the restored availability of control processes.
- Easy remote access: In virtual environments, users do not have the ability to access the system, in cases where there are operational or device problems. Well, OpenNebula provides us with an easy solution: with the browser we can access the host system console, by means of an integrated VNC server.
- Comprehensive monitoring and control: All host and guest systems can be monitored permanently in OpenNebula, keeping the host panels and VM constantly up to date. However, depending on how we configure it, a virtual machine must be restarted in the event of a host system failure or when migrating to a different system. But, if we use a data warehouse with parallel access, we can move the systems while they are running to a different hardware. In addition, it is possible to minimize the maintenance window while completely avoiding it if desired.
- Open standards: OpenNebula is 100% open source, under the Apache license. As such, it provides security, scalability and, also, freedom, being a reliable solution in the cloud without presenting blockades of providers, which positively results in considerable support and follow-up costs. All this, because OpenNebula supports open standards like OCCI and a generous amount of other open architectures.
In short, OpenNebula is an excellent choice for many reasons. One of the reasons to highlight is the possibility of carrying out a simple monitoring. However, and so that the readers can expand their information about it, we recommend going to Pandora FMS, where they will find a great amount of additional quality information, which is the most important thing, when dealing with these issues.