1) Create directory for the RAMdisk and mount it on boot mkdir /mnt/ramdisk # vim /etc/fstab tmpfs /mnt/ramdisk tmpfs defaults,size=8192M 0 0 # #before reboot, manually mount the RAMdisk mount /mnt/ramdisk 2) Create directory for RRDs backup on the HDD: mkdir /storage-pool/rrd-pool-backup/ 3) Create InitV script (to be moved to SystemD) for RAMdisk control: vim /etc/init.d/ramdisk #! /bin/sh # /etc/init.d/ramdisk # case "$1" in start) echo "Creating ZFS Pool on tmpfs" dd if=/dev/zero of=/mnt/ramdisk/rrd-pool.img bs=128k count=64000 zpool create rrd-pool /mnt/ramdisk/rrd-pool.img -f zfs set compression=lz4 rrd-pool echo "Copying files to ZFS Pool on tmpfs" rsync -av /storage-pool/rrd-pool-backup/ /rrd-pool/ echo [`date +"%Y-%m-%d %H:%M"`] Ramdisk Synched from HD >> /var/log/ramdisk_sync.log ;; sync) echo "Synching files from ZFS Pool on tmpfs to Harddisk" echo [`date +"%Y-%m-%d %H:%M"`] Ramdisk Synched to HD >> /var/log/ramdisk_sync.log rsync -av --delete --recursive --force /rrd-pool/ /storage-pool/rrd-pool-backup/ ;; stop) echo "Synching files from ZFS Pool on tmpfs ramdisk to Harddisk" echo [`date +"%Y-%m-%d %H:%M"`] Ramdisk Synched to HD >> /var/log/ramdisk_sync.log rsync -av --delete --recursive --force /rrd-pool/ /storage-pool/rrd-pool-backup/ zpool destroy rrd-pool ;; *) echo "Usage: /etc/init.d/ramdisk {start|stop|sync}" exit 1 ;; esac exit 0 4) Make InitV script executable and add it to be launched first on boot and last on shutdown: chmod +x /etc/init.d/ramdisk update-rc.d ramdisk defaults 00 99 5) Add RAMdisk periodical sync to the Cron: vim /etc/cron.d/ 2 * * * * root /etc/init.d/ramdisk sync >> /dev/null 2>&1 6) Create a directory for Observium���s RRDs and navigate Observium to store RRDs in it: mkdir -p /storage-pool/rrd-pool-backup/observium-rrd mkdir -p /rrd-pool/observium-rrd #root owns the RRD directory in the Observium vim /opt/observium/config.php $config['rrd_dir'] = "/rrd-pool/observium-rrd";