openITCOCKPIT Blog

openITCOCKPIT 4 – Next Generation Monitoring

22.07.2020

Complete new user interface

openITCOCKPIT has been around for more than 15 years. Since the first release the openITCOCKPIT interface is the key component. Our mission is to create an easy-to-use, modern and responsive web frontend.

Single-page application

For the first time, openITCOCKPIT interface is 100% based on openITCOCKPIT API interface and runs as a single-page application. This approach is snappy and responsive and feels more like a desktop application than a web-based one.

But not only did we refactor the technical components from scratch, we also added a whole bunch of little helps to the interface. Tools such like “Create another” checkbox, a new menu structure and an optimized user routing between different actions help you to improve your daily workflow and monitoring experience.

Container und user container roles

Managing user permissions can become tricky really quickly. With openITCOCKPIT 4 you can organize container permissions in “User Container Roles” so that object permissions are managed on a central location for multiple users.

The new Container Map provides an overview of child elements assigned to the container as the Status Map does for parent-child relations for hosts. This massively improves the management of containers.

Smart scaling of chart units

Graphs and charts are a pleasure when doing troubleshooting and nice to look at. We all love them! However, charts can be confusing depending on the unit. A chart showing used memory of “1021071360B” is not very helpful at all. That’s why openITCOCKPIT tries to detect the current unit to turn the chart to easily readable numbers like “973MB”.

SNMP trap module

Many users requested a native integration for receiving SNMP traps. So it is a pleasure for us to announce that native SNMP trap support is finally available with openITCOCKPIT 4!

And many more…

Priorities in host and service overviews, support for BBCode in host and service output, enhanced search methods for the changelog, new package manager, new design module - the list of the new and improved features is endless. It is no exaggeration to say that we could fill multiple pages with all the new features of openITCOCKPIT 4 interface. Instead we would like to invite you to a journey to experience the new interface first-hand.

openITCOCKPIT Monitoring Agent

Based on Python we created a monitoring agent for openITCOCKPIT. It runs without any dependencies on Windows, Linux and macOS. Out-of-the-box, openITCOCKPIT Monitoring Agent can monitor CPU, memory and disk usage, network interfaces, system services, running processes, temperature sensors, QEMU and Docker containers. All checks are executed every 30 seconds by default to provide near-time monitoring.

To set up the agent packages for all supported operating systems are supported like MSI-file for Windows or PKG-file for macOS etc.

Communication runs via HTTP or HTTPS. Depending on your environment the openITCOCKPIT server can pull the check results from the agent, or the agent can push its latest check results to the openITCOCKPIT server. To be extendable and customizable the openITCOCKPIT agent is 100% compatible with the Nagios Plugin API. So no additional software (like NRPE or check_by_ssh) is required to execute plugins on the target system.

Click here to learn more about how to use the openITCOCKPIT Monitoring Agent. The source code is available on GitHub.

Distributed monitoring

One of the most popular modules of openITCOCKPIT is its ability to monitor remote locations with a dedicated openITCOCKPIT satellite system and a centralized management.

Satellite frontend

openITCOCKPIT satellite frontend is a read-only frontend running directly on the satellite system. It serves as fallback in case of a connection loss with openITCOCKPIT master server. With the satellite frontend remote administrators still get a status overview of their local infrastructure.

We updated the satellite interface so that it uses the same core components as the master server to get the same look and feel for the user.

We also added new features such as support for user roles and the possibility to schedule maintenance times, acknowledge host and service issues or display performance data. (charts)

NSTA

In case you ever wondered for what NSTA stands for, it is Native Satellite Transfer Agent. For openITCOCKPIT 4 we decided to completely rewrite the NSTA in Golang. phpNSTA gets replaced seamlessly during the upgrade.

One of the key advantages of the new NSTA is the support for HTTP, HTTPS and SSH connections. With the HTTP connection, satellite systems can pull or push their check results to the master server. An SSH connection on port 22 is no longer required. External commands such as scheduled downtimes and acknowledgements get synchronized between the master server and the satellite system.

The new NSTA is still backwards compatible to the old SSH setup. You don’t have to adjust your firewall rules.

Backend changes

Most of the biggest changes besides the openITCOCKPIT interface happend in the backend code. This part is hidden for most of the users but you shouldn’t forget about it.

CakePHP 4

More than a year of the development time of release 4 was spent for migrating the backend code from CakePHP 2.x to CakePHP 4.1. Even if this is not visible to the end user this was a milestone in the development process. Based on the latest major release of the CakePHP framework openITCOCKPIT uses bleeding edge technology and the latest security patches.

Statusengine 3

We optimized the status database holding long-term records to generate reports reducing query run times significantly.

The new Statusengine broker module can handle external commands and is also used by the NSTA for processing the check results of distributed satellite systems.

Checkmk Raw Edition

Even if openITCOCKPIT now has its own monitoring agent, we are big fans of diversity. We updated Checkmk Raw Edition to 1.6.0p13 and added more default services templates. Checkmk is now also fully supported via satellite systems. Click here to learn more about openITCOCKPIT and Checkmk.

Thank you for your support!

Many thanks to all users who tested the beta version of openITCOCKPIT 4, created bug reports and provided constructive feedback. We really appreciate this!

To make openITCOCKPIT more visible we would like to ask you to “star” our GitHub repository.

What’s coming next?

The roadmap of openITCOCKPIT is full of exciting new features. We are happy to announce the next two milestones today:

Prometheus integration

In contrast to classic monitoring tools like Naemon or Nagios, Prometheus is not a status-based monitoring system. The decision on what is good or bad is not made via plugins or return codes. The user can define detailed alarm rules based on one or multiple metrics. A quick example: “CPU load is critical if higher than 5 for more than 10 minutes”.

Prometheus uses a HTTP-pull method to collect hundreds of metrics per host. What sounds like an overwhelming flood of data first, becomes a powerful tool and data source when it comes down to troubleshooting.

We also provide support for Prometheus in the features you are already using such as creating reports, event correlations, scheduled downtimes, acknowledgements and so on. As with any other tool, openITCOCKPIT will install and update all required packages in the background with stable and tested versions.

Import module

Especially in fast changing environments it can be a hard task to keep the monitoring in sync with the current infrastructure. New virtual machines or cloud servers are deployed quickly but unfortunately they often don’t get added to the monitoring system immediately.

The new API is an additional help for administrators to automate creation and manipulation of hosts and services.

Also, we highly recommend that you use asset management systems like i-doit. Unfortunately, the “i-doit import” as implemented in openITCOCKPIT 3 isn’t able to keep up with modern workflows anymore.

So we decided to rethink our approach and recreate the import module from scratch. The new module will be more flexible and support more data sources like i-doit, CSV files and many more.

How to install openITCOCKPIT 4

Please follow the installation instructions on the download page.

How to upgrade openITCOCKPIT 3.7.3 to openITCOCKPIT 4

Upgrading from version 3 to 4 is possible. openITCOCKPIT 4 uses its own apt repository to avoid accidental upgrades. Due to the major changes the upgrade process will take some time.

Please follow the provided upgrade documentation.

Is it possible to upgrade from openITCOCKPIT 4 beta?

Technically, the answer is yes. Unfortunately, the database schema of the beta release had some critical design issues. That’s why we recommend that you start with a new installation of openITCOCKPIT 4 stable.

Enjoy your next monitoring!


Your openITCOCKPIT Team