Debian/Ubuntu Installation
Compatible Distributions
This guide is compatible with the following distributions. We recommend using the most recent to avoid compatibility issues.
- Ubuntu 20.04, 22.04, 24.04
- Debian 10, 11, 12
Automated Installation
Observium has an automated install script for use on Ubuntu and Debian systems.
Using the automated installation script is as easy as downloading it, running it and answering a few simple questions, start with:
Text Only | |
---|---|
1 2 3 |
|
You may need to install wget on bare installations
Text Only | |
---|---|
1 |
|
Manual Installation
If you'd prefer to do a manual installation, you can follow the manual install guide below.
Install Dependencies
Install the packages we need to run Observium:
Distribution Versions
We strongly recommend using the latest version of your distribution.
On Ubuntu 24.04 we install PHP 8.3
On Debian 12 we install PHP 8.2
On Ubuntu 22.04 we install PHP8.1
On Debian 11 we install PHP 7.4
On Debian 10 we install PHP 7.3
Text Only | |
---|---|
On Ubuntu 22.04 we install PHP 7.4
Virtual Machines
If you want to be able to monitor libvirt virtual machines, install libvirt-bin on ubuntu or libvirt-clients on debian (beware: this pulls in a whole bunch of dependencies you otherwise probably wouldn't need on your server):
Text Only | |
---|---|
1 2 3 4 5 |
|
Download Observium
First, create a directory for Observium to live in:
Text Only | |
---|---|
1 |
|
Observium Editions
Observium comes in two editions, an Open Source Community Edition released on a biannual cycle, and a Subscription Edition with additional features, rapid bug fixes and feature improvements on a daily basis and an easy to use SVN-based update mechanism.
Observium Community Edition
If you would like to install the Community Edition, please install using the most recent .tar.gz release.
Download the latest .tar.gz of Observium and unpack:
Text Only | |
---|---|
1 2 |
|
Observium Subscription Editions
If you have a valid Observium subscription, please use one of the automated SVN release repositories.
We recommend the stable
train for people who intend to use automated updates to keep their Observium installation up to date.
For the current
train:
Text Only | |
---|---|
1 |
|
For the stable
train:
Text Only | |
---|---|
1 |
|
Configuration
Change into the new install directory:
Text Only | |
---|---|
1 |
|
Create the MySQL database and user
You will see the MySQL version upon logging on to the MySQL monitor with mysql -u root -p
.
MySQL Credentials
Here you'll set the username and password for Observium to access the database. The username is observium and the password will be the text you insert in place of
Configuration
Copy the default configuration file and edit it for your system:
Text Only | |
---|---|
1 |
|
Edit config.php. Change the options to reflect your installation.
MySQL Credentials
You must change the MySQL username and password using the settings from the previous step. Most other settings can be left as default.
Setup the MySQL database and insert the default schema:
Bash | |
---|---|
It is OK to have some errors in the SQL revisions
Create required directories
Create the directory Observium will store its logs in:
Text Only | |
---|---|
1 |
|
Alternatively you can create a directory somewhere else and point the log_dir directive in the configuration to that directory.
Create the directory to store RRDs in:
Text Only | |
---|---|
1 2 |
|
Apache Configuration
Ubuntu newer than 14.04 and newer versions of Debian use Apache 2.4. You can check your version of Apache with the following command:
dpkg -l apache2
If you're using Apache 2.4 (Ubuntu 14.04 or newer Debian), use this to set the default virtual host :
The required file is typically /etc/apache2/sites-available/000-default.conf
.
If you're using Apache 2.2 the server will be running only Observium, change /etc/apache2/sites-available/default
to :
Non-dedicated server with virtual host
Alternatively you can create a vhost just for Observium (see the bottom of the page)
Enable php mcrypt module if it's installed (ignore if it isn't):
Text Only | |
---|---|
1 |
|
On newer distros (Ubuntu 16.04 and above), enable PHP and switch to mpm_prefork
. The php version will match that installed at the top of the guide.
Text Only | |
---|---|
1 2 3 |
|
Enable mod_rewrite
for Observium's URLs:
Text Only | |
---|---|
1 2 |
|
Add Initial User and Device
Add a first user, use level of 10 for admin:
Text Only | |
---|---|
1 |
|
Add a first device to monitor:
Text Only | |
---|---|
1 |
|
Perform Initial Discovery and Poll
Do an initial discovery and polling run to populate the data for the new device:
Text Only | |
---|---|
1 2 |
|
Add cron jobs, create a new file /etc/cron.d/observium
with the following contents:
Cron Usage
The below example includes a username, so will only work in /etc/crontab or /etc/cron.d/observium. It will NOT work in a user crontab edited with crontab -e without removing the username.
Polling Interval
Observium operates on a fixed poller frequency of 5 minutes or 300 seconds. The poller-wrapper process must be run at this frequency will NOT work otherwise.
Poller Performance
Please note running four poller instances is good for initial testing, but do check the Performance Tuning page for further performance enhancing options once you get going.
You should now be able to browser to your server's IP address or hostname and access the Observium web interface.
Updating
Updating Observium has been designed to be as quick and painless as possible. Using our SVN delivery mechanism, it can even be automated. Because we have a rapid development and model, we recommend that you update frequently, at least once per month, though once or twice per week is better and many users update daily via an automated CRON job.
See Updating the Subscription Edition for a short explanation on how to update the Subscription Edition of Observium.
Apache Virtual Host
If you want to create a proper virtual host, something like this:
Text Only | |
---|---|
1 2 3 4 5 6 7 8 9 10 |
|
You'll need to create an /opt/observium/logs
directory with permissions so that Apache can write to it.
Debian
If you're using Debian, due to the decision of Debian to no longer ship SNMP MIBs with the distribution, you need to direct the snmp utilities to use Observium's MIBs in order to suppress some annoying error output.
Remove this line in /etc/snmp/snmp.conf:
Text Only | |
---|---|
1 |
|
Replace it with this :
Text Only | |
---|---|
1 |
|
This is one of the many self-imposed Debian issues that make Ubuntu generally a better choice for overall maintainability.
Problems
When running poller.php
or discovery.php
you may see a lot of notices regarding undefined indexes, variables and offsets.
To hide these notices you can do the following:
Text Only | |
---|---|
1 |
|
Find the line containing:
Text Only | |
---|---|
1 |
|
Change this to:
Text Only | |
---|---|
1 |
|
If there are problems with this installation tutorial, please make sure you've followed the install guide closely, check the FAQs, then join our IRC channel or Mailing Lists and ask for help.