Cacti Network Grapher Virtual Appliance

cactiWow, it has been a long time since I have posted! It has been a really long time since I posted my MRTG Virtual Appliance. Today I hope to make up for some of that with this post of my Cacti RRDTool based Virtual Appliance. This virtual appliance is based on CentOS 67 and is designed to be lightweight, and stable. It has only a minimum of tools installed to make Cacti work.

The OS is set to DHCP, and Cacti is installed.

The username at the console, and passwords set for everything should be ‘cacti’ this will include root and mysql. **With the exception of the Cacti admin user, which has the password “Cactipw1!” (no quotes)

Cacti is all configured up and includes some plugins, which are not installed by default. It also has some additional host templates for Palo Alto firewalls, Cisco ASA Firewalls, F5 BIG-IP load balancers, and a few other things I have found useful over the years. [UPDATE] the new Cacti 1.x does not yet have all the old templates in place.

There is not a ton of documentation, as I simply have not had time. I have put together a minimal troubleshooting section below. If you are already familiar with Cacti it should be a breeze.  If there are any questions, please leave a comment, and I can assist and update as needed.

*** To upgrade a previous version of the appliance follow my step by step instructions.

[Update 4/2/2018]

  • Upgraded to new Cacti and Spine v1.1.37 released 3/25/2018
  • Updated all plugins

CentOS7 Appliance with v1.1.37 Cacti, OVA is ~2.2g


[Update 2/7/2018]

  • Upgraded to new Cacti and Spine v1.1.34 released 2/5/2018
  • Updated all plugins
  • Upgraded CentOS
  • Upgraded PHP to v7

LEGACY – CentOS7 Appliance with v1.1.34 Cacti, OVA is ~2.2g


[Update 1/31/2018]

  • Upgraded to new Cacti and Spine v1.1.33 released 1/22/2018
  • Updated all plugins
  • Misc other tweaks

LEGACY – CentOS7 Appliance with v1.1.33 Cacti, OVA is ~1.9g

[Update 1/5/2018]

  • Upgraded to new Cacti and Spine v1.1.30 released 1/3/2018
  • Back by popular request! Added syslog plugin. Configured to log to new syslog db.
  • Updated all plugins
  • Added a few misc officially supported plugins
  • Misc other tweaks

LEGACY – CentOS7 Appliance with v1.1.30 Cacti, OVA is ~1.9g

[Update 12/28/2017]

  • Upgraded to new Cacti and Spine v1.1.29 released 12/27/2017
  • Downgraded VM hardware version to v8 for compatibility all the way down to ESX v5.0. Let me know if there are any issues but it is working in ESX v6.5 for me.
  • Misc other tweaks

LEGACY – CentOS7 Appliance with v1.1.29 Cacti, OVA is ~1.9g

[Update 11/20/2017]

  • Upgraded to new Cacti and Spine v1.1.28 released 11/19/2017
  • Added Palo Alto Networks (PAN) host template
  • Added F5 BigIP host template
  • Added Advanced Ping latency graph
  • Misc other tweaks

LEGACY – CentOS7 Appliance with v1.1.28 Cacti, OVA is ~1.6g

[Update 10/17/2017]

  • Upgraded to new Cacti and Spine v1.1.26 release 10/15/2017

LEGACY – CentOS7 Appliance with v1.1.26 Cacti, OVA is ~1.6g


[Update 8/29/2017]

  • Upgraded to new Cacti and Spine v1.1.20 release 8/25/2017

LEGACY – CentOS7 Appliance with v1.1.20 Cacti, OVA is ~1.6g


[Update 6/13/2017]

  • Upgraded to new Cacti and Spine v1.1.13 release 7/13/2017

LEGACY – CentOS7 Appliance with v1.1.13 Cacti, OVA is ~1.6g


[Update 6/13/2017]

  • Upgraded to new Cacti and Spine v1.1.10 release 6/11/2017

LEGACY – CentOS7 Appliance with v1.1.10 Cacti, OVA is ~1.6g


[Update 6/5/2017]

  • Upgraded to new Cacti and Spine v1.1.9 release 6/4/2017
  • Upgraded plugins to current versions

LEGACY – CentOS7 Appliance with v1.1.9 Cacti, OVA is ~1.6g

