/DataProtectionManagerCX

The Data Protection Manager Community Extensions PowerShell module contains commands for working with System Center Data Protection Manager and Microsoft Azure Backup Server.

Primary LanguagePowerShellMIT LicenseMIT

Data Protection Manager Community Extensions PowerShell module

This project has adopted this code of conduct.

Branches

master

Build Status PowerShell Gallery

This is the branch containing the latest release - no contributions should be made directly to this branch.

dev

Build Status

This is the development branch to which contributions should be proposed by contributors as pull requests. This development branch will periodically be merged to the master branch, and be released to PowerShell Gallery.

Introduction

The Data Protection Manager Community Extensions PowerShell module contains commands for working with System Center Data Protection Manager and Microsoft Azure Backup Server. The goal of this module is to make it easier to manage the two products by providing functionality not included in the built-in Data Protection Manager PowerShell module (also known as DPM Management Shell/Microsoft Azure Backup Management Shell).

Installation

The module is published to the PowerShell Gallery, which means you can install it using the following command from the PowerShellGet module:

Install-Module -Name DataProtectionManagerCX

or the following if you want it installed the current users profile ($env:userprofile\Documents\WindowsPowerShell\Modules) rather than the system wide location ($env:programfiles\WindowsPowerShell\Modules):

Install-Module -Name DataProtectionManagerCX -Scope CurrentUser

When a new version is released with bug fixes or new functionality you can update to the latest version simply by typing the following command:

Update-Module -Name DataProtectionManagerCX

PowerShellGet is included by default in PowerShell V5, and available downlevel for PowerShell 3.0 and 4.0.

If you want to install the module without leveraging PowerShellGet, you can either clone the Git-repository or download this ZIP-file and place the contains in one of the following locations:

  • $env:userprofile\Documents\WindowsPowerShell\Modules\DataProtectionManagerCX
  • $env:programfiles\WindowsPowerShell\Modules\DataProtectionManagerCX

Requirements

  • PowerShell 4.0 or later on the computer the module is installed on
  • PowerShell Remoting must be enabled on target computers
  • Administrative credentials is required on target computers

Usage

The module contains the following functions:

  • Get-DPMCXAgent - Returns information about a DPM agent, including version information and attached DPM servers.
  • Get-DPMCXAgentOwner - Returns information about which DPM servers a DPM agent is attached to and what data sources is protected.
  • Get-DPMCXRecoveryPointStatus - Not implemented yet. Returns information about recovery points older than a specified value, for example 2 days.
  • Get-DPMCXServerConfiguration - Not implemented yet. Returns information about the DPM server configuration, including properties relevant for best practices such as page file size and SQL Server memory configuration.
  • Get-DPMCXVersion - Helper function used by other commands which needs to translate a build number to a friendly name, such as returning 'Update Rollup 11 for System Center 2012 R2 Data Protection Manager' as the friendly name for build number 4.2.1552.0. Specify -ListVersion to return all build numbers for System Center DPM 2012 R2, System Center DPM 2016 and Microsoft Azure Backup Server.
  • New-DPMCXRecoveryPointStatusReport - Not implemented yet. Builds an HTML report for the output generated by Get-DPMRecoveryPointStatus which can be saved to a file path or sent to an e-mail address.
  • New-DPMCXServerConfigurationReport - Not implemented yet. Builds an HTML report for the output generated by Get-DPMServerConfigurationReport which can be saved to a file path or sent to an e-mail address.
  • Test-DPMCXComputer - Returns information about whether DPM is installed on a computer. The output included properties such as IsInstalled,IsDPMServer and version information.

Planned features and todo-list

  • Add Pester tests
  • Add help
  • Implement Get-DPMCXRecoveryPointStatus, Get-DPMCXServerConfiguration, New-DPMCXRecoveryPointStatusReport and New-DPMCXServerConfigurationReport

Contributors

Jan Egil Ring - author

Everyone is welcome to assist by forking the project and submitting pull requests with proposed fixes and enhancements.