Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

Install Observium on a supported Ubuntu release, connect it to Apache and MySQL or MariaDB, then add an SNMP-enabled device for discovery and polling. Observium currently lists Ubuntu 20.04, 22.04, 24.04 and 26.04 as compatible; use the newest release available to you and make sure its PHP package is at least 8.2 and matches that Ubuntu release.

The reliable order is: choose an Observium edition, install the operating-system dependencies, create the database, write config.php, configure Apache to serve /opt/observium/html, create an administrator, add a device, run discovery and polling, and schedule the poller every 300 seconds.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Before you begin

Use a clean Ubuntu server with a static name or address, sudo access, and outbound access to the Observium distribution source. The server will run Apache, PHP, the database, SNMP utilities and the Observium poller. Allow HTTP or HTTPS access from the administrators who will use the dashboard, and allow UDP 161 from the server to each monitored device.

  • Supported Ubuntu releases: 20.04, 22.04, 24.04 and 26.04.
  • PHP: 8.2 or newer is required by the current requirements; the package and Apache module name must match the selected Ubuntu release.
  • Database: MySQL newer than 8.0.12 or MariaDB newer than 10.3.
  • Web server: Apache newer than 2.4, using the prefork MPM with the matching PHP module.
  • Monitoring components: Net-SNMP newer than 5.8, RRDTool newer than 1.7.2 and fping newer than 3.8.
  • Privileges: sudo for system packages and a database administrator account for the initial schema and user.

Check the operating system and PHP candidate before installing:

#1 Best Overall
Sale
Compressed Air Duster,130000RPM Super Power Cordless Air Duster,Rechargeable Brushless Blower,3 Gear Adjustable Blower with LED Light,Dust Remover for Computer/House/Outdoor/Car
  • Powerful Turbo Fan:CAGIWIRU Electric Air Duster have reached speed up to 130000RPM,Can efficient remove dust and debris.With LED light and Three Adjustable Speed to meet with different cleaning tasks.
  • With Attached USB C Fasting Charging cable.Charing 3 hours,Enjoy up to 240 minutes of use on the lowest setting, For third speed can use for 25mins.with four charging options to meet with your needs.
  • Wide Application:Upgraded attached 5 different nozzles,making it suitable for a variety of scenes, such as car,pet, pc, keyboards, and other electronic devices. It also serves for office and home clean duster.
  • Handy Design & Portable:Cordless air duster electric nozzle is Light weight and small size, design and comfortable to hold and space saving, convenient to carry around. You can put it in your room or inside the car without taking up space.
  • Warranty & Support: Our Electric air duster comes with 5 years warranty and 24/7 customer service. During this period, if you have any questions,pls kindly feel free to contact us.
lsb_release -ds
apt-cache policy php
php -v

If the candidate PHP package is below 8.2, do not continue with that package set. Install a supported PHP package source for your Ubuntu release according to the Observium guide, or choose a supported Ubuntu release whose repositories provide the required version. Do not mix modules from different PHP versions.

Choose an Observium edition and installation path

Observium has a Community Edition distributed as a tarball and Subscription Editions delivered through SVN trains. Subscribers who want automated updates are directed to the stable train; current is the other subscription train.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Choice How it is delivered Best fit Update characteristic
Community Edition Tarball A fixed, manually managed installation You download and replace releases yourself
Subscription stable SVN stable train Subscribers prioritizing a conservative update stream Designed for regular SVN updates with fewer surprises
Subscription current SVN current train Subscribers who need the newest subscription code Updates arrive on the current development stream

There are also two practical installation routes:

Automated installer

The vendor script installs the normal operating-system prerequisites and lays out Observium for you. It is the quickest route on a standard Ubuntu host and is easier to repeat on another clean server, but you should still inspect the resulting package versions and configuration. Run one of these commands as written:

