Cacti Network Grapher Virtual Appliance

cactiThis virtual appliance is based on CentOS 7 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 web ui “admin” user, which has the password “Cactipw1!” (no quotes)

The web UI username and password are “admin” and “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.

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.

 [Update 12/4/2018]

It turns out there has been some development in Smokeping after almost 4 years of quiet! New v2.7.2 is available, so I created a new Smokeping update routine and added it to the script. This will check if you have Smokeping installed, and offer to upgrade if you wish. This can be run via the same routine as the Cacti upgrade from Github below.

[Update 11/28/2018]

I have a first working version of an automated update routine for the cacti-template you can get here. You can get the instructions on how to run it here…

[Update 11/16/2018]

Hello anyone who is listening! the Cacti team is working on the new v1.2 of Cacti which is now in it’s 2nd beta release. I am working on updating the template along with this and there are a lot of changes! I’m also building an upgrade script that can be used to upgrade the appliance with little effort. (Sorry, for now it will only work on the new v1.2.x appliance) More to follow as things progress.

[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.

240 thoughts on “Cacti Network Grapher Virtual Appliance”

  1. This script will only work for upgrading the virtual appliance listed on this website. If you are using my appliance you need to be logged in as the cacti user for it to work. If you are not using my appliance to run cacti you will not be able to use this script. You will need to upgrade manually for which I direct you to

  2. I hadnt thought about it. I do love rpi and have several at my house. I might consider it if creating an image inst too complicated. I haven’t played around with that too much yet but am willing!

  3. After some new development on Smokeping to v2.7.2 I created a Smokeping upgrade script for the template and added it to the cacti routine. You can check it out at the Github link.

  4. Hi Kevin,
    Great job, did you plan also to make a img for raspbarry pi? It’s a perfect cheap low power machine to running cacti

    Thank you in advance

  5. I am not a smokeping expert, and I installed it into the template as an aside, the main point is Cacti. That said we can try a couple of things. To get the status of the smokeping service try
    systemctl status smokeping.service (to restart or stop the serive change the ‘status’ to whatever you need)
    This should give you some info regarding what is happening with the service. If the service is running ok, then try pasting the relevant part of the config you changed and I can do a stare and compare.

  6. i deployed your last ova (CentOS7 Appliance with v1.1.37 Cacti) from here:, your version(?) is “UPDATE 11-27-2018”.

    it started without a hassle, than i changed the smokeping hosts and i got no graphs anymore.
    i copied myhost3 and changed only ip.
    it had only smokeping_cgi running from perl, and looked hardly saw how smokeping had to be started or debugged.
    i checked my changes and added space befor and after the ‘=’ for the host and title. than i started smokeping from /etc/init and i run.
    i am still wondering if there is a strict identitation on the smokeping config, or if the spaces are strictly needed.
    some help on quick debugging of restarting the services cacti and smokeping would be appreciated, so i can go on configuring more hosts for my needs

  7. Hello anyone who is listening! the Cacti team is working on the new v1.2 of Cacti which is now in it’s 2nd beta release. I am working on updating the template along with this and there are a lot of changes! I’m also building an upgrade script that can be used to upgrade the appliance with little effort. (Sorry, for now it will only work on the new v1.2.x appliance)

  8. It looks good but gui works so slow. is there any way to make it normal? It takes almost 2 minutes to go on menus and graps. 🙁 could not figure out why it happens..

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

  10. 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

  11. 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

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

  13. 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.

  14. 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?

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

  16. 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.

  17. 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.


  18. 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

  19. 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,

  20. 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,

  21. 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.