Click here to close now.

Welcome!

Microservices Journal Authors: Liz McMillan, Elizabeth White, Baruch Sadogursky, XebiaLabs Blog, Tech Spot

Related Topics: Microservices Journal, Cloud Expo

Microservices Journal: Article

Cloud Application Migration

What are the real challenges that make organizations take a cautious, wait-and-watch approach to cloud adoption?

The business value of a cloud model does not require any special emphasis to enterprises. The Infrastructure elasticity promises to offer the desired flexibility that allows businesses to penetrate new and emerging markets without the risk of a significant capital expenditure. The free cash flow made available will allow businesses to increase spending on R&D or other strategic initiatives. For small and medium businesses, Cloud Computing offers an ecosystem that allows them to co-exist, if not compete, with large businesses. For large businesses, it's a natural progression of how IT could better optimize its data centers and deliver more value for the business.

What are the real challenges that make organizations take a cautious, wait-and-watch approach to cloud adoption? The reasons are many. For one, concerns with regard to security and regulatory compliance overshadow other potential means through which one could benefit from cloud. It's necessary to uncover such possibilities for businesses to evaluate the potential of cloud computing. Put another way, we will explore the questions most business leaders ponder over - Is ‘cloud computing' the logical next step for me to successfully execute business strategy? If so, what should be my cloud strategy? Which applications are best suited to run on cloud? These are the questions we will discuss, attempt to answer, and where required, make suitable recommendations.

Is Cloud Computing Right for My Organization?
The challenges with migrating applications to a cloud infrastructure are plenty and range from security, to SLA management, to regulations, to fear of vendor lock-in, to lack of any standards. However, just as it doesn't make sense to move everything to the cloud, it would be unwise not to leverage cloud when an opportunity to benefit from it exists. Adoption models differ across businesses and industry verticals and are largely influenced by their business models, infrastructureand information system assets.

For businesses that rely on maintaining an active social community, where the community drives the growth of its storage and computing infrastructure needs, and where the exposure risk of having the content in public infrastructure is relatively low, a public cloud would be a natural choice. For such businesses that tend to have high volatility in workload, a public cloud frees the business from worrying about IT operational issues and allows them to explore opportunities for increasing their business footprint in newer geographies without risking a huge investment.

Organizations that are risk averse and have concerns with security and compliance regulations would be inclined to explore a private cloud option in the near term. A private cloud infrastructure will enable their workforce to adapt and evaluate the real potential of cloud computing in a closed environment. For large enterprises that have invested heavily in data centers, it's a logical next step.

For ISVs offering their products through traditional license sales, leveraging a cloud platform and offering products through a SaaS model will mean substantial cost optimization and economies of scale that will benefit both ISVs and consumers of their products. It provides ISVs with opportunities to support new customers, to create point solutions for SMBs that were unable to deploy, and manage and maintain their own IT infrastructure for a critical application.

Nevertheless, an assessment of potential applications, their affinity toward different cloud options and business value projections will help you make informed decisions.

Assessment
Application Portfolio Assessment is a critical exercise, but can easily spiral out of control and fail if its objectives are not well understood or defined. An assessment to determine an application's readiness for the cloud should evaluate the cloud readiness of key applications in the portfolio by rationalizing the portfolio using a multi-dimensional analysis of cloud application characteristics and provide clear recommendations on a suitable migration option - private or public - and migration paths - IaaS, SaaS or PaaS. Further, cost analysis should help assess impact on TCO/ROI and aid in building a business case.

A business's interest in the cloud weighs heavily on the core values it promises to offer - elasticitydeliveredon-demand, and at a cost far less than what a dedicated infrastructure would require. Any cloud assessment would fall short if it fails to factor it. Figure 1 highlights few critical dimensions we recommend upon which the assessment should be done.

Figure 1: Assessment Criteria

Following are indicative guidelines that should be applied to the assessment outcome to determine an application's cloud readiness:

  1. A positive business outlook for the application will mean better growth prospects for the application, leading to increased workload, criticality and dynamism in the future, thus increasing its cloud affinity.
  2. A measure of elasticity along three key parameters - workload, storage, and utilization - will yield a more definitive result on an application's cloud affinity. Elasticity of storage and utilization can be derived from existing monitoring infrastructures. An historical log analysis will help characterize application workloads and thus help in arriving at a more meaningful insight on an application's workload pattern.
  3. Any negative impact on governance, risk and compliance will have a ‘veto' effect on an application's eligibility for hosting on the cloud.
  4. Finally, technical feasibility of moving an application to a cloud infrastructure, the impact of any architectural change on the application, and the impact on quality of services will require careful consideration. A positive impact on architectural change, such as SaaS enablement of a product, may result in portfolio rationalization, thus boosting the application's case for moving to the cloud.

Applying a weighted scoring model along the above dimensions should yield a fair and just insight on your organization's cloud readiness, and determine if there is value in moving to the cloud.

Much of an enterprise's infrastructure could be serviced by a single internal private cloud comprised of multiple physical data centers. While a public cloud will play a significant role in delivering conventional enterprise compute needs, the private cloud is expected to remain a critical part of the IT infrastructure for the foreseeable future. Key differentiating applications may never move completely out of the enterprise because of their mission-critical or business-sensitive nature.

Some of the above-mentioned criterias like robust security requirements, mission critical applications, and stringent SLA requirements, compliance requirements, dependencies of the workload on large data set will help in any decision pertaining to migrating an application to a private or public cloud.

Cost Analysis
The business case for cloud application migration is never complete without taking the target cloud platform into consideration. The migration and overhead costs vary widely based on the target cloud platform and thus will skew the estimated cost savings. Cost analysis helps decide whether to go ahead with moving a particular application to the cloud or not from a TCO/ROI perspective.

Cost should include capital expenditure, operational expenditure, and overhead costs involved with migration. Table 1 provides an indicative summary of cost elements that needs to be factored.

Table 1: Cost Considerations

Applications hosted on a dedicated infrastructure should be considered potential candidates for migration to the cloud. Computing differential cost savings for such applications against current workloads should be relatively straightforward. For applications on a shared infrastructure, individual application workload characteristics may have to be determined before arriving at differential cost savings.

Migration Strategy
Defining a migration strategy involves understanding the various migration options available, establishing business priorities, and evolving a strategy that offers a fine balance between costs and meeting business priorities. Fundamentally, enterprises have the two following options with a cloud infrastructure - private or public. Against these, they have the following migration paths to consider - IaaS, SaaS or PaaS. The choice is driven by priorities such as elasticity, business model, go-to-market strategy and constrained by factors such as technical feasibility, security, migration costs, etc. It's not uncommon for a large enterprise to leverage a hybrid approach in any of the above migration options and paths.

While working with a portfolio of applications, a single all-encompassing migration strategy would not help. Ideally, the migration strategy should be evolved on a per application basis after a thorough evaluation of the applications under consideration. Issues arising out of the migration of hardware infrastructure and architecture should be uncovered and dealt with as part of the implementation strategy.

Migration Paths
Migrating applications to the cloud to benefit from its elastic infrastructure services is a quick, cost-effective, and tactical approach to reap the benefits of the cloud. It offers a natural entry point to exploit the value of the cloud platform without any significant overhead costs. The migration will be straightforward, usually a simple re-hosting exercise, with minimal or no impact on application code. This minimizes any risks with migration while still keeping the costs low. However, it must be said that while this offers a cost-effective approach, it does not offer the cost advantage (while delivering services) against competitors who have true multi-tenant capabilities. Migrating applications to cloud vendors like Amazon EC2 or Rackspace fall under this category.

