Internet

How to install and configure Uptime Kuma to monitor servers

Notifications are also a fundamental aspect of any monitoring system, in this case, the truth is that it is the most complete we have seen so far. We can receive notifications that a service has fallen and if it has started working again through:

  • SMS with ClickSend
  • Email (SMTP)
  • Google Chat with Google Workspace
  • Home Assistant
  • LINE
  • Mattermost
  • Microsoft Teams
  • Octopush
  • pushbullet
  • pushover
  • signal
  • slack
  • Telegram
  • Many more compatible services, you can check the list on the official website.

Uptime Kuma will allow us to add unlimited monitors, and different notices simultaneously, in addition, we have the possibility of creating multiple status pages to see all the monitors and their status at a glance. We also have the ability to configure these status pages with specific domains. We can visualize a graph with the ping to see the minimum, maximum and average latency.

Other features are that it can be seamlessly integrated with Cloudflare Tunnel to remotely access the monitoring system via HTTPS, we can also configure it to access through a reverse proxy such as Traefik or NGINX. Of course, we also have support for Proxy in case we are behind a proxy in the local network, to be able to access the Internet if we are going to need to monitor something from the Internet and not only local. Regarding authentication, we have the administration user and support for 2FA, in this way, we will be adding additional security at the time of authentication.

As you can see, Uptime Kuma is a really complete monitoring system, with very advanced features, but the most interesting thing is that it’s really easy to configure.

Installation and commissioning

The installation of this monitoring system is really very simple, since it is installed directly through Docker. The docker run code line provided by the official website is the following:

docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1

But it can also be seamlessly integrated into Docker Compose, to centralize all the containers that we have deployed. We are going to tell you what our Docker Compose is like so that you can run it without any problem.

version: '3.7'
networks:
dockerbron:
name: dockerbron
driver: bridge
ipam:
config:
- subnet: 172.30.1.0/24
services:
uptime-kuma:
image: louislam/uptime-kuma:1.23.1
container_name: uptime-kuma
restart: always
volumes:
- /share/MaquinasVirtuales/Docker/uptime-kuma:/app/data
networks:
dockerbron:
ipv4_address: 172.30.1.2
ports:
- 3001:3001

When copying and pasting, make sure it complies with YAML validation, otherwise it will give a syntax error and you won’t be able to execute or deploy it.

Once we have deployed it, we enter the IP address and port 3001 that we have previously indicated in the Docker container. The first thing that will appear is a menu to create the administrator account, the language is Spanish because it is detected by our browser. We must enter the username and password that we want to create.

We have registered the user “redeszone” for the administration account, as you can see here:

A very important aspect is the strength of the password, if it does not have 6 characters and you combine letters and numbers, it will give us an error and we will not be able to create the administration account.

Once we have created the administrator user, we will be ready to enter its menu and start configuring monitors, see all the available options, etc.

Configuration options

The first time we enter the control panel we will not see any monitor, something logical because we have not added any. In the left menu we will have the list of all the monitors and their status, in the right menu we have a summary of all the monitors and if they are working, have fallen, are undergoing maintenance, the status is unknown and the paused ones. We can also see a complete record of everything that has happened.

In the upper right area we can see and create all the status pages that we want, with the aim of monitoring certain equipment in a simple way and seeing it directly from a website. We can also access the main panel, as well as access all the options if we display the circle with the “R” of the administrator user.

On the menu “General» we can see the time zone, the time zone server and general settings of Uptime Kuma, such as defining the main address and other important options. In the section of “Appearance» We can see the Spanish language and choose if we want a light or dark theme or leave it automatic, among other options. In the menu “notifications» It is where we must register the services that we want so that notifications of the status of the monitors reach us, our favorite is Telegram, the normal thing is to create a new bot with the name of Uptime Kuma and associate it directly to the service, but also you could configure email notifications and much more. In this notifications menu we have everything necessary to properly configure all the notifications.

