vss

pdk
This module controls VSS on windows systems

Mike Murray

mikemurray86

5,193 downloads

4,381 latest version

4.6 quality score

Version information

  • 0.2.1 (latest)
  • 0.2.0
  • 0.1.0
released Oct 12th 2018
This version is compatible with:
  • Puppet Enterprise 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 4.7.0 < 6.0.0
  • windows

Start using this module

Documentation

mikemurray86/vss — version 0.2.1 Oct 12th 2018

vss

Table of Contents

  1. Description
  2. Setup - The basics of getting started with vss
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations - OS compatibility, etc.
  6. Development - Guide for contributing to the module

Description

This module adds a provider to manage Volume Shadow Copy Service (VSS) configuration on windows.

Setup

Beginning with vss

This module can reserver drive space on a specified drive and create scheduled tasks to take regular snapshots similar to what the vssadmin.exe tool would create if run from the command line.

a basic example of configuring snapshots on the D drive for snapshots every hour starting at 8am would look like this:

vss { 'D':
  ensure => 'present',
}
vss::schedule { 'D':
  ensure     => 'present',
  run_schedule   => 'daily',
  start_time => '08:00',
}

The example above reserves 10% of the D:\ drive for VSS storage and sets up scheduled tasks to take a new snapshot every 60 minutes.

Usage

A more complete example of creating VSS schedules including managing allocated space and assigned drives would look like this:

vss { 'D':
  ensure         => 'present',
  storage_volume => 'D',
  storage_space  => 5,
}
vss::schedule { 'C':
  ensure       => present,
  run_schedule => 'daily',
  start_time   => '00:00',
  start_date   => '2018-01-01',
  minutes_interval => 45,
  minutes_duration => 5,

}

the vss::schedule resource is a direct implementation of the builtin scheduled_task trigger attribute so anything that can be set for a trigger can also be set for a schedule here.

Reference

vss provider

Properties and Parameters

creates vss schedules and storage.

ensure

accepts either present or absent. this decides if space should be allocated for VSS or not.

name

the name of the drive that you wish to backup. This is also the namevar

drive_id

this is the UUID of the drive being backed up. It cannot be changed.

storage_volume

the drive where the VSS storage will be alocated. By default this is the same drive as the name parameter but it can be set to somewhere else:

vss { 'D':
  ensure         => 'present',
  storage_volume => 'E',
}

storage_id

The UUID of the storage_volume. This cannot be changed.

storage_space

The amount of a drive to reserve for VSS storage is interpreted as a percent of the total drive by default but explicit sizes are accepted as well.

vss { 'D':
  ensure         => 'present',
  storage_volume => 'D',
  storage_space  => 5,
}

would allocate 5% of the D:\ drive for storage.

vss::schedule

The vss::schedule defined type acts as a wrapper for the built-in scheduled_task resource. Any setting that would be used with the trigger attribute can be used with vss::schedule. The only limitation to this is that only one trigger can be defined at a time per drive.

Limitations

at this time only one schedule per drive can be defined.

Development

Any and all changes are welcome! please open a pull request and include unit tests for relevant changes.