Migrating applications to SaaS architecture and hosting it on a shared services model gives true multi-tenant cost advantage to an enterprise. It helps rationalize a portfolio by removing redundant applications offerings similar services across geographies or lines of business in favor of a single multi-tenant application shared across all its users. However, enabling SaaS architecture on an existing application could be a daunting task as most of the existing applications are designed to be single tenant. The main principle that lay the foundation for this model is in maintaining a single code base of applications for all its tenants and allowing pluggable mechanisms to address tenant-specific extensions. Thus, a convincing ROI is essential to move directly toward a SaaS approach.

Vendors like Google App Engine, Microsoft Azure offer a cloud platform stack that allows businesses to leverage end-to-end cloud services. Although these vendors provide an overall platform to build and deploy cloud-based applications, they put a lot of constraint on the technology to be used on each of the application layers. Due to these technical constraints, existing applications may need significant changes to support the technology stack of the vendor. These factors practically limit the volume of application workload that can be moved to a PaaS model. In general, a PaaS model is considered most suitable when there is scope for ‘greenfield' development. With existing application assets, PaaS may still be a suitable option when considering a ‘rip-and-replace' strategy.

Table 2 provides high-level guidelines can be considered while selecting a suitable cloud migration path.

Planning and Implementation
When considering migrating an application to the cloud, a common pitfall is to focus on only technical or implementation concerns while overlooking other stakeholder and operations concerns. In reality, they are as important as the technical concerns and must be dealt with and rightly addressed. Thus, during migration planning, understand challenges that must be dealt with, categorize them as enterprise, operational and implementation related, and finally, prioritize and deal with them individually (see Figure 2).

Figure 2: Migration Planning

At the enterprise level, managing the interests of the various stakeholders involved would be the top priority. Other departments that depend on the information system being migrated will have to make appropriate measures to ensure their day-to-day operations are not hindered. Stakeholders could even be external to the organization such as vendors to whom the operations are outsourced. A suitable migration strategy needs to be put in place to handle such scenarios. The enterprise architecture group or entities with a similar function would play a pivotal role in uncovering such scenarios and highlight potential cost implications to senior management in the interest of the enterprise at large.

At the operational level, IT will need to extend its view to include cloud as an extension of their on-premise infrastructure to deliver better services to business. When setting up a private cloud infrastructure within the enterprise, this would mean providing an alternative service delivery model - offering virtualized infrastructure, and associated management infrastructure to support metering, billing and SLA management for its enterprise applications. Similarly, when migrating to a public cloud, assessing impact on existing service level contracts and renegotiating AMC and service levels should be of priority. In either case, mitigate risks by involving all relevant stakeholders during the migration planning phase. If your applications are outsourced and maintained by an external service provider, involving them early in the process would help make the transition smoother.

At the implementation level, challenges will primarily be around the handling of the movement of voluminous data, establishing failover mechanisms and secure communication channels, validation and verification of migration, to name a few. If you depend on external service providers for implementation, the evaluation criteria for selecting a suitable partner must be put in place. When selecting a partner solution provider, consider the size and resource focus of the organization you are considering. Choose a partner that has already achieved success for an organization similar to yours.

The next step is to do a pilot exercise with a handful of key applications to uncover the adoption risks. It is important to do the first migration right and therefore form a baseline approach to evolve for further application migration to the cloud. Create milestones and proof points that let you evaluate early on whether you are on the right track. Ensure that the individuals assigned to the implementation work have the appropriate skill set and experience.

Tools, accelerators and solution enablers greatly help in any implementation to de-risk and optimize delivery. Table 3 summarize few tools and accelerators that may aid in cloud migration.

Conclusion
In this update, we covered the key activities involved with migrating an application to the cloud. We provided broad analysis dimensions that will help organizations identify a suitable application workload, and transform the existing application workload to the cloud platform. Organizations intending to adopt the cloud computing model would benefit from the suggestions and guidelines covered. The recommendations shared here should be treated as only prescriptive, and may vary based on the industry segment and nature of the assets.

