In the last weeks I heard a lot about PDK (PowerShell Deployment Toolkit) but never had the time for testing it out. Today I finally had a deeper look at it and I am really surprised how easy you can automate deployment tasks of e.g. System Center.
The PowerShell Deployment Toolkit consists of a few scripts which were developed by Rob Willis (MSFT) to automate the deployment of a System Center environment. The current version is available in the Technet Gallery and there are a lot of updates within the last months. With the PTK you can deploy automatically a complete System Center environment with all its components, the SQL instances and also the integration between the products. If you download the Toolkit you will get a set of five files:
- Workflow.xml: This is the “brain” of the whole PDT where all the tasks are processed. You do NOT need to edit this file!!
- Variables.xml: In this file you have to adapt the Toolkit to your environment. That means you have to define e.g. the installation & service accounts and the folders you will store the installation sources. You can also enable / disable here the System Center components you want to deploy.
- Installer.ps1: With this file you can start the deployment of your desired environment. You should start the deployment from any system which is not part of your target environment (it can also be started from any workstation)
- Downloader.ps1: With this file you can also automate the download of all needed installation sources (including OS images, installers, hotfixes, CU’s.
- VMCreator.ps1: With this file you automate the deployment of the needed VMs (configured in variables.xml). It is also able to join the VMs to the domain
Because of the fact that my time was limited today I just wanted to deploy one single SQL instance (and after that a SQL Cluster instance) with the PDT. Also that was quiet simple because you just have to change the component you want to install in the variables.xml and after that you can deploy the SQL instance. It took only 6 minutes to deploy the instance as desired.
I hope to find some more hours within the next weeks to try a whole System Center deployment with the PDT – but this small SQL deployment was a good start to see the possibilities you have.
If you are interested in more details of the PDT you can find some HowTo’s on the following sites (written by Rob Willis itself):
- Introduction to PowerShell Deployment Toolkit
- Deployment–The PDT Downloader
- Deployment–The PowerShell Deployment Toolkit VM Creator
- Getting SQL right with PowerShell Deployment Toolkit
- Troubleshooting the PowerShell Deployment Toolkit
600 total views, 1 views today