ManagedCloud Servers

High performance handled and monitored by us 24/7/365. A complete solution to provide you with our in house expertise 24/7 tailored to your specific needs. We'll setup a bespoke server for your site using the latest tehnologies so you can get the most out of your hardware and get your website loading quickly and reliably. Find out more..

cPanelCloud Servers

Recommended - High performance cloud servers with no technical knowledge required. If you're hosting multiple websites already and you're looking to consolidate, or if you're looking to isolate yourself from the shared hosting environment but you don't have the time or knoweldge to manage a server, then the Managed cPanel Servers are for you. Find out more..

UnmanagedCloud Servers

Our unmanaged range gives you complete control at rock bottom prices and our cloud platform boasts super fast multipath 40Gb/s network, the latest Intel Xeon V3 CPUs and enterprise grade redundant SSDs. If you're a sysadmin look no further, we offer some of the best specification to price ratio servers available. Find out more..

Need Web Hosting? Try ours, it's fast, reliable and feature loaded with support you can depend on. From £1.60 / month.

View Plans

Monitor Your Linux Machine Using Netdata

Netdata is an open source tool to monitor your Linux machine which provides real-time statistics about your server uses in graphs and charts. Netdata can be installed on any system without disrupting any other application.

Netdata is extremely lightweight application and uses very less CPU cycles and memory used by Netdata is also extremely less which is nearly 40MB or less. While running Netdata does not uses disk I/O, but all the data is saved on RAM, while exiting the data is written in database and reloads the data when it starts. The Netdata web interface is very responsive and requires no flash plugin to display the data. The UI of Netdata is does not clutter things up. Although it has hundreds of charts and graphs, the most necessary ones are shown first.

The main features of Netdata are:

  • Responsive Bootstrap based dashboard
  • Very fast and light weight, uses very less resources
  • No configurations and dependencies
  • Monitor almost everything

In this guide we will learn to install Netdata on various platforms:

Requirements

Netdata does not need special hardware requirements and it can be installed on any system without the need for much RAM. In this guide we will use a non root account with sudo privileges to run the commands. If you are logged in as root user, omit sudo command from all the commands.

Install Netdata

Before installing any package it is important to update your system. For Ubuntu/Debian based system run:

    sudo apt-get update

For CentOS/RHEL systems:

    yum -y update

Now install the required packages using the following command, you can either install packages for having a basic netdata installation, which includes system monitoring and many applications, without mysql / mariadb, named, hardware sensors and SNMP. Run the following command.

    curl -Ss 'https://raw.githubusercontent.com/firehol/netdata-demo-site/master/install-required-packages.sh' >/tmp/kickstart.sh && bash /tmp/kickstart.sh netdata

Or you can install all the required packages for monitoring everything through Netdata.

    curl -Ss 'https://raw.githubusercontent.com/firehol/netdata-demo-site/master/install-required-packages.sh' >/tmp/kickstart.sh && bash /tmp/kickstart.sh netdata-all

The above commands will detect your operating system and will build dependencies according to your platform. You will see following output:

    Loading /etc/os-release ...

/etc/os-release information: NAME : Ubuntu VERSION : 14.04.4 LTS, Trusty Tahr ID : ubuntu ID_LIKE : debian VERSION_ID : 14.04

We detected these: Distribution : ubuntu Version : 14.04 Codename : 14.04.4 LTS, Trusty Tahr Package Manager : install_apt_get Packages Tree : debian Detection Method: /etc/os-release Default Python v: 2

The following command will be run:

>> IMPORTANT <

Press enter to run it and it will install all the dependencies, according to your selection.

Now install Netdata using the following commands, applicable for both Ubuntu and RHEL based system.

    git clone https://github.com/firehol/netdata.git --depth=1
    cd netdata

The above command will download the Netdata, you can now build the software and install it using the following command.

    sudo ./netdata-installer.sh

You will see following output.

    Welcome to netdata!
    Nice to see you are giving it a try!

You are about to build and install netdata to your system.

It will be installed at these locations:

- the daemon at /usr/sbin/netdata - config files at /etc/netdata - web files at /usr/share/netdata - plugins at /usr/libexec/netdata - cache files at /var/cache/netdata - db files at /var/lib/netdata - log files at /var/log/netdata - pid file at /var/run

