Welcome!

Big Data Journal Authors: Jason Bloomberg, Liz McMillan, Yeshim Deniz, Pat Romanski, Elizabeth White

Related Topics: Cloud Expo, SOA & WOA, Virtualization, Web 2.0, Security, Big Data Journal, SDN Journal, DevOps Journal

Cloud Expo: Article

Achieving Application Portability for DevOps

Highly productive DevOps environments will require access to self-service infrastructure and application provisioning

Enterprise applications are increasing in complexity, with multi-tier and distributed applications being the new standards for dealing with high-volume, high-scale requirements. In many development environments, the ideal scenario is to enable DevOps teams to manage dev/test environments in public clouds, with on-demand, usage based billing model - and to ultimately deploy these complex applications in on-premises clouds. Achieving application portability between heterogeneous cloud environments is critical to achieve the productivity goals of DevOps - yet often requires time-consuming workarounds. This article will present examples of approaches employed today, including newer options for model-driven cloud management platforms with their emphasis on automating application portability and approach to eliminating cloud lock-in.

Introduction: The Evolution of Cloud Development
The cloud model has evolved quickly over the course of the last few years from simple on-demand infrastructure (IaaS) services to richer environments that provide agile development capabilities for new applications. DevOps is a methodology that describes the integration and collaboration of software developers and IT professionals. The goal is more rapid software delivery, and it therefore ties in strongly to the agile development methodology that has been embraced by companies delivering software applications for virtual computing and the cloud.

The need for instant and on-demand server provisioning has been a main driving force behind the massive growth of cloud services. Public cloud services such as Amazon Web Services EC2, The Rackspace Cloud and others have become primary targets for application developers who need the rapid build up and tear down provided by these environments to enable rapid development, test and QA of new applications.

A key new requirement to make DevOps succeed for enterprise applications is portability between clouds. This provides DevOps with the freedom to select the optimal cloud environment to maximize developer productivity - yet preserve the option to deploy these apps in alternate public or private clouds when it's time for production operations that meet all IT mandated security, availability and compliance requirements.

Workload Portability for DevOps
The iterative process of making code changes and testing can be best performed in agile environments that provide fast provisioning, and low-cost. In many cases, public cloud environments are often the most productive application dev/test environments, but a private cloud may offer a better production deployment environment.

Therefore, for DevOps to succeed, an ideal world would enable total portability of application Workloads, to achieve two parallel goals:

  1. Allow developers to work in the most agile and cost-effective dev/test environment they choose
  2. Allow applications to run in the most secure, high-performance and reliable cloud available

These goals are often at odds, since a public cloud service may offer the key cost and agility advantages for DevOps, but a private cloud may achieve higher levels of security, performance and uptime.

Enterprise Apps Moving to the Cloud
Early cloud development was focused on simple apps - the obvious first candidates for deployment in this environment were web servers, content management systems (CMS), and simple databases. Many of these apps are simple software stacks hosted on single virtual servers, or perhaps a pair of active/passive servers for higher availability. While many of these apps can be considered important, and enablers for their businesses - in most cases they were not the mission-critical enterprise applications we so often refer to when discussing corporate operations such as ERP, accounting and manufacturing.

Some major online portals and social media providers have leapfrogged mainstream business IT by embracing cloud deployments for much more complex applications. With the need to serve many millions of users, for many of these companies, the cloud was the only answer to their level of expected scale. In truth - many built their own on-demand infrastructures to service their unique needs. But many others have indeed selected and deployed their entire scalable infrastructures in the world of household public cloud services such as Google and Amazon. The online world has demonstrated that indeed the cloud can deliver on its promise of scale and availability, and that the enterprise can leverage the cloud model - as long as cloud flexibility is preserved

Complexity Increases: Multi-Tier and Distributed Enterprise Applications
Modern enterprise data-center applications are inherently more complex than the simple server stacks deployed in the early stages of the cloud. They typically consist of multiple virtual servers and different application packages arranged into multiple server tiers or as a scale-out, distributed architecture. On top of their multi-server architectures, these applications require access to shared resources such as load balancers and firewalls for security.

These multi-tier applications also have complex relationships that must be carefully configured and managed each time the application is deployed. Such metadata describes the inter-dependencies and connections between the various application components, for example, the relationship between application servers and databases, or master and slave nodes, is pivotal to define and track - to maintain consistency of the application as a whole.

It's easy to see that deploying these multi-tier enterprise "Workloads" is a very different task than deploying simple web servers. Developers will frequently iterate on this process of standing up and then tearing down these complex Workloads - obviously a time-consuming and error-prone endeavor, that can impact the benefits and goal of the whole agile development process.

The need for simplified, automated application deployment and portability to help DevOps seems very clear, but most of today's environments make it difficult to achieve. Many cloud application environments create lock-in, specifically Platform-as-a-Service (PaaS) services often offer fixed development stacks that are functional only on the cloud provided by the service provider, completing eliminating portability.

Model-Driven Application Management Solutions for DevOps
This calls for solutions that can address the application lifecycle management problem of dynamically tracking application components as they evolve from dev/test to production. One such approach involves the use of standardized containers of software called server templates (or machine images in the parlance of some clouds). These describe a software stack consisting of an operating system, application packages and associated scripts. Server templates can be used to "instantiate" or provision a server in the cloud by laying down the desired software image. Since server templates are static - they can lock down a well-known version of a server, down to all its configuration details. In many cases, templates are specifically tied to the cloud they target - since they must contain a compatible OS image. Unless the template is specifically designed to be "multi-cloud" friendly, this can impact the portability of the overall application Workload to other clouds.

Another approach for accelerating DevOps is represented by Platform-as-a-Service (PaaS) offerings, which provide distinct advantages for DevOps including well-integrated developer tools, utilities and application libraries. As a service from a single vendor, however, the limitations often include limited support for external software stacks, and runtime support only for the integrated cloud provided by the PaaS vendor itself.

A newer class of solutions is emerging that leverage a data model-driven approach to automate the process of provisioning and managing Workloads, but also enabling portability across multiple clouds. With a goal of completely automating the process, a model-driven approach uses a process to capture and assemble a virtual representation of the entire application Workload. This virtual application data-model captures deep knowledge of all aspects of the Workload: the virtual servers, application packages (and dependent packages such as Java or PHP), configuration files, as well as the metadata describing the inter-dependencies between these elements.

These platforms use the data-model to maintain a consistent image of the entire Workload that can then be used to automatically deploy the Workload on to any cloud target. They perform software installations in "real-time" using the data model as a map - that instructs the system on what packages to download and install dynamically during the provisioning process. This provides not only simple deployment of complex Workloads, but intrinsically provides portability of Workloads across public to private clouds, or any combination of the two. This enables DevOps to preserve their freedom of choice by enabling development and test in a low-cost, agile public cloud environment such as AWS, but potentially deploy the production Workload into a secure, high-performance private cloud based on technologies such as Citrix CloudPlatform (Apache CloudStack), VMware vCloud Director or OpenStack.

Appcara's AppStack is an example of such an application model-driven platform. It provides a patent-pending Configuration Repository that is used to capture and assemble complex application Workloads in real-time, as the user defines them through an easy to use portal. It is also capable of dynamically tracking and reflecting changes in the relationships and dependencies of the application, and to do so automatically as users make changes through the Portal. AppStack provides complete application portability across more than a dozen public and private infrastructure clouds. This allows applications to be deployed as a "one-click" operation into a choice of public or private cloud targets, as required to deliver on the DevOps promise of agility and accelerated time-to-market.

Highly productive DevOps environments will require access to self-service infrastructure and application provisioning. The bad news is that this is highly challenging to accomplish with complex applications, where portability that preserves the essential metadata and complex interrelationships takes time to hand-code. The good news is that technology options are now available to remove previous manual effort, and vastly streamline application portability.

More Stories By Paul Speciale

Paul Speciale is chief marketing officer for Appcara, provider of a model-based cloud application platform. He has over 20 years of experience in assisting cloud, storage and data management technology companies as well as cloud service providers to address rapidly expanding Infrastructure-as-a-Service and Big Data sectors.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Cloud Expo Latest Stories
Every healthy ecosystem is diverse. This is especially true in cloud ecosystems, where portability and interoperability are more important than old enterprise models of proprietary ownership. In his session at 15th Cloud Expo, Mark Baker, Server Product Manager at Canonical/Ubuntu, will discuss how single vendors used to take the lead in creating and delivering technology, but in a cloud economy, where users want tools of their preference, when and where they need them, it makes no sense.
SYS-CON Events announced today that TechXtend (formerly Programmer’s Paradise), a leading value-added provider of server and storage virtualization, and r-evolution will exhibit at SYS-CON's 15th International Cloud Expo®, which will take place on November 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA. TechXtend (formerly Programmer’s Paradise) is a leading value-added provider of software, systems and solutions for corporations, government organizations, and academic institutions across the United States and Canada. TechXtend is the Exclusive Reseller in the United States for r-evolution
SYS-CON Events announced today that Cloudian, Inc., the leading provider of hybrid cloud storage solutions, has been named “Bronze Sponsor” of SYS-CON's 15th International Cloud Expo®, which will take place on November 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA. Cloudian is a Foster City, Calif.-based software company specializing in cloud storage. Cloudian HyperStore® is an S3-compatible cloud object storage platform that enables service providers and enterprises to build reliable, affordable and scalable hybrid cloud storage solutions. Cloudian actively partners with leading cloud computing environments including Amazon Web Services, Citrix Cloud Platform, Apache CloudStack, OpenStack and the vast ecosystem of S3 compatible tools and applications. Cloudian's customers include Vodafone, Nextel, NTT, Nifty, and LunaCloud. The company has additional offices in China and Japan.
The emergence of cloud computing and Big Data warrants a greater role for the PMO to successfully manage enterprise transformation driven by these powerful trends. As the adoption of cloud-based services continues to grow, a governance model is needed to orchestrate enterprise cloud implementations and harness the power of Big Data analytics. In his session at 15th Cloud Expo, Mahesh Singh, President of BigData, Inc., to discuss how the Enterprise PMO takes center stage not only in developing the appropriate governance model but also in collaborating with key stakeholders to ensure a successful transformation.
In today's application economy, enterprise organizations realize that it's their applications that are the heart and soul of their business. If their application users have a bad experience, their revenue and reputation are at stake. In his session at 15th Cloud Expo, Anand Akela, Senior Director of Product Marketing for Application Performance Management at CA Technologies, will discuss how a user-centric Application Performance Management solution can help inspire your users with every application transaction.
Come learn about what you need to consider when moving your data to the cloud. In her session at 15th Cloud Expo, Skyla Loomis, a Program Director of Cloudant Development at Cloudant, will discuss the security, performance, and operational implications of keeping your data on premise, moving it to the cloud, or taking a hybrid approach. She will use real customer examples to illustrate the tradeoffs, key decision points, and how to be successful with a cloud or hybrid cloud solution.
The consumption economy is here and so are cloud applications and solutions that offer more than subscription and flat fee models and at the same time are available on a pure consumption model, which not only reduces IT spend but also lowers infrastructure costs, and offers ease of use and availability. In their session at 15th Cloud Expo, Ermanno Bonifazi, CEO & Founder of Solgenia, and Ian Khan, Global Strategic Positioning & Brand Manager at Solgenia, will discuss this shifting dynamic with an example of a top European Telco provider. Find out how they are leveraging the power of acloud-based consumption model services to offer more value to the mass market and enable a new revenue model that embraces the true meaning of the Third Industrial Revolution.
Cloud computing started a technology revolution; now DevOps is driving that revolution forward. By enabling new approaches to service delivery, cloud and DevOps together are delivering even greater speed, agility, and efficiency. No wonder leading innovators are adopting DevOps and cloud together! In his session at DevOps Summit, Andi Mann, Vice President of Strategic Solutions at CA Technologies, will explore the synergies in these two approaches, with practical tips, techniques, research data, war stories, case studies, and recommendations.
The 16th International Cloud Expo announces that its Call for Papers is now open. 16th International Cloud Expo, to be held June 9–11, 2015, at the Javits Center in New York City brings together Cloud Computing, APM, APIs, Security, Big Data, Internet of Things, DevOps and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportunity. Submit your speaking proposal today!
14th International Cloud Expo, held on June 10–12, 2014 at the Javits Center in New York City, featured three content-packed days with a rich array of sessions about the business and technical value of cloud computing, Internet of Things, Big Data, and DevOps led by exceptional speakers from every sector of the IT ecosystem. The Cloud Expo series is the fastest-growing Enterprise IT event in the past 10 years, devoted to every aspect of delivering massively scalable enterprise IT as a service.
Hardware will never be more valuable than on the day it hits your loading dock. Each day new servers are not deployed to production the business is losing money. While Moore’s Law is typically cited to explain the exponential density growth of chips, a critical consequence of this is rapid depreciation of servers. The hardware for clustered systems (e.g., Hadoop, OpenStack) tends to be significant capital expenses. In his session at 15th Cloud Expo, Mason Katz, CTO and co-founder of StackIQ, to discuss how infrastructure teams should be aware of the capitalization and depreciation model of these expenses to fully understand when and where automation is critical.
Over the last few years the healthcare ecosystem has revolved around innovations in Electronic Health Record (HER) based systems. This evolution has helped us achieve much desired interoperability. Now the focus is shifting to other equally important aspects – scalability and performance. While applying cloud computing environments to the EHR systems, a special consideration needs to be given to the cloud enablement of Veterans Health Information Systems and Technology Architecture (VistA), i.e., the largest single medical system in the United States.
In his session at 15th Cloud Expo, Mark Hinkle, Senior Director, Open Source Solutions at Citrix Systems Inc., will provide overview of the open source software that can be used to deploy and manage a cloud computing environment. He will include information on storage, networking(e.g., OpenDaylight) and compute virtualization (Xen, KVM, LXC) and the orchestration(Apache CloudStack, OpenStack) of the three to build their own cloud services. Speaker Bio: Mark Hinkle is the Senior Director, Open Source Solutions, at Citrix Systems Inc. He joined Citrix as a result of their July 2011 acquisition of Cloud.com where he was their Vice President of Community. He is currently responsible for Citrix open source efforts around the open source cloud computing platform, Apache CloudStack and the Xen Hypervisor. Previously he was the VP of Community at Zenoss Inc., a producer of the open source application, server, and network management software, where he grew the Zenoss Core project to over 10...
Most of today’s hardware manufacturers are building servers with at least one SATA Port, but not every systems engineer utilizes them. This is considered a loss in the game of maximizing potential storage space in a fixed unit. The SATADOM Series was created by Innodisk as a high-performance, small form factor boot drive with low power consumption to be plugged into the unused SATA port on your server board as an alternative to hard drive or USB boot-up. Built for 1U systems, this powerful device is smaller than a one dollar coin, and frees up otherwise dead space on your motherboard. To meet the requirements of tomorrow’s cloud hardware, Innodisk invested internal R&D resources to develop our SATA III series of products. The SATA III SATADOM boasts 500/180MBs R/W Speeds respectively, or double R/W Speed of SATA II products.
As more applications and services move "to the cloud" (public or on-premise) cloud environments are increasingly adopting and building out traditional enterprise features. This in turn is enabling and encouraging cloud adoption from enterprise users. In many ways the definition is blurring as features like continuous operation, geo-distribution or on-demand capacity become the norm. NuoDB is involved in both building enterprise software and using enterprise cloud capabilities. In his session at 15th Cloud Expo, Seth Proctor, CTO at NuoDB, Inc., will discuss the experiences from building, deploying and using enterprise services and suggest some ways to approach moving enterprise applications into a cloud model.