VMware SRM As Built Report is a PowerShell module which works in conjunction with AsBuiltReport.Core.
AsBuiltReport is an open-sourced community project which utilises PowerShell to produce as-built documentation in multiple document formats for multiple vendors and technologies.
Please refer to the AsBuiltReport website for more detailed information about this project.
Sample VMware SRM As Built report HTML file: Sample VMware SRM As-Built Report.html
Below are the instructions on how to install, configure and generate a VMware SRM As Built report.
The VMware SRM As Built Report supports the following SRM versions;
Tested On:
- SRM 8.3
- SRM 8.4
- SRM 8.5
- SRM 8.6
- SRM 8.7
This report is compatible with the following PowerShell versions;
Windows PowerShell 5.1 | PowerShell 7 |
---|---|
✅ | ✅ |
PowerShell 5.1 or PowerShell 7, and the following PowerShell modules are required for generating a VMware SRM As Built report.
Each of these modules can be easily downloaded and installed via the PowerShell Gallery
Tested with vCenter Global Read-Only permissions.
install-module VMware.PowerCLI -MinimumVersion 13.1 -AllowClobber
install-module AsBuiltReport.VMware.SRM
If you are unable to use the PowerShell Gallery, you can still install the module manually. Ensure you repeat the following steps for the system requirements also.
-
Download the code package / latest release zip from GitHub
-
Extract the zip file
-
Copy the folder
AsBuiltReport.VMware.SRM
to a path that is set in$env:PSModulePath
. -
Open a PowerShell terminal window and unblock the downloaded files with
$path = (Get-Module -Name AsBuiltReport.VMware.SRM -ListAvailable).ModuleBase; Unblock-File -Path $path\*.psd1; Unblock-File -Path $path\Src\Public\*.ps1; Unblock-File -Path $path\Src\Private\*.ps1
-
Close and reopen the PowerShell terminal window.
Note: You are not limited to installing the module to those example paths, you can add a new entry to the environment variable PSModulePath if you want to use another path.
The VMware SRM As Built Report utilises a JSON file to allow configuration of report information, options, detail and healthchecks.
A VMware SRM report configuration file can be generated by executing the following command;
New-AsBuiltReportConfig -Report VMware.SRM -FolderPath <User specified folder> -Filename <Optional>
Executing this command will copy the default VMware SRM report JSON configuration to a user specified folder.
All report settings can then be configured via the JSON file.
The following provides information of how to configure each schema within the report's JSON file.
The Report schema provides configuration of the VMware SRM report information.
Sub-Schema | Setting | Default | Description |
---|---|---|---|
Name | User defined | VMware SRM As Built Report | The name of the As Built Report |
Version | User defined | 1.0 | The report version |
Status | User defined | Released | The report release status |
ShowCoverPageImage | true / false | true | Toggle to enable/disable the display of the cover page image |
ShowTableOfContents | true / false | true | Toggle to enable/disable table of contents |
ShowHeaderFooter | true / false | true | Toggle to enable/disable document headers & footers |
ShowTableCaptions | true / false | true | Toggle to enable/disable table captions/numbering |
The Options schema allows certain options within the report to be toggled on or off.
Sub-Schema | Setting | Default | Description |
---|---|---|---|
ShowDefinitionInfo | true / false | false | Toggle to enable/disable VMware SRM Section Documentation |
The InfoLevel schema allows configuration of each section of the report at a granular level. The following sections can be set.
There are 4 levels (0-3) of detail granularity for each section as follows;
Setting | InfoLevel | Description |
---|---|---|
0 | Disabled | Does not collect or display any information |
1 | Enabled / Summary | Provides summarised information for a collection of objects |
2 | Adv Summary | Provides condensed, detailed information for a collection of objects |
3 | Detailed | Provides detailed information for individual objects |
The table below outlines the default and maximum InfoLevel settings for each section.
Sub-Schema | Default Setting | Maximum Setting |
---|---|---|
ArrayPairs | 1 | 1 |
SRA | 1 | 1 |
Sites | 1 | 1 |
License | 1 | 1 |
Summary | 1 | 1 |
FolderMapping | 1 | 1 |
NetworkMapping | 1 | 1 |
ResourceMapping | 1 | 1 |
PlaceholderDatastores | 1 | 1 |
Permission | 1 | 1 |
ProtectionGroup | 1 | 3 |
RecoveryPlan | 1 | 3 |
Permission | 1 | 1 |
The Healthcheck schema is used to toggle health checks on or off.
There are a few examples listed below on running the AsBuiltReport script against a VMware vCenter Server target. Refer to the README.md
file in the main AsBuiltReport project repository for more examples.
# Generate a VMware SRM As Built Report for vCenter Server '192.168.5.16' using specified credentials. Export report to HTML & DOCX formats. Use default report style. Append timestamp to report filename. Save reports to 'C:\Users\Jon\Documents'
PS C:\> New-AsBuiltReport -Report VMware.SRM -Target 192.168.5.16 -Username '[email protected]' -Password 'P@ssw0rd' -Format Html,Word -OutputFolderPath 'C:\Users\Jon\Documents' -Timestamp
# Generate a VMware SRM As Built Report for vCenter Server 192.168.5.16 using specified credentials and report configuration file. Export report to Text, HTML & DOCX formats. Use default report style. Save reports to 'C:\Users\Jon\Documents'. Display verbose messages to the console.
PS C:\> New-AsBuiltReport -Report VMware.SRM -Target 192.168.5.16 -Username '[email protected]' -Password 'P@ssw0rd' -Format Text,Html,Word -OutputFolderPath 'C:\Users\Jon\Documents' -ReportConfigFilePath 'C:\Users\Jon\AsBuiltReport\AsBuiltReport.VMware.SRM.json' -Verbose
# Generate a VMware SRM As Built Report for vCenter Server 192.168.5.16 using stored credentials. Export report to HTML & Text formats. Use default report style. Highlight environment issues within the report. Save reports to 'C:\Users\Jon\Documents'.
PS C:\> $Creds = Get-Credential
PS C:\> New-AsBuiltReport -Report VMware.SRM -Target 192.168.5.16 -Credential $Creds -Format Html,Text -OutputFolderPath 'C:\Users\Jon\Documents' -EnableHealthCheck
# Generate a VMware SRM As Built Report for vCenter Server 192.168.5.16 using specified credentials. Export report to HTML & DOCX formats. Use default report style. Reports are saved to the user profile folder by default. Attach and send reports via e-mail.
PS C:\> New-AsBuiltReport -Report VMware.SRM -Target 192.168.5.16 -Username '[email protected]' -Password 'P@ssw0rd' -Format Html,Word -OutputFolderPath 'C:\Users\Jon\Documents' -SendEmail
- If the protected and recovery sites are not configured with "Enhanced Linked Mode" and the credentials used are not the same in both sites, it will be required to provide valid remote vCenter credentials.
- In certain occasions there is a noticeable delay while connecting to the remote vCenter.