In the menu “reverse proxy» We can register Cloudflare Tunnel, and also our own reverse proxy like Traefik, in this way, we can enter the monitoring system through a web address. In the section of “tags» We have the possibility of adding labels to organize the monitors correctly, and later associate a monitor with one or several labels, to have everything well organized. In “monitor history» We can limit the history of days, by default it is 180 days but if you want it to be unlimited, just put a 0 so that it always saves all the history and does not delete anything. If you want to monitor Docker containers, you can do it in the “Docker Hosts«, This is perfect to know if they are working correctly there is no problem.

In the menu “Security» is where we can change the current password, configure two-factor authentication and even disable authentication if we want. Other options are to add API keys, configure the proxy to access the Internet if necessary, as well as make a backup, although this last functionality should not be used because it is obsolete, it is better to make a backup directly from the file data from your Docker container.

As you have seen, we have a large number of configuration options available in this monitoring system, the best thing is that they are very easy to configure.

Add a new monitor

To add a new monitor to the monitoring system, we go to the main menu and click on «add new monitor«. On the right side we will see all the options of the monitor in question, and it is that we can create a large number of types of monitors such as HTTP, HTTPS, TCP, Ping and much more. Of course, before creating a monitor it is advisable to preconfigure the notifications and also the labels, so that once we create the monitor we can do it directly and not have to go back to edit it.

All the menus are perfectly translated, and the options are quite intuitive, so you won’t have any problems when configuring them.

add status page

Uptime Kuma will allow us to create custom pages with the status of the monitors that we want, to add a status page we simply go to the “status pages«, and inside we create a new page and later we add the monitors in the different sections that we want. First we must create all the monitors, and then create the status pages because otherwise we will have it completely empty.

By having a URL for each status page, we can directly access this URL in order to see at a glance all the monitors that interest us

Main menu with monitors

Once we have created all the monitors, and also the corresponding labels, we can see all of them on the left and their current status, on the right we can see the history of whether there have been any crashes or problems. We can also put all the monitors we want into maintenance, so that they don’t notify us if they are going to fall because we are going to do some intervention. Another option is to select all monitors and pause them.

If we get into one of the monitors, we can see the IP address or domain, and the buttons to pause, edit the monitor, clone it to take that “template” and change only a value or two, and we can also see the status in time and if there have been any problems. In this menu we can also see the current ping and the average, in addition, it will inform us of the percentage of operation during the last 24 hours, and the active time during the last 30 days. Just below we can see a graph with the latency variations.

If we see the history, we will be able to appreciate all the falls of this device, and also if we have put it under maintenance or not.

As you can see, we are going to have a large amount of information thanks to Uptime Kuma, not only from the local teams but also the status of Internet websites.

Activate maintenance

In the event that you are going to restart part of the network, and it is going to be inaccessible for a while, it is best to schedule a maintenance in order not to receive dozens of notifications of failures, and after it has reconnected and is working correctly. In this way, when maintenance mode is activated, the monitors will stop warning if there is a fall.

This function is very important so as not to “stain” the event log, especially if we have dozens of monitored computers.

Status page with monitors

We have previously indicated that, to create the status pages of the monitors, it is necessary to first create the monitors and then create the status pages. In the following images you can see the process so simple, it also allows drag and drop so that we can change the classification of a monitor very easily and quickly. Everything is editable and we are going to have great versatility to make the status page perfectly.

By having a URL for each status page, we can create several and access them directly through a bookmark in the web browser, in this way we will only see what we are really interested in seeing and not the hundreds of monitors.

conclusions

If you need a very complete monitoring system, free, that can be easily integrated into any network thanks to the use of Docker containers, and that is really easy to use without having to spend tens of hours on documentation, it is clear that Uptime Kuma is what you are looking for. This monitoring system can be used at the domestic level to control that all our devices at home do not suffer disconnections, and if it happens, it will notify us through different ways such as email, Telegram and many other platforms that we have mentioned.

If we can highlight something about this solution, it is that it is a truly intuitive monitoring system, in half an hour you will have all the options under control to create basic and even advanced monitors in a few seconds. The graphical user interface is also very clean and fast, nothing like very old monitoring systems that have an archaic design. Finally, we would also like to point out that the stability of the monitoring system itself is really good, which is fundamental.

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *