I am writing this blog as one of the parts of a series where I am exploring open cloud-inspired approaches such as OpenStack, DevOps and open standards. The idea is to look at how these approaches can enable IT to adapt to the shift to user and customer engagement via social and mobile applications. In my earlier post, I looked at the tectonic impact that social and mobile applications, (explained by Geoffrey Moore and others as systems of engagement) are having on the IT infrastructures and organizations. Moreover, I looked at how the requirement for agility in delivering these applications is putting pressure on IT operations and developers in many of the organizations I work with.
In this post, I will talk about the top four innovations that I believe are key to IT organizations to successfully utilize IaaS to deliver application services in this new landscape and to address the opposing objectives of operations and developers. Let’s take a look:
1. Management of pets and cattle. Today, the approach that many IT departments use to run applications and systems is financially unsustainable. An analogy I like, is thinking of IT systems as pets rather than cattle. Pets are treated with care and nursed back to health if ill—an approach that is applicable for customer resource management (CRM), enterprise resource planning (ERP), database systems of record and applications where data protection, availability and stability are important. But then pets are not appropriate in systems of engagement, mobile apps and social world, where the typical application model is scale-out on commodity hardware. These apps are, or should be, designed to make IT failures survivable. This is the world of cattle. If it fails, just replace it—two very different management styles.
IBM’s approach to addressing the requirement for IT to manage both systems of record and systems of engagement is to grow OpenStack support from its beginning in commodity scale-out environments to address both pets and cattle. In this regard, IBM Cloud Manager with OpenStack offers IT with a single, common infrastructure, management framework and IaaS application programming interfaces (APIs), which delivers:
Enterprise standards of performance and reliability for long-running systems of record workloads on IBM mainframes, IBM Power Systems and x86
- Scale-out management of commodity hardware on x86 and OpenPower for systems of engagement workloads
2. Software definitions. These are built on applications and infrastructure through Software Defined Environments (SDE), also referred to as the Software Defined Data Center (SDDC). Since traditional IT delivery relies on manual processes, it’s not able to deliver the agility required by businesses deploying mobile apps and social. It is one of the key reasons I see development organizations buying self-service public cloud with credit cards. In my view, one of the key benefits of IaaS cloud is the programmatic control of infrastructure through automation and APIs. Developer self-service on public cloud delivers enhanced agility, but loses much of the potential value. The ability to automate provisioning of compute, networking and storage through programmatic APIs provides greater benefit. In this respect, IBM is building its Software Defined Environments on the OpenStack framework and APIs to enable full automation of environment delivery for both on premises and off premises clouds. I will cover this in more detail in my upcoming post.
3. Application patterns. These are templates that describe an application and its infrastructure as code. Being reusable, patterns over time become strong and proven building blocks. They enable entire environments to be quickly and repeatedly deployed time and time again without error, increasing stability and reducing failures due to misconfiguration. With the IBM Virtual System (vSys) Pattern technology, we are seeing the deployment time for complex applications like business process management (BPM) and mobile apps being reduced from days and weeks down to minutes and hours with considerable client time-to-market benefits. Patterns are an essential component of the Software Defined Environment, driving the programmatic configuration of the underlying infrastructure, application and middleware components. Standards in this expanse are essential. From a standards viewpoint, OASIS is developing TOSCA, a portable application standard. Although, having a standard does not mean it will be adopted. The agreement at the OpenStack Hong Kong design summit that OpenStack HEAT Orchestration Templates (HOT) would align with the TOSCA “Simple Profile” is a great step towards having a common, industry-wide pattern technology—development that is reflected in the HOT templates in the recent OpenStack Icehouse release.
4. DevOps. A subset of DevOps, deployment automation, along with agile development is an substantial cultural change for numerous development and operations organizations. As a subset of DevOps, deployment automation focuses only on automating the deployment phases of the development life cycle and can be adopted independently of other DevOps capabilities. The graphic below demonstrates the application delivery pipeline as applied by the IBM deployment automation solution, UrbanCode Deploy.
At its core, uDeploy manages the programmatic deployment of application builds and their required infrastructure and middleware environments through development, multiple test iterations and finally into production. The benefits are faster application roll out and improved delivery consistency. Deployment automation with uDeploy can be implemented for physical, virtual or cloud-based systems. Though its ability to dynamically create environments for test and development as required using private and public cloud provisioning APIs brings considerable additional value.
No doubt, all of these innovations bring value by themselves, but it is my experience that IBM clients are attaining higher value when they combine these approaches together.
In the upcoming blog post, I will take a deeper look at how merging Software Defined Environments, deployment automation and patterns enable IT departments to efficiently deliver mobile applications and social while continuing to safeguard their systems of record.
How are you handling the challenge of delivering mobile and social? I look forward to hearing your thoughts. Leave a comment below. You can also connect with me on Twitter @SteveStrutt or follow @IBMSDE for more updates.
Chief Technology Officer - IBM Cloud Computing, UK & Ireland