This installer allows you to change the installation path. Press Control-C and run the same command with --help for help.

Press ENTER to build and install netdata to your system >

Press enter button to proceed further. The installer will compile the source and install it, if successful then you will see following output.

    OK. NetData is installed and it is running.

-------------------------------------------------------------------------------

By default netdata listens on all IPs on port 19999, so you can access it with:

http://this.machine.ip:19999/

To stop netdata, just kill it, with:

killall netdata

To start it, just run it:

/usr/sbin/netdata

Enjoy!

The configuration file /etc/netdata/netdata.conf will be created for you, which holds the configurations of your Netdata demon. You can always start netdata with the following command.

    sudo /usr/sbin/netdata

To stop Netdata, you can always run the following command.

    sudo killall netdata

You can access Netdata graphs and charts by going to following link using your favorite browser.

    http://your-server-IP:19999

You will see something like shown below.

To start Netdata automatically on boot time, run the following commands in Ubuntu/Debian based machines.

    sudo cp /usr/sbin/netdata /etc/init.d/netdata
    sudo update-rc.d netdata defaults

You will see following output.

    update-rc.d: warning: /etc/init.d/netdata missing LSB information
    update-rc.d: see 
     Adding system startup for /etc/init.d/netdata ...
       /etc/rc0.d/K20netdata -> ../init.d/netdata
       /etc/rc1.d/K20netdata -> ../init.d/netdata
       /etc/rc6.d/K20netdata -> ../init.d/netdata
       /etc/rc2.d/S20netdata -> ../init.d/netdata
       /etc/rc3.d/S20netdata -> ../init.d/netdata
       /etc/rc4.d/S20netdata -> ../init.d/netdata
       /etc/rc5.d/S20netdata -> ../init.d/netdata

Now Netdata will automatically start at boot time. To start Netdata automatically on CentOS/RHEL based machine, run the following commands.

    sudo cp system/netdata.service /etc/systemd/system/
    sudo systemctl daemon-reload
    sudo systemctl enable netdata

Configuring Netdata

You can find the configuration file for data on /etc/netdata/netdata.conf also, you can view this file on your browser by going to the following link in your favorite browser.

    http://Your-Server-IP:19999/netdata.conf

You will see something like shown below.

To edit your configuration file, open your configuration file using your favorite editor.

    nano /etc/netdata/netdata.conf

You will see that all the configuration in the file is commented, so that Netdata can work on default values. You can override the values by uncommenting any value and then changing the default value from it.

In Global configuration section of the configuration file, you will see many important configurations, few of them are.

By default Netdata stores the data of past 1 hour. By storing the data of 1 hour it utilises around 10-15MB of RAM. If you want to increase limit of data it stores as history, you can override # history = 3600 by uncommenting and updating to make it history = 86400. Value of this option in given in seconds, 3600 denotes 1 hour and 86400 denotes 24 hours which is one day. You can provide any value for this according your choice.

Another important configuration is, # update every = 1. By default Netdata refreshes its graphs in every 1 second, you can change this configuration by uncommenting and updating # update every = 1 to update every = 10. If you change it 10, then graphs will be updated in 10 seconds, you can set this value according to your choice.

By default Netdata runs on port 19999, you can change it by uncommenting and updating # default port = 19999 setting to any free port you want.

Updating or Uninstalling Netdata

In future you can update your Netdata installation to the newest version by running the following commands.

    cd /path/to/netdata/files
    git pull
    sudo ./netdata-installer.sh

This will automatically download the latest version of Netdata and update it. After the update, installer will automatically start new version of Netdata.

To uninstall netdata in future, you can run the following commands.

    cd /path/to/netdata/files
    ./netdata-uninstaller.sh --force

The uninstaller will ask you to confirm all the deletions. Once done, Netdata will be successfully removed from your server.

Conclusion

In this tutorial we have installed Netdata, which is a feature rich application to monitor the server performance. You can now successfully install Netdata on both Ubuntu/Debian and CentOS/RHEL based system.

Need Web Hosting? Try ours, it's fast, reliable and feature loaded with support you can depend on. From £1.60 / month.

View Plans

Comments

  • Rj Sharma

    Hey thanks for sharing but I want to monitor multiple server in single UI. Is it possible? can we monitor linux client machine?