SMA (Service Management Automation) is a feature that enables to automate tasks in your private cloud from the Windows Azure Pack. SMA is included in the Orchestrator ISO. Three components are needed to run SMA for Windows Azure Pack:
-
SMA Web Services – This is a REST Endpoint used by the Windows Azure Pack to connect to the SMA service.
-
SMA RunBook Workers – This is the process that runs jobs;
-
SQL Database – Store runbooks, jobs, and activities.
Architecture
The below schema describes how each components interact. The Windows Azure Pack is connected via HTTP protocol to the Web Service. This last is connected to the SQL database and so can submit requests and return results to the Windows Azure Pack. Regarding Runbook Workers, they run jobs described in the runbooks.
SMA can be deployed highly available as described in the below schema:
Multiple SMA web service can be deployed behind a load balancer as an F5 appliance. The SMA database supports AlwaysOn to ensure the database high availability. To finish multiple Runbook Worker can be deployed.
Requirements
The requirements described below come from this TechNet topic.
Hardware
Performance component |
Recommendation |
||
Virtual machines |
Three, each with a runbook worker and web service installed Load-balanced incoming traffic Minimum of two cores and 4 GB of RAM for each virtual machine 60 GB of available disk space |
||
SQL Server |
One computer with 8 GB of RAM and eight cores
|
Software
Role |
Prerequisites |
Runbook worker |
Windows Server 2012 R2 Windows PowerShell 4.0 |
Automation web service |
Windows Server 2012 R2 SQL Server 2012 (not Express edition) Internet Information Services (IIS) 7.5 (hosts the web service) IIS Basic Authentication IIS Windows Authentication IIS URL Authorization ASP.NET 4.5 .NET Framework 3.5 (for the Setup program) .NET Framework 4.5 WCF HTTP Activation Install-WindowsFeature Web-Server, Web-Basic-Auth, Web-Windows-Auth, Web-Url-Auth, Web-Asp-Net45, NET-Framework-Core, Net-Framework-45-Core, NET-WCF-HTTP-Activation |
Windows PowerShell module |
Windows PowerShell 4.0 |
Security
Role |
Requirement |
Runbook worker |
None |
Automation web service |
Default value: 9090. Configurable at install time port defaults to 9090. The installation program for Service Management Automation automatically opens the web service port on the local firewall. A certificate that can be used for Secure Sockets Layer (SSL) encryption over HTTPS. The installation program for Service Management Automation can be used to generate a self-signed certificate. |
Windows PowerShell module |
None |
SMA Installation
Web services installation
The first service to install is the SMA web service. To install the web service, mount the media of Orchestrator. Once you have run the SetupOrchestrator.exe, click on Web Service in the Service Management part:
Next click on install.
Next enter the registration information and the product key.
Then accept the license terms.
If you have not installed all the prerequisites as me, you can run the below PowerShell script:
Install-WindowsFeature Web-Server, Web-Basic-Auth, Web-Windows-Auth, Web-Url-Auth, Web-Asp-Net45, NET-Framework-Core, Net-Framework-45-Core, NET-WCF-HTTP-Activation45
Once all prerequisites are installed, click on next J.
Next specify database information as below:
Then specify the security groups and the credentials for the Application Pool.
Next specify the Web Service port number and the server certificate. I use a certificate generated by my PKI from the certificate template Web Server.
After that, specify the installation folder:
Then configure the CEIP and the Microsoft Update setting.
And to finish, click on install.
Runbook worker installation
Now that the Web Service is installed, we run again the SetupOrchestrator.exe on the Orchestrator media to install a Runbook Worker.
On the next screen click on Install.
Specify the production registration information and click on next.
Then accept the license terms and click on next.
Once your prerequisites are validated, click on next.
Specify database server information. These information should be the same that you have specified in the web service installation.
Next specify a service account and click on next.
Choose an installation folder and click on next.
Then configure the CEIP and the Microsoft Update setting.
To run the installation, click on install J.
Connect Windows Azure Pack to SMA
Now that all components of SMA are installed, connect to the Windows Azure Pack administration portal and navigate to Automation.
Enter the service URL and the user name. Usually the service URL is the name of the server where you have installed the web service.
When the Windows Azure Pack is connected to the SMA web service, you should have something similar as below screenshot:
Now you can use SMA to automate your Private CloudJ.
Great installation guide, find just one typo, in the powershell command to install windows features, the last feature should have a 45 on the end… NET-WCF-HTTP-Activation45
Hi Joe,
Thank you for your answer. I have corrected the typo error.
Regards,
Romain.
Thank you for providing such detailed installation instruction but I cannot get the WMA Webservice installed – it always quits with an errror (the error log doesn’t contain any details except error code 1603). I am using an admin accoiunt for the app pool credentials.
Regards,
Peter
Hi,
Have you tried to uninstall IIS and reinstall it again ?
Hello Romain,
The reason was simple: SMA does obviously not install on a DC. Once I tried it on a non DC Windows Server it installed every time I tried with all the installation defaults.
regards,
peter
A DC should always do one thing: DC 🙂
Thanks for the information.