IaaS – Infrastructure Provisioning Automation (IPA)

Introduction:
Client is a multinational services firm headquartered in London, England and one of the “Big Four” accounting firms. The vision of the Business and IT leadership teams is to automate the provisioning of Infrastructure in virtualized environment in a phased manner.

Business benefits of the System:
•A self-service portal provides instant access to build information, view provisioning status, and allow personalization, save valuable time and organizational resources
•Support provisioning of Multiple VMs with different OS in single build and supports multiple builds in parallel.
•Reduction of Provisioning time from 6 days to 6 hours
•Supports multiple reports to view provisioning status and VM configuration details
•Notify end users through mail once build successfully generated.

System overview:
Currently, client using internal tools and ServiceNow to track the server build request. IPA (Infra Provisioning Automation) system is a .net based web application that will be used to automate the provisioning of all VMs in VMware vSphere 5.5/6.0. IPA suite has 3 functional layers such as Automation, Operations and Frameworks. This suite can be integrated with tools such as Build tool, BlueCAT IPAM, Microsoft SCOM, NetBackup, Qualys Agent, GVS Scan etc.

System Architecture:
The system consists of four layers which can also be seen in Figure 2: This is done to improve the modularity of the application and allow for easier extension of features.

Automation Layer contains various services used to execute the several functionalities of automation scripts in VMware PowerCLI and PowerShell Scripts. The service connectors execute the corresponding services to provision and configure the VM. The service agents are used to execute the services in automation layer through service connectors.

Data Access Layer contains methods for accessing the underlying database data.
Business Logic Layer serves as an intermediary for data exchange between the presentation layer and the data access layer. Presentation Layer contains the components that implement and display the user interface and manage user interaction.

Framework and Tools Used:
•IIS, ASP.NET WEB API, Swagger, SQL SERVER, MSMQ, ANGULAR JS, Bootstrap
•VMware Power CLI, PowerShell, TFS and Remote Management