[Update 5/22/2017]

  • Upgraded to new Cacti and Spine v1.1.7 release 5/21/2017
  • Adjusted logrotate settings
  • Installed SmokePing and setup a couple sample targets. Can be accessed from browser at /smokeping/smokeping.cgi

LEGACY – CentOS7 Appliance with v1.1.7 Cacti, OVA is ~1.5g


[Update 5/8/2017]

  • Upgraded to new Cacti v1.1.6 release 5/7/2017
  • Upgraded to new Spine v1.1.6 release 5/7/2017
  • Fixed Spine permissions issue

LEGACY – CentOS7 Appliance with v1.1.6 Cacti, OVA is ~1.4g
[Update 4/25/2017]

  • Upgraded to new Cacti v1.1.4 release 4/23/2017
  • Building upgrade steps commands that can be used to upgrade exsiting install in place. Will post shortly.

LEGACY – CentOS7 Appliance with v1.1.4 Cacti, OVA is ~1.4g

[Update 4/11/2017]

  • Upgraded to new Cacti v1.1.2 release 4/2/2017
  • Set SELinux to permissive permanently

Legacy – CentOS7 Appliance with v1.1.2 Cacti, OVA is ~1.4g
[Update 3/20/2017]

  • Upgraded to new Cacti v1.1.0 release 3/17/2017
  • Added VMWare tools to Centos

Legacy – CentOS7 Appliance with v1.1.0 Cacti, OVA is ~1.4g

[Update 2/9/2017]

All new appliance! Now based on CentOS 7 Minimal and the newly released Cacti v1.0.1. This is a great new version of Cacti with many new features, steamlined interface, and built in plugins.

  • Cacti now at the newest 1.0.1, released 2/5/2017
  • Changed to 1m polling as default
  • Added in officially released plugins

Legacy – CentOS7 Appliance with v1.0.1 Cacti, OVA is ~1.1g

[Update 2/7/2017]

I am working on building up the template with the new version of Cacti v1.0.1! pretty exciting stuff they have put together. Check back shortly for the new appliance.

[Update 6/3/2016]

  • Cacti now at the newest 0.8.8.h, released 5/8/2016

Legacy – v2.4 Cacti Appliance Download OVA is ~1.4g
SHA1 checksum: e34340acf60185a7a0c3089e3451191b110db110

[Update 4/11/2016]

  • Cacti now at newest version 0.8.8g, released 02/21/2016
  • Updated CentOS

Legacy – v2.3 Cacti Appliance Download OVA is ~ 1.5g

[Update 8/14/2015] Updates to the appliance.

  • Cacti now at newest version 0.8.8f, released 07/19/2015
  • Resolved the syslog plugin retention issue. The fix is to enable syslog plugin first, then enable all other plugins.
  • Graph zoom issue resolved in cacti 0.8.8f.

Legacy – v2.2 Cacti Virtual Appliance Download OVA is ~1.1g

Please let me know if you have any troubles or suggestions.

[Update: 7/30/2015] I have found that in the current setup syslog will not respect your retention schedule. It seems there is a conflict with another plugin. I am in the process of figuring out which, and then will try and troubleshoot.

[Update: 7/8/2015] Updated many things in the appliance.

  • Cacti now at newest version 0.8.8d, released 06/09/15
  • added Discovery plugin
  • added Syslog plugin
  • added default traffic template
  • added FortiGate template
  • minor tweaks
  • OVA file should now import directly to VMWare

Please let me know if you have any issues, or other suggestions!

Legacy – v2 Cacti Virtual Appliance Download OVA is ~ 780m

Legacy  – v1 Cacti Virtual Appliance download OVA is ~630m


Network interface not showing up after you import the template?
Couple things to check;
Does /etc/udev/rules.d/70-persistent-net.rules exist?
If so, lets move it out of the way (this command moves it to the users home directory);
sudo mv /etc/udev/rules.d/70-persistent-net.rules ~/
Now lets check the interface configuration;
cd /etc/sysconfig/
The “network” file here will be where you control your systems hostname, its default hostname is “cacti-template”, change it freely.  If you don’t mind, you can ignore this file.
cd network-scripts/
In this directory you will have your network interface configuration files;
Loopback = ifcfg-lo
Primary Interface = ifcfg-eth0
If your network interface is not showing up, you may have a MAC address issue.  You will need to update the ifcfg-eth0 configuration with your actual MAC address.  The MAC address field in the ifcfg-eth0 configuration file is;
Get the mac address of the physical network adapter from the virtual machine’s settings, and simply replace the existing entry in ifcfg-eth0 with that MAC address.
Once the /etc/udev/rules.d/70-persistent-net.rules file is moved out of the way, and the ifcfg-eth0 configuration is updated, reboot the system and you should have networking.



