Forge Home

rsnapshot

Rsnapshot master and node configuration with auto generated and distributed ssh keys.

10,537 downloads

8,929 latest version

2.6 quality score

Version information

  • 0.3.1 (latest)
  • 0.3.0
  • 0.2.0
  • 0.1.0
  • 0.0.2
  • 0.0.1
released Apr 2nd 2015
This version is compatible with:
  • ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'ivaldi-rsnapshot', '0.3.1'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add ivaldi-rsnapshot
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install ivaldi-rsnapshot --version 0.3.1

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

ivaldi/rsnapshot — version 0.3.1 Apr 2nd 2015

#rsnapshot

##Overview The rsnapshot module allows you to setup an rsnapshot backup master and rsnapshot backup nodes. Each node is automatically added to the master and backuped using a cronjob on the master.

##Setup ###Installing a rsnapshot master server To setup a rsnapshot master server with location name dc1, add the following lines to its puppet configuration.

class { 'rsnapshot::master':
  location_name => 'dc1',
  exclusions    => ['var/spool'],
}

This will install rsnapshot, generate a ssh key pair and setup cronjobs to run rsnapshot as root.

###Adding rsnapshot nodes For every server that needs to be backed up to the previously configures rsnapshot master, add the following lines.

class { 'rsnapshot::node':
  to_location => 'dc1',
}

This will add the ssh public key of the rsnapshot master with location_name dc1 to the authorized_keys file of root, allowing rsnapshot to login from the master server. On the rsnapshot master, this will add a line to /etc/rsnapshot.conf to backup this node.

###Increasing security Optionally you might want to use a special backup user so you can disable root to login via ssh, this can be done by using the following syntax.

class { 'rsnapshot::node':
  to_location => 'dc1',
  user        => 'rsnapshot',
}

This will create the user rsnapshot on the node, give it permission to run sudo rsync and add the public key of the rsnapshot master with location_name dc1 to the authorized_keys file of root, allowing rsnapshot to login from the master server as this new rsnapshot user.