This tool is most excellent. It can produce detailed, or more detailed, or most detailed reports of your vSphere environment.
I should mention that when I use setting 2 for detail I get a Word document that is 9 pages long but when I use the default of 3, I get a report of 114 pages. But very good info and useful for a variety of reasons – such as DR, or helping with patching or VMware Tools updates. If I was still an SE for partners I would be using this script every time I finished working at a customer so I could also compare between when I finished the work and when I showed up to help troubleshoot.
Anyone is is experienced with PowerShell / PowerCLI is going to find it pretty easy. But I am a beginner, and I have not worked with JSON before so I stumbled a bit. So I am going to share a little bit of into to help people that might stumble as well.
And yes, this means if you do update-module it will update things. This will also install all of the modules that AsBuilt has even though I will only use the vSphere one.
Execution – first
The command below is what you need to use the first time. And answer all the questions like your name, email and the like.
New-AsBuiltReport -Report VMware.vSphere -Target your_VC_FQDN -Credential (get-credential) -Format HTML,Word -OutputPath ‘C:\reports’ -TimeStamp -EnableHealthchecks
You can change the C:\Reports to what you need. I really like the TimeStamp feature as it means reports will not overwrite each other!
Make sure to answer all the questions and remember the path you select to save things.
Execution – next time
This will not prompt you for things but rather just execute. You can always start as above to reenter your configuration.
New-AsBuiltReport -Report VMware.vSphere -Target Your_VC_FQDN -Credential (get-credential) -Format HTML,Word -OutputPath ‘C:\reports’ -TimeStamp -EnableHealthchecks -AsBuiltConfigPath c:\scripts\AsBuiltReport.json
It is the -AsBuiltConfigPath that is what makes sure you are not prompted for a bunch of config stutff.
Using AsBuiltReport with customers?
You could use the parameter -ReportConfigPath – which is normally optional – to sepecify a different config so the mail server, titles and like would match the customer you are working at. So you do the first time above, then next time use specific the ReportConfigPath to select the right config for the customer
Changing Level of Detail
As I mentioned my first run gave me a report on my vSphere Infrastructure that was most excellent but also 114 pages. I wanted less detail.
- You stored your JSON likely in your home folder – so in my case it was c:\users\mwhite\AsBuiltReport\VMware.vSphere.json.
- Use Notepad++ or something similar to edit the vSphere.json file. It will look something like below.
In the InfoLevel area you can see above all the 3’s. You can change them to 2 and that will make a big difference in document size. You can change the number to what works for you and save the json file and the next run of the script will use the new values.
You can put a second vCenter on the target line – which would make it look like:
New-AsBuiltReport -Report VMware.vSphere -Target Your_VC_FQDN,Other_vC_FQDN -Credential (get-credential) -Format HTML,Word -OutputPath ‘C:\reports’ -TimeStamp –
EnableHealthchecks -AsBuiltConfigPath c:\scripts\AsBuiltReport.json
This should get you going, but if you have questions or comments let me know.
- 7/6/19 – big changes! Now AsBuiltReport is in the Gallery.
- 3/12/19 – added the info on how you can do multiple vCenters.
- 3/9/19 – used the latest version – as of today – PowerCLI, Powershell, and the As Built scripts. Also fixed some typos and grammar. I also noticed the vSphere JSON has a default of 3’s now where it used to be 2’s so that is a nice change – so my 114 page report is now 34.
=== END ===