Whitepaper

Application Environment Provisioning (Following the IaC (Infrastructure as Code) way)

With the move to cloud and adoption of DevOps, corporations are looking at shifting their workload but these changes bring about their migration challenges. Which include, hundred or thousands of Virtual Machine and on-premise servers to migrate, which is not possible to undertake using manual processes.

To manage infrastructure provisioning more systematically and predictably Infrastructure as Code comes into the picture. When a corporation wants to rapidly deploy a cloud infrastructure environment provisioning tools that can achieve this in an automated manner come into the picture.

Legacy Setup

In a legacy setup software, development teams required operations team support to spin development environments for every project. As a result In a large development setup, multiple operations teams are required for the builds.

These teams need to configure servers, install the operating system (OS), create databases, make DNS entries, implement load balancers, firewalls, etc. Undertaking this could increase the time for software deployments sometimes resulting in a delivery timeframe that could span months.

DevOps environments require the right set of tools to achieve faster deployments. These tools need to be able to undertake activities like server provisioning, configuration management, build automation, code deployment, and monitoring.

There are a range of tools that are available ranging from open-source to proprietary to undertake this.  In this blog, we will look into how UrbanCode helps corporations in their application environment provisioning.

IBM UrbanCode an Overview

IBM UrbanCode Deploy platform changes all this with UrbanCode Blueprint Designer functionality spans across business units and development environment providing developers with a self-service portal for rapid provisioning infrastructure.

UrbanCode is predominantly looked at as a Deployment-Automation Tool with very little focus on the other tasks that it can perform for example Application Environment Provisioning.

To provision a Cloud Environment, two processes can be leveraged depending on how a corporation wants to automate the activity on the cloud using Virtual System Patterns or OpenStack Heat.

For Clouds using Virtual System Patterns

For provisioning environments on clouds that use Virtual System Patterns, the blueprints are created using the IBM UrbanCode Deploy Server.

For Clouds using OpenStack Heat

For provisioning environments on clouds that use OpenStack Heat, the blueprints are created using the Blueprint Designer.

Datamato has used IBM’s UrbanCode for Application Environment Provisioning not only for Automatic Deployments but also for Application Environment Provisioning.

Scenario: Accelerating the Software Release Cycle

This real-case scenario describes how Datamato used UrbanCode to accelerate the software release cycle for its client. The approach mostly revolved around the adoption of Agile-based and DevOps-based software development processes leveraging UrbanCode and environment provisioning in Blueprint.

The tools were used to perform two functions specifically. These were:

  1. Accelerating the Adoption of DevOps
  2. Streamlining the processes like Software Testing, Software Development, and Deployment Cycle.

The tools involved for the above were:

  1. UrbanCode Deploy for Deployment Management
  2. Rational Team Concert for Build Management
  3. Rational Team Concert for Source Code Management
  4. Doors NextGen for Requirement Management

Solution

Datamato’s Team deployed IBM Solution Stack in its journey of Workflow Automation. This, in turn, helped its client Manage, Schedule, Define, and Monitor the Application Workflow. Additionally, the automation of workflows helped the deployment of services on-time.

With its team of experts, Datamato undertook the initiative of UrbanCode Implementation. The automated deployment process across segments like Production and Disaster Recovery Management is a unique scenario in this landscape. This deployment was done for more than 50 applications which were spread across a disparate technology stack that ranged from Microsoft’s Server to Oracle’s Database.

Datamato’s Team developed multiple plugins for UrbanCode to simplify environment provisioning and streamline the challenges that its client faced in the Deployment and Rollback Processes. This has reduced the working hours of Ops Teams from about 13752 hours per month to mere 200 hours in a month!

Impact

To highlight the impacts that these solutions brought out for the clients on a large scale. Let’s look at how reduces the workload.

Overall Automation Achieved

With 100% automation achieved, both the manpower and execution time are reduced for the successful deployments of software on large scale by deploying UrbanCode. The software deployment time can be reduced by 92% across all the environments.

Increase in Release Frequency

With the overall automation in effect, the scope of increase in release frequency of the software is high.

Automation in Streamline and Process Control

The automation in streamline processes results in improved efficiency of around 95% across all the environments.

Reduction in Deployment Efforts and Defects

With the significant reduction in the Deployment time from 165024 hours yearly to just 2400 hours every year! Even the reduction in deployment defects is one of the major consequences for making the releases faster to the marketplace.

To conclude

IBM UrbanCode Deploy can be leveraged to standardize and simplify the process of deploying software components across various environments in the development cycle. When blueprints for OpenStack-based clouds are used, a corporation can use a full-stack approach to concurrently model the application and infrastructure layers of your deployment.