We recognize that every organization has its own unique challenges to face and circumstances to deal with. While cloud offers a compelling value proposition, it is also a highly disruptive change and, thus, businesses must be aware of the workforce dynamics within the organization, and take all its key stakeholders into confidence before making the decision.

More Stories By Ashok Kumar Arumugam

Ashok Kumar Arumugam is a Senior Technology Architect with Software Engineering and Technology Labs at Infosys. He has over 9 years of IT experience in product development, enterprise application design and migration. His areas of interest include application migration management, performance engineering and management, and cloud migration.

More Stories By Chetan Kothari

Chetan Kothari works as a Principal Architect at the Java Enterprise Center of Excellence at Infosys Technologies, a Global leader in IT & Business Consulting Services. He has over 12 years experience with expertise in J2EE application framework development, defining, architecting and implementing large-scale, mission-critical, IT Solutions across a range of industries.

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.


@MicroservicesExpo Stories
Enterprises are fast realizing the importance of integrating SaaS/Cloud applications, API and on-premises data and processes, to unleash hidden value. This webinar explores how managers can use a Microservice-centric approach to aggressively tackle the unexpected new integration challenges posed by proliferation of cloud, mobile, social and big data projects. Industry analyst and SOA expert Jason Bloomberg will strip away the hype from microservices, and clearly identify their advantages and d...
There is no question that the cloud is where businesses want to host data. Until recently hypervisor virtualization was the most widely used method in cloud computing. Recently virtual containers have been gaining in popularity, and for good reason. In the debate between virtual machines and containers, the latter have been seen as the new kid on the block – and like other emerging technology have had some initial shortcomings. However, the container space has evolved drastically since coming on...
Container frameworks, such as Docker, provide a variety of benefits, including density of deployment across infrastructure, convenience for application developers to push updates with low operational hand-holding, and a fairly well-defined deployment workflow that can be orchestrated. Container frameworks also enable a DevOps approach to application development by cleanly separating concerns between operations and development teams. But running multi-container, multi-server apps with containers ...
Converging digital disruptions is creating a major sea change - Cisco calls this the Internet of Everything (IoE). IoE is the network connection of People, Process, Data and Things, fueled by Cloud, Mobile, Social, Analytics and Security, and it represents a $19Trillion value-at-stake over the next 10 years. In her keynote at @ThingsExpo, Manjula Talreja, VP of Cisco Consulting Services, will discuss IoE and the enormous opportunities it provides to public and private firms alike. She will shar...
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo in Silicon Valley. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place Nov 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 17th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading in...
The integration between the 2 solutions is handled by a module provided by XebiaLabs that will ensure the containers are correctly defined in the XL Deloy repository based on the information managed by Puppet. It uses the REST API offered by the XL Deploy server: so the security permissions are checked as a operator could do it using the GUI or the CLI. This article shows you how use the xebialabs/xldeploy Puppet module. The Production environment is based on 2 tomcats instances (tomcat1 &...
SYS-CON Events announced today that EnterpriseDB (EDB), the leading worldwide provider of enterprise-class Postgres products and database compatibility solutions, will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. EDB is the largest provider of Postgres software and services that provides enterprise-class performance and scalability and the open source freedom to divert budget from more costly traditiona...
How can you compare one technology or tool to its competitors? Usually, there is no objective comparison available. So how do you know which is better? Eclipse or IntelliJ IDEA? Java EE or Spring? C# or Java? All you can usually find is a holy war and biased comparisons on vendor sites. But luckily, sometimes, you can find a fair comparison. How does this come to be? By having it co-authored by the stakeholders. The binary repository comparison matrix is one of those rare resources. It is edite...
With the advent of micro-services, the application design paradigm has undergone a major shift. The days of developing monolithic applications are over. We are bringing in the principles (read SOA) hereto the preserve of applications or system integration space into the application development world. Since the micro-services are consumed within the application, the need of ESB is not there. There is no message transformation or mediations required. But service discovery and load balancing of ...
Do you think development teams really update those BMC Remedy tickets with all the changes contained in a release? They don't. Most of them just "check the box" and move on. They rose a Risk Level that won't raise questions from the Change Control managers and they work around the checks and balances. The alternative is to stop and wait for a department that still thinks releases are rare events. When a release happens every day there's just not enough time for people to attend CAB meeting...
T-Mobile has been transforming the wireless industry with its “Uncarrier” initiatives. Today as T-Mobile’s IT organization works to transform itself in a like manner, technical foundations built over the last couple of years are now key to their drive for more Agile delivery practices. In his session at DevOps Summit, Martin Krienke, Sr Development Manager at T-Mobile, will discuss where they started their Continuous Delivery journey, where they are today, and where they are going in an effort ...
SYS-CON Events announced today that the "First Containers & Microservices Conference" will take place June 9-11, 2015, at the Javits Center in New York City. The “Second Containers & Microservices Conference” will take place November 3-5, 2015, at Santa Clara Convention Center, Santa Clara, CA. Containers and microservices have become topics of intense interest throughout the cloud developer and enterprise IT communities.
Disruptive macro trends in technology are impacting and dramatically changing the "art of the possible" relative to supply chain management practices through the innovative use of IoT, cloud, machine learning and Big Data to enable connected ecosystems of engagement. Enterprise informatics can now move beyond point solutions that merely monitor the past and implement integrated enterprise fabrics that enable end-to-end supply chain visibility to improve customer service delivery and optimize sup...
Buzzword alert: Microservices and IoT at a DevOps conference? What could possibly go wrong? In this Power Panel at DevOps Summit, moderated by Jason Bloomberg, the leading expert on architecting agility for the enterprise and president of Intellyx, panelists will peel away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud en...
I’ve been thinking a bit about microservices (μServices) recently. My immediate reaction is to think: “Isn’t this just yet another new term for the same stuff, Web Services->SOA->APIs->Microservices?” Followed shortly by the thought, “well yes it is, but there are some important differences/distinguishing factors.” Microservices is an evolutionary paradigm born out of the need for simplicity (i.e., get away from the ESB) and alignment with agile (think DevOps) and scalable (think Containerizati...
In this Power Panel at DevOps Summit, moderated by Jason Bloomberg, president of Intellyx, panelists Roberto Medrano, Executive Vice President at Akana; Lori MacVittie, IoT_Microservices Power PanelEvangelist for F5 Networks; and Troy Topnik, ActiveState’s Technical Product Manager; will peel away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of ...
There is no doubt that Big Data is here and getting bigger every day. Building a Big Data infrastructure today is no easy task. There are an enormous number of choices for database engines and technologies. To make things even more challenging, requirements are getting more sophisticated, and the standard paradigm of supporting historical analytics queries is often just one facet of what is needed. As Big Data growth continues, organizations are demanding real-time access to data, allowing immed...
While the DevOps movement and associated technologies have garnered much attention and fanfare, few have addressed the core issue - the hand off from development to operations. We tend to not acknowledge the importance of Release Management - a critical DevOps function. Release Management is the bridge between development and operations that needs to be strengthened with the right approach, tools, teams and processes. The white paper "How to set up an Effective Enterprise Release Management F...
I’m not going to explain the basics of microservices, as that’s that’s handled elsewhere. The pattern of using APIs, initially built to cross application boundaries within a single enterprise or organization, is now being leveraged within a single application architecture to deliver functionality. Microservices adoption is being driven by two forces: the need for agility and speed; and the re-composing of applications enabling experimentation and demands to support new delivery platforms such as...
Announced separately, New Relic is joining the Cloud Foundry Foundation to continue the support of customers and partners investing in this leading PaaS. As a member, New Relic is contributing the New Relic tile, service broker and build pack with the goal of easing the development of applications on Cloud Foundry and enabling the success of these applications without dedicated monitoring infrastructure. Supporting Quotes "The proliferation of microservices and new technologies like Docker ha...