How to Install Beszel Monitoring Tool on AlmaLinux 9

Beszel is a lightweight server monitoring platform that includes Docker statistics, historical data, and alert functions.

It has a friendly web interface, simple configuration, and is ready to use out of the box. It supports automatic backup, multi-user, OAuth authentication, and API access.

Prerequisites

Before starting, ensure:

  • AlmaLinux 9 is running on your system.
  • You have sudo privileges.
  • A stable internet connection.

Update the System

Update your system to the latest packages,

dnf update -y
dnf upgrade -y

Remove any pre-existing Docker-related packages to avoid conflicts,

for pkg in docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine podman-docker containerd runc; do sudo dnf remove -y $pkg; done

Install Required Tools

Install essential tools for the installation process,

dnf install -y yum-utils device-mapper-persistent-data lvm2 curl

Add Docker’s Official Repository

Add the Docker CE repository to your system,

dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Install Docker

Install Docker and its required components,

dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Enable and start Docker,

systemctl enable --now docker

Verify the installation,

docker run hello-world

Set Up Beszel

Create a Directory for Beszel

mkdir beszel && cd beszel

Create a docker-compose.yml File

Open the file in a text editor,

nano docker-compose.yml

Add the following content:

services:
  beszel:
    image: henrygd/beszel:latest
    container_name: beszel
    restart: unless-stopped
    extra_hosts:
      - host.docker.internal:host-gateway
    ports:
      - 8090:8090
    volumes:
      - ./beszel_data:/beszel_data

  beszel-agent:
    image: henrygd/beszel-agent:latest
    container_name: beszel-agent
    restart: unless-stopped
    network_mode: host
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
    environment:
      PORT: 45876
      # Do not remove quotes around the key
      KEY: 'UPDATE WITH YOUR PUBLIC KEY (copy from "Add system" dialog)'

Save and close the file.

Start Beszel

Start Beszel using Docker Compose,

docker compose up -d

This command will pull the necessary images and start the Beszel and Beszel Agent containers. Verify the containers are running,

docker ps

Output:

[root@vps beszel]# docker ps
CONTAINER ID   IMAGE                         COMMAND                  CREATED          STATUS          PORTS                                       NAMES
458c3ebb90d4   henrygd/beszel:latest         "/beszel serve --htt…"   22 minutes ago   Up 22 minutes   0.0.0.0:8090->8090/tcp, :::8090->8090/tcp   beszel
e30d9772ba56   henrygd/beszel-agent:latest   "/agent"                 22 minutes ago   Up 22 minutes                                               beszel-agent
[root@vps beszel]# 

Access the Beszel

Access the Beszel interface by opening a web browser and navigating to,

http://Your_Server_IP:8090

Note: Replace Your_Server_IP with actual IP Address

Create an Admin Account

When you first access Beszel, you will be prompted to create an admin account. Enter your email address and password, then proceed to complete the setup.

images

Access the Dashboard

Once the admin account is created, you will be directed to the Beszel dashboard, where you can monitor and manage your infrastructure.

images

Add a System

To add an Agent/Client to the system for monitoring: Click Here to know how.

  • Click on the Add System button.

images

  • Enter the agent/client required details:
    • Name of the site.
    • Host or IP address.
    • Port number
    • Public key (copy this from the "Add System" dialog in Beszel).

images

Save the configuration.

Once the system is added, it will appear with the server name you’ve configured.

images

Click to open the created or added server, and you will be directed to the dashboard, where you can view graphs for Memory, CPU, Disk Usage, Disk I/O, and Bandwidth.

images

Install Agent/Client on Additional Systems

To install the Beszel agent on another system,

curl -sL https://raw.githubusercontent.com/henrygd/beszel/main/supplemental/scripts/install-agent.sh -o install-agent.sh && chmod +x install-agent.sh && ./install-agent.sh

Replace Port_Number and Public_Key with the appropriate values from the Beszel interface. Once installed, the system will automatically appear in the Beszel dashboard.

Manual Agent Installation (Optional)

For manual agent installation,

Download the agent binary

curl -sL "https://github.com/henrygd/beszel/releases/latest/download/beszel-agent_$(uname -s)_$(uname -m | sed 's/x86_64/amd64/' | sed 's/armv7l/arm/' | sed 's/aarch64/arm64/').tar.gz" | tar -xz -O beszel-agent | tee ./beszel-agent >/dev/null && chmod +x beszel-agent

Start the agent,

PORT=45876 KEY="<public key>" ./beszel-agent

To update the agent,

./beszel-agent update

Done!

You have successfully installed Beszel Monitoring Tool on AlmaLinux 9. You can now enjoy seamless infrastructure monitoring and management with Beszel.


CrownCloud - Get a SSD powered KVM VPS at $4.5/month!
Use the code WELCOME for 10% off!

1 GB RAM / 25 GB SSD / 1 CPU Core / 1 TB Bandwidth per month

Available Locations: LAX | MIA | ATL | FRA | AMS