Last week I had a nice email exchange with Ben Meadowcroft who is the Product Manager for VMware's Site Recovery Manager. While chatting with Ben, I learned about new feature that I was not aware of in the latest SRM 5.8 release which now supports an embedded vPostgres database. Not only does this greatly simplify the installation and not requiring an external database like Microsoft SQL or Oracle, it is also on par in terms scalability with the external databases which is great for customers. I definitely like this improvement in the SRM installation and making it easier to evaluate and POC without requiring a large resource footprint.
UPDATE (11/09/15) - For silent installation of SRM 6.x, please take a look at this article here as some of the install params have changed.
In addition to new database feature, I also learned that SRM supports a silent mode installation which I was not aware of before either. I figured this might come in handy for those needing to automate an SRM deployment given you will need at least two installation: one for the protection site and one for the recovery site. I did not see much documentation on this topic and it has been awhile since I have played with SRM, I thought this would be a good opportunity for some automation goodness as well as checking out some of the new SRM 5.8 features including VSAN support as well as the new vSphere Web Client integration.
In my lab, I wanted to run the a minimal setup and the least amount of Windows 🙂 With that, I was able to use two VCSA, 2 SRM hosts running on Windows 2008 R2 and six Nested ESXi hosts as shown in the diagram below:
To perform a silent installation of SRM, you need to specify a list of 35 parameters to the actual executable which is quite daunting and can also be quite error prone. It actually took me a few tries before I was able to get it working and I wanted to make easier so that anyone can just consume it. I decided to create a simple Windows batch script called install_srm.bat which wraps all the required parameters in a set of variables that can easily be modified by anyone. Out of the 35, only 31 of the parameters can be edited and of those only 15 is really required to be tweaked (which is clearly noted in the script) but also shown below:
- SRM_INSTALLER - The full path to the SRM 5.8 installer
- DR_TXT_VCHOSTNAME - vCenter Server IP/Hostname
- DR_TXT_VCUSR - vCenter Server Username
- DR_TXT_VCPWD - vCenter Server Password
- VC_CERTIFICATE_THUMBPRINT - vCenter Server SSL SHA1 Thumbprint
- DR_TXT_LSN - SRM Local Site Name
- DR_TXT_ADMINEMAIL - SRM Admin Email Address
- DR_CB_HOSTNAME_IP - SRM Server IP/Hostname
- DR_TXT_CERTPWD - SSL Certificate Password
- DR_TXT_CERTORG - SSL Certificate Organization Name
- DR_TXT_CERTORGUNIT - SSL Certification Organization Unit Name
- DR_EMBEDDED_DB_DSN - SRM DB DSN Name
- DR_EMBEDDED_DB_USER - SRM DB Username
- DR_EMBEDDED_DB_PWD - SRM DB Password
- DR_SERVICE_ACCOUNT_NAME - Windows System Account to run SRM Service
Note: To retrieve the vCenter Server SSL Certificate Thumbprint, you can either view the details using a regular web browser as shown in the screenshot below
echo -n | openssl s_client -connect [VC-IP-ADDRESS]:443 2>/dev/null | openssl x509 -noout -fingerprint -sha1
Depending on the number of SRM installations you require, you will need to modify the script to perform those additional deployments. As you can see below, I have my two SRM sites implemented. I have also gone ahead and paired both my SRM setups as well as deploy and configure the vSphere Replication 5.8 using the vSphere Web Client. I definitely recommend checking out the latest SRM 5.8 release if you have not already and you may also want to consider using the embedded vPostgres database for future SRM installation to help simplify the deployment and management of SRM.