223 thoughts on “Cacti Network Grapher Virtual Appliance”

  1. Hi Kevin, any instructions on how to enable or configure the flowview I new to linux but I can follow a well written procedures

  2. Hi,
    after change TimeZone all graph are empty.
    I also change timezone in PHP.ini fie but graph still empty.
    What can I do ?
    Change in the sql has destroyed me the cacti

  3. hello i use your system and it works great. what my prob. is that I can not change the time. do I change the system time and the time zone are no current info in graphs displayed? Can you tell me where exactly I have to make the change.
    Kind regards

  4. hello I have a problem as soon as I change my time zone is no more graphing displayed?
    timedatectl set-timezone Europe / Berlin

  5. Hello Back to Kevin’s comment on adding a virtual drive instead of extending it. How do I transfer the Cacti installation to the new drive? Please advise.

  6. Great appliance! loving it and the pre canned settings are awesome. But any reason why keeps trying to hit it’s internal IP every second?

  7. Hi,
    after change TimeZone all graph are empty.
    I also change timezone in PHP.ini fie but graph still empty.

  8. Okay, so the final solution is issue following command.

    xfs_growfs /dev/mapper/centos_cactitemplate-root

    Looks like XFS is the default filesystem in CentOS.

    Now df -h shows new size.

  9. Hi Kevin,

    I thought I was able to extend the existing logical partition with details as below, to about 40GB. Any one with little experience with Linux, has to be ultra careful to not lose any data. So they should better snapshot the VM and / or take DB backup etc.., if they will try to follow my process.

    1. Shut down the Cacti VM.
    2. Under edit settings of VM, I then changed hard drive size from 8GB to 40GB , selecting hard disk, change provisioned size to 40GB thick. I also increased CPU to 2 vCPUs and RAM to 2GB.
    3. Power on the Cacti VM and SSH into it using root.
    4. lsblk
    5. vgdisplay to check existing filesystem size allocation.
    6. fdisk /dev/sda
    Press p to print the existing partition table details and note it,
    Press d and then 2 to delete existing second partition.
    Press n and then p and then 2 to create new second partition. Enter to accept default for first sector and then again Enter to accept default for last sector.
    Press t then 2 then 8e to change system partition 2 , Linux LVM, and then w to write / save.
    7. Now physical drive has been expanded.
    8. to add this extra available size to the logical drive,
    lvextend -L39G /dev/mapper/centos_cactitemplate-root
    9. vgdisplay and lvdisplay to verify. This shows new expanded partition size, but somehow df -h still showed me the same.

    I am not sure if I simply add the second drive to the OS, it can be used by Cacti.


  10. In my experience it is easier to simply add another virtual disk rather than expanding the original. I am not an expert at that part so I would suggest a search for adding disks in centos7

  11. Hi Kevin, when I installed the OVA, it created a 8GB disk. is there a way to increase disk space for OVA installed VMs? I am not using it in commercial setup, just installed to learn it, and I tried to increase disk space under VM settings, it takes it there, but doing a df -H at Cacti shell still shows the same 7.2G disk etc..

    Thanks much,

  12. Hi Alvaro Arbuet ,

    With virtual machines, on CentOS7, you will not see ifcfg-eth0 file. Instead you will see ifcfg-esp0s3 and ifcfg-lo0. And if you will do ifconfig, you may not find esp0s3, instead there may be ens160 etc. To do static IP, you will create a file under /etc/sysconfig/network-scripts named ifcfg-ens160. If you will do vi ifcfg-ens160 from within network-scripts directory, it will auto create this file, which will be blank. Then press i and you will see at the bottom –insert–, so now you can type following (the Hwaddr is the mac address as you will see under cacti VM settings for the NIC, this is virtual mac assigned by ESXi or KVM etc..

    Now press Esc and then press :wq! to save and exist.

    Technically now you are supposed to restart the service via “system restart network” but I get error. So I just did a reboot at the command line and when it restarts, you will be pinging the new static IP.

    Hope this helps,

  13. hi kevin, how can I change dhcp to static ip? I try change config on ifcfg-ens*** but dont do any

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.