sudo bash <(wget -qO- https://www.observium.org/observium_installscript.sh)

or:

sudo bash <(curl -Ls https://www.observium.org/observium_installscript.sh)

After the script completes, continue with the database, Apache, user, device and scheduler sections below. The script does not replace those application-specific steps.

Manual installation

Manual installation gives you control over the exact package set and application source. Create the standard directory first:

sudo mkdir -p /opt/observium
sudo chown "$USER":"$USER" /opt/observium
cd /opt/observium

For Community Edition, download the latest Community tarball from Observium and extract it in /opt, preserving the directory name observium. For a Subscription Edition, check out the subscription train assigned to you, choosing stable or current. Avoid placing the application in a home directory: later Apache and cron instructions assume /opt/observium.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Install Apache, PHP, the database and monitoring tools

First refresh package metadata:

sudo apt update
sudo apt full-upgrade

Package names differ between Ubuntu releases because the PHP module suffix changes. Set PHPVER to the PHP 8.2-or-newer version actually provided for your release, then install the matching modules. The following pattern includes the dependency groups called for by Observium:

PHPVER=8.3
sudo apt install apache2 mysql-server mysql-client 
  php${PHPVER} php${PHPVER}-cli php${PHPVER}-mysql 
  php${PHPVER}-gd php${PHPVER}-bcmath php${PHPVER}-mbstring 
  php${PHPVER}-curl php${PHPVER}-apcu php${PHPVER}-snmp 
  snmp snmpd fping rrdtool graphviz imagemagick 
  python3-mysqldb

Change 8.3 to the installed version; for example, do not install PHP 8.3 modules on a host whose Apache module is PHP 8.4. If your release uses a different package naming convention, use the equivalent packages shown by apt search php and confirm the resulting version with:

Rank #2
EVEO® Screen Cleaner Spray Kit (Streak-Free) TV Screen Cleaner for Smart TV, Lcd, LEd, Oled | Computer Screen Cleaner Spray and Wipe Microfiber Cloth - TV, Monitor, Laptop, iPad, Car - 6.7oz 1 Pack
  • Screen Cleaner is Your Screen’s New Bestfriend! - EVEO is proud to present a screen cleaner that’s perfectly suited for your TV. Meet your new screen cleaner, computer screen cleaner, laptop cleaner, iPad cleaner, Macbook,tv cleaner or any other electronic device. Our screen cleaner spray and wipe along with the included plush microfiber cloth, easily removes dust, fingerprints & other smudges on the screen’s surface. Clean effectively for a streak-free screen
  • Gentle on your Screens - Our screen cleaner spray and wipes is compatible to be used even for the most sensitive LCD, LED, CRT, and OLED screens in proper use. Be at ease knowing that this product is compatible with all the major brands: LG, SONY, Samsung, Sharp, iPad, iPhone, Android screens, Kindle, PC monitors - we’ve got you covered! Can be used as LCD screen cleaner, tv cleaner, smart tv screen cleaner, and more
  • Premium Super Soft Plush Microfiber Cloth - Included in this efficient screen cleaning kit. This screen cleaner spray and wipe has our signature plush microfiber cloth specially designed to comply with screens and monitors and leave them streak-free. Has been shown to effectively absorbs stubborn stains, zero streaks, and no fiber shedding. Always use this together with our screen cleaner for the best results
  • Easy-to-Use Screen Cleaner Kit + microfiber cleaning cloth - The EVEO Screen Cleaning Kit will easily be your new favorite tool when it comes to taking care of the things you love most, quick and easy solution for a streak-free screen. Simply screw on the sprayer gun on the screen cleaner bottle. Spray the cleaning liquid onto the microfiber cloth, then wipe the screen until desired cleanliness & shine is achieved.
  • Quality Screen Care Kit Worth Purchasing - Enjoy a convenient Screen Cleaner anytime, anywhere you need it. Your satisfaction is our top priority. We stand behind the quality of our products and that’s why, you shouldn’t be worrying at all. We manufacture the Best Screen Cleaner. and can be used for laptop cleaning kit, laptop screen cleaner, tv screen cleaner for smart tv. MacBook screen cleaner, monitor cleaner or screen cleaner spray for electronic devices with microfiber cleaning cloth
php -v
php -m | grep -E 'apcu|bcmath|curl|gd|mbstring|mysqli|snmp'

Enable and start the services:

sudo systemctl enable --now apache2
sudo systemctl enable --now mysql

Net-SNMP tools are used to test and query devices. The snmpd daemon is not required for Observium to poll remote devices, but installing the package supplies the standard SNMP utilities. Configure a local SNMP agent only if you also intend to monitor this Ubuntu server through SNMP.

Create the Observium database and application configuration

Use a strong, unique database password. The following SQL creates a local database and account; replace the example password before executing it:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
sudo mysql
CREATE DATABASE observium CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'observium'@'localhost' IDENTIFIED BY 'Use-a-long-unique-database-password';
GRANT ALL PRIVILEGES ON observium.* TO 'observium'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Enter the Observium directory and copy the supplied configuration template:

cd /opt/observium
cp config.php.default config.php
sudo nano config.php

Set the database values in config.php to match the account you created:

$config['db_extension'] = 'mysqli';
$config['db_host']      = 'localhost';
$config['db_user']      = 'observium';
$config['db_pass']      = 'Use-a-long-unique-database-password';
$config['db_name']      = 'observium';

Keep this file readable by the account that runs the Observium commands, but do not expose it through the web server. The document root will be the html subdirectory, not the application root.

Initialize or upgrade the database schema:

cd /opt/observium
./discovery.php -u

The installation guide notes that some SQL revision messages can be acceptable during this operation. Treat a command that exits with a fatal error differently from a warning: check the database credentials, confirm that the database exists, and rerun the command after correcting the problem.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Create the directories used for logs and RRD files, and give Apache ownership of the RRD directory:

mkdir -p logs rrd
sudo chown www-data:www-data rrd

RRD files contain the time-series data used for graphs. If Apache cannot write to /opt/observium/rrd, discovery may succeed while graph data remains empty.

Rank #3
BladeHawks RGB Gaming Mouse Pad Extra Large Extended 31.5x12 Inch-Black
  • 【Large size】:Measuring 800 x 300 mm/ 31. 5×12 inches, which is wider and taller than others. Large mouse pad can perfectly fit your keyboard and mouse of any size, and there is also ample space for peripherals such as phones, tablets, etc.
  • 【LED backlight mouse pad】:Blade Hawks RGB mouse pad provides 7 static modes and 7 dynamic modes will give you the options you are looking for. Power-off memory function remembers the last lighting mode you selected. The super glow fiber Chroma will give you a colorful gaming setup that you want.
  • 【Anti-slip rubber base】:Made from Natural rubber, this gaming mousepad will firmly grip your desktop, allowing you to enjoy the ultimate precision in the games you are most passionate about. It also comes with a texture that enhances this ability even further.
  • 【Smooth and waterproof surface】: Micro-textured cloth surface, for extremely precise mouse control and a smooth movement. When liquid splashes on the gaming mouse pad, it forms water droplets and slides down. Will not delay your work or gameplay.
  • 【Plug and play】: This mouse and keyboard pad is powered by USB, plug and play, no driver required. One button control light modes. Press one time to change the lighting mode, press twice to change the brightness, press and hold about 3 seconds turn ON/OFF.

Configure Apache to serve Observium

Observium must serve /opt/observium/html. You can use the default Apache virtual host on a dedicated monitoring server or create a separate virtual host when the machine hosts other sites. A dedicated virtual host gives clearer isolation and makes it easier to add a hostname and TLS configuration later; the default host requires fewer files.

Default-host configuration

Edit the default virtual host:

sudo nano /etc/apache2/sites-available/000-default.conf

Set its document root to the Observium web directory and allow rewrite rules:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
<VirtualHost *:80>
    DocumentRoot /opt/observium/html

    <Directory /opt/observium/html>
        DirectoryIndex index.php
        Options FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

If you create a dedicated file instead, use the same DocumentRoot and Directory block, enable it with a2ensite, and disable any host that would otherwise capture the same name.

Enable the correct Apache modules

Disable the event MPM, enable the prefork MPM, enable the PHP module that matches php -v, and enable URL rewriting:

sudo a2dismod mpm_event
sudo a2enmod mpm_prefork
sudo a2enmod php8.3
sudo a2enmod rewrite
sudo apache2ctl configtest
sudo systemctl restart apache2

Replace php8.3 with the module for your installed PHP version. A successful Syntax OK from apache2ctl configtest should precede the restart. If Apache reports that the PHP module does not exist, list available modules with ls /etc/apache2/mods-available/php*.load, install the matching package, and repeat the enable step.

Create the first administrator

Observium’s command-line utility creates the first login. Use an administrator level of 10, as in this example:

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
cd /opt/observium
./adduser.php observiumadmin 'Use-a-long-unique-login-password' 10

Choose a password that is different from the database password. Open the server’s address in a browser and sign in with this account. If the login page does not appear, check Apache’s error log, confirm that /opt/observium/html/index.php exists, and verify that the PHP module is enabled.

Add an SNMP device

Prepare the target device first. Enable SNMP, permit the Ubuntu server’s source address, and note the device hostname or IP address, SNMP version and community. The command below adds an SNMP v2c device:

Rank #4
Sale
Vaydeer Wrist Rest for Keyboard and Mouse, Computer Ergonomic Wrist Support Pad, Soft Memory Foam Arm Cushion for Desk, Palm Hand Office Laptop Typing
  • 【Softer and More Comfortable】Vaydeer wrist rest has unique diamond pattern, which is the combination of softness and aesthetics. The materials of wrist rest are improved into higher quality memory foam and covered with silky smooth lycra. The computer wrist rest makes you as comfortable and cushiony as like rest your wrists on clouds.
  • 【Ergonomic Wrist Saver】The wrist rests for keyboard and mouse comes with a 17.32×3.15×0.83 inch keyboard wrist pad and a 5.94×3.15×0.83 inch mouse wrist support. Based on ergonomic design, the unique concave shape is the perfect fit for your wrist joints. The wrist rest pad fits most computer keyboards and laptops, improve hand and wrist posture, release your wrist and arm stress.
  • 【Non-Slip Rubber Bottom】Featuring an anti-skid silicone base on the bottom, this wrist keyboard support stays firmly in place on your desk, preventing the padding from sliding around, ensuring stable and consistent wrist support during extended computer sessions.
  • 【Better Experience & Pain Relief】Our keyboard arm rest is beneficial to alleviate the soreness caused by direct contact and friction between your arm and a hard desk surface, reducing the risk of wrist fatigue or carpal tunnel. The soft texture of memory foam can evenly distribute the pressure around your wrists and provide good support with just enough give.
  • 【Helpful in Multiple Scenarios】Whether you're working, studying, writing, typing, gaming, this keyboard and mouse rest combo is an essential accessory to add comfort and support to your hands and wrists. It’s also a great gift for men, women, family, friend, coworker, gamer, teacher, etc.
cd /opt/observium
./add_device.php router.example.net 'Replace-with-the-device-community' v2c

Use the exact community configured on the device. A typo produces an unreachable device even when DNS and routing work. Test the credentials from Ubuntu before troubleshooting Observium:

snmpwalk -v2c -c 'Replace-with-the-device-community' router.example.net 1.3.6.1.2.1.1

The walk should return standard system-object values. If it times out, check UDP 161 filtering, the device’s SNMP access list, the hostname resolution and the community. If it returns an authorization error, correct the SNMP configuration rather than changing Observium permissions.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Run discovery and polling manually

Perform an initial discovery and poll so you can see errors immediately instead of waiting for cron:

cd /opt/observium
./discovery.php -h all
./poller.php -h all

Discovery identifies interfaces, sensors, storage and other entities. Polling then collects current values and writes the time-series data used by the graphs. Run discovery again after a device configuration change that adds or removes interfaces; routine measurements are handled by the poller.

Look at the device page after the commands finish. A healthy device should show discovered ports and sensors, a recent poll time and graph data after enough samples have accumulated. Command-line errors usually identify the failing layer: SNMP reachability, PHP extensions, database credentials, permissions or RRD writing.

Schedule the five-minute poller

Observium operates on a fixed poller frequency of five minutes, or 300 seconds. Configure /etc/cron.d/observium so the poller-wrapper runs every five minutes; the minute field is */5:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
sudo nano /etc/cron.d/observium
*/5 * * * * root /opt/observium/poller-wrapper.py

Use the poller-wrapper command and options supplied by your Observium tree if that release includes a different invocation. Keep the schedule at 300 seconds rather than choosing an arbitrary interval: the application and its graph expectations are designed around that fixed frequency. Confirm that cron is running and inspect the system journal or Observium logs after the first scheduled run.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Verify the installation in layers

When something fails, test the lowest layer first instead of repeatedly rerunning the web installer.

Best Value
Sale
Under Desk Cable Management Tray No Drill, Metal Mesh Cable Management Under Desk with Clamp Mount, 2 Hole Cable Tray with Wire Management and Cord Organizer for Home Office Standing Desk
  • 【No Drill Mounted】Cable management tray can be assembled in as little as 3 minutes or less-simply. Side clips easily clampe the edge of desk, pass through the holes on the sides, and secure excess cables with baskets. Desk cable management supports inward or outward installation to meet your needs in different scenarios, and provides you with great convenience when collecting and organizing wires.
  • 【Rubber Pad Protects Desk】Wire organizer under desk built-in soft rubber pads on the clamp protect your desk from scratches, so you will not damage your furniture or office.
  • 【Sturdy and Beautiful】Cord management under desk is made of high-quality carbon steel and holds about 15 lbs. The wire basket has 2 holes on each side of the tray to enable your cables to pass freely. Cable baskets are suitable for desk thickness use from 0.4" to 2.4".
  • 【Space Saving & Keep Organized】Desk cable management tray holds all your power cords, outlet strips, USB hubs and computer transformers hidden from your feet, and the data cables will not enter the vacuum cleaner to keep your desk clean and tidy. Desk wire organizer is also suitable for use in the kitchen and outdoors.
  • 【Reduce Safety Risks】Cable tray under desk keeps all plugs away from your kids, no more worry about tripping. Using 2 holes wire tray saves extra space, helps you easily cabling and wire protection. The mesh design is not easy to accumulate dust, but avoids safety accidents caused by messy wires.

Operating system and services

  • systemctl status apache2 should show Apache active.
  • systemctl status mysql should show the database active.
  • php -v should report PHP 8.2 or newer.
  • command -v snmpwalk fping rrdtool should return paths for the monitoring utilities.

Database and schema

  • Log in with mysql -u observium -p observium to confirm the account and password.
  • Run ./discovery.php -u from /opt/observium after any schema-related correction.
  • Check that config.php names the same database, user and host created in MySQL.

Apache and PHP

  • Run sudo apache2ctl configtest before every restart.
  • Confirm the document root is exactly /opt/observium/html, not /opt/observium.
  • Confirm mpm_prefork, the matching PHP module and rewrite are enabled.
  • Check that www-data can write to /opt/observium/rrd.

SNMP and polling

  • Use snmpwalk from the Observium host to separate network or device errors from application errors.
  • Run ./discovery.php -h all and ./poller.php -h all manually and read the first reported error.
  • Check that the cron file is readable, the wrapper path exists and the five-minute schedule has elapsed.

Updates, permissions and operational hygiene

Keep the application and its dependencies aligned with the Ubuntu release. Subscription Edition installations should be updated frequently: the guidance calls for at least monthly updates, preferably once or twice per week, or daily when automated SVN updates are used. Test an update on a maintenance window, retain a database backup and verify discovery and polling afterward.

For Community Edition, download the next tarball and follow the documented upgrade procedure rather than overwriting a running tree blindly. For Subscription Edition, update the selected SVN train consistently; do not switch between stable and current without understanding the resulting code and database changes.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Restrict write permissions to the directories that need them. Apache needs to write RRD data and application logs, while configuration files containing database credentials should remain protected. Back up the database, config.php, custom definitions and the rrd directory before an upgrade or server migration.

Common installation mistakes

Using an unsupported PHP version

Ubuntu’s default PHP differs by release. Installing a module from another release can leave Apache unable to load PHP or leave Observium missing required extensions. Check the version first, install all modules with the same suffix, and enable that exact Apache module.

Pointing Apache at the wrong directory

The web root is /opt/observium/html. Serving the parent directory can expose configuration and command-line files, while serving a different path produces a blank or missing application. Correct DocumentRoot and the matching Directory block.

Skipping schema initialization

A working login page does not prove that the database schema is current. Run ./discovery.php -u before adding devices, and rerun it after an upgrade that changes the schema.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Polling too often or not at all

Use the fixed five-minute interval. A missing cron entry leaves graphs empty; an incompatible custom interval can make the poller behave differently from the documented schedule. Test one manual poll, then verify the cron execution.

Assuming an SNMP credential problem is an Observium problem

Validate the same hostname, version and community with snmpwalk. Fix routing, firewall rules, SNMP access lists or device credentials before changing application files.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.