Archive

How software-defined environments and DevOps accelerate social and mobile delivery — Part 2

Share this post:

In my first post, I discussed how combining deployment automation and software-defined environments (SDE) reduces application delivery time and increases agility.  In this post, I look at these two solutions in greater depth.

In summary, the two solutions deliver the following benefits:

• Deployment automation streamlines the deployment of applications to the development, test and production environments through automation and elimination of manual tasks.
SDE brings OpenStack-based software-defined infrastructure (SDI) together with application patterns to reliably and repeatedly create the application environments for each stage of the pipeline.

This approach to cloud-enabled application delivery is illustrated in the figure reproduced here.

SDE and DevOps

Deployment automation and application lifecycle tooling

Deployment automation tools are core to the DevOps space and central to enabling IT organizations to accelerate delivery by eliminating manual tasks. As illustrated, these tools automate environment creation through the SDE layer and perform application deployment, along with component tracking and versioning.

They also manage the configuration of each SDE environment, database and application component, ensuring repeatable and consistent delivery. This is an end-to-end solution from test environments, including Unit Acceptance Test (UAT) and System Integration Test (SIT) through to production. The method tests the deployment and configuration process as much as the application code itself, eliminating configuration errors that would affect service availability.

At the heart of the IBM solution, UrbanCode Deploy manages the stages of the delivery pipeline, automating the environment builds, component deployment and configuration for each stage.

Faster application roll out

The benefits of deployment automation are faster application roll out and improved delivery consistency with repeatable, reliable and governed processes. Peter Spung provides a great explanation of the benefits of UrbanCode Deploy adoption in many clients and links to case studies in his blog post “DevOps Application Release and Deploy for Managers: The Payoff is Worth the Pursuit.” I also suggest the “Application Release and Deployment for Dummies” ebook for a good overview of the subject of release and deploy.

Reduced life time maintenance effort

Long-term application maintenance and remediation is also a challenge in most of the organizations I work with. Using manual deployment processes, the time and effort required to deploy new versions and update middleware and infrastructure is herculean. My observation is that due to the effort and cost, it just does not happen and deployed applications quickly slip into being part of the maintenance backlog. I covered some of the non-technical reasons for this in earlier posts.

Automation of the deployment pipeline, while reducing delivery time for new applications, also provides a vehicle to reduce the costs and effort involved in maintaining existing services. Patches, middleware and infrastructure changes can be deployed through the delivery pipeline, rapidly tested and released to production with confidence and reduced effort.

Software-defined environments

In an SDE, abstracted and virtualized IT infrastructure resources are managed programmatically through application programming interfaces (APIs). When deployed, applications define their infrastructure requirements, configuration and service level expectations. The developer, the people deploying the service and the service provider are all taken into account.

OpenStack

The OpenStack infrastructure as a service (IaaS) platform abstracts IT resources as resource pools, programmatically managed by APIs. This abstraction and management through OpenStack APIs makes it easier to program the configuration of IT infrastructure and avoids lock-in to proprietary vendor APIs.

Application patterns

Sitting above this infrastructure API layer, application patterns provide robust and proven component building blocks, out of which complex environments can be built. With patterns, multitiered application and infrastructure environments can be rapidly and repeatedly deployed time and time again without error, increasing service stability and reducing failures due to misconfiguration. This technique of full stack deployment enables rigorous testing to be performed in production-like environments early in the test cycle.  The approach improves quality and reduces test and remediation costs later in the delivery cycle.

As illustrated in the figure, at each stage of the delivery pipeline, IBM UrbanCode Deploy programmatically directs the SDE to create a tailored environment based on the specified application pattern. UrbanCode Deploy provides a final deployment of the application code and any required configuration.

Private, public and hybrid solutions

Pattern technology and delivery automation is supported across the IBM private and public cloud portfolio. This provides clients with a choice of on-premises SDE deployment options, off-premises deployment on IBM SoftLayer public cloud and hybrid configurations. The solutions include:

IBM PureApplication System (on premises) is for users looking for an all-in-one integrated appliance that can be delivered rapidly, embodying both SDE and patterns

IBM PureApplication Service on SoftLayer (off premises) is a public cloud-hosted implementation of PureApplication System, providing commonality and portability of patterns with on-premises implementations

SmartCloud Orchestrator (on or off-premises) is for users who have custom implementation requirements. Based on the OpenStack IaaS platform, it provides flexible workload placement on public and private clouds, or a hybrid cloud deployment model. On-premises support includes System z, in addition to IBM Power Systems, IBM PureFlex System and IBM Flex System, System x  and third party x86 environments.

Managing both pets and cattle, as stated in my previous post, is a challenge for IT. This multiplatform approach to OpenStack provides agility and commodity scale-out management for systems of engagement and the transactional integrity of enterprise systems for systems of record.

UrbanCode Deploy working with SmartCloud Orchestrator

My colleague, Michael Brokmann, provides a detailed description of how DevOps and SDE work together in “How to do a full stack release with IBM UrbanCode Deploy and IBM SmartCloud Orchestrator.”

To put theory into practice and dispel any hint of smoke and mirrors, this is supported by a series of videos of a real delivery pipeline implementation created for the CeBIT fair in Hannover, Germany earlier this year: DevOps and cloud: An end-to-end scenario video series

Accelerating social and mobile deployment

In these two posts, I have outlined how IBM is addressing one of the major challenges faced by IT today: meeting user expectations for agile delivery while addressing the cost challenges of managing applications and infrastructure through their life cycle.

In future posts I will look at how IBM is implementing OpenStack, hybrid cloud and how application patterns are used with deployment automation in more depth.

How are you addressing social and mobile delivery? Are you adopting deployment automation and cloud? I would be interested to hear, so leave a comment below or connect with me on Twitter @SteveStrutt.

More stories

Why we added new map tools to Netcool

I had the opportunity to visit a number of telecommunications clients using IBM Netcool over the last year. We frequently discussed the benefits of have a geographically mapped view of topology. Not just because it was nice “eye candy” in the Network Operations Center (NOC), but because it gives an important geographically-based view of network […]

Continue reading

How to streamline continuous delivery through better auditing

IT managers, does this sound familiar? Just when everything is running smoothly, you encounter the release management process in place for upgrading business applications in the production environment. You get an error notification in one of the workflows running the release management process. It can be especially frustrating when the error is coming from the […]

Continue reading

Want to see the latest from WebSphere Liberty? Join our webcast

We just released the latest release of WebSphere Liberty, 16.0.0.4. It includes many new enhancements to its security, database management and overall performance. Interested in what’s new? Join our webcast on January 11, 2017. Why? Read on. I used to take time to reflect on the year behind me as the calendar year closed out, […]

Continue reading