www.evoswitch.comJAN WIERSMAApplication migration to the cloud
www.evoswitch.comEvoSwitch is your gateway to Europe, offering international colocation and housing servicesclose to the world’s largest internet exchange.Thanks to our autonomous power supply, maximum security and full 24/7 (remote) support we can accommodate all your ITinfrastructure needs. Because our carrier-neutral datacenters only use advanced energy efficient technologies, we maintain a PUE of1.2, while offering our services at a very competitive rate. EvoSwitch is your gateway to Europe, helping you build a hosting solutionto meet your requirements now, and as your company grows in the future.Want to know more? Call +31 (0)20 316 51 70, or send an email to firstname.lastname@example.org
After doing the necessary research, reading blogs and white papers,visitingseminarsandtalkingwithsuppliers,it’sbeendecidedthatcloudshould become the dot on the horizon for your organization. But howdo you reshape your current IT spaghetti into this utopian cloud world?APPLICATION MIGRATION TO THE CLOUDBY JAN WIERSMACLOUD AND DATA CENTER EVANGELIST FOR EVOSWITCHMigrating to external cloud computing has a significant impacton an IT organization, their role as a supplier and the way in whichapplications are developed and used. During the migration anorganization becomes less of an internal IT environment andincreases the utilization of external cloud computing environments.It is, therefore, necessary to take the presence of compositeapplications in the architecture into account. In addition, the movefrom the current enterprise IT environment to the different migrationpaths (SaaS, PaaS, IaaS) has its own characteristics.One of the best ways to approach cloud migration is to viewthe current IT environment from the perspective of applicationsor services. At the moment not all applications are suitable formigrating to an external cloud environment. Good candidates areapplications that are not mission-critical, are hardly integrated at allwith other important applications and those which are of no strategic(competitive) value to the organization.In order to reduce security risks, the application should not containany sensitive information. This might sound a bit limiting, but asexternal cloud environments mature, more applications will be ableto migrate to these environments.
PREPARATIONSAn application on a cloud platform is quite different from anapplication in the traditional IT environment. In his recent farewellblog, Roy Ozzie (formerly of Microsoft) writes about the futurechallenges of the new seamless, scalable computing models.The ideathat one can just move existing applications ‘without any fuss’ doesnot work. For instance, the user interface is changed to touch screen.Or new ways of data management are implemented, such as non-relational data models. And what about horizontal scalability? Evenprogramming styles (e.g. ‘fail ready’ software) ensure that existingcode is generally not instantly suitable for true cloud computingenvironments.An application portfolio analysis is the most important thing whenstarting the migration. Be careful though, this can soon get out ofhand if its purpose is not clearly described or understood.Whether anapplication or service is suitable for a cloud computing environmentwill have to be assessed by rationalization of the portfolio. Thisencompasses two ways of looking at applications in relation to thecharacteristics of a cloud application environment:1. The suitable migration option (private or public cloud)2. The suitable migration path (IaaS, PaaS or SaaS)Additionally, a cost analysis should determine the impact on the TCOand the ROI, which helps build a business case.GUIDELINESWhen conducting a rationalization of an application, the followingguidelines can be used to determine whether an application (orservice) is ready for the cloud:•• Elasticity determines whether and how an application can landon a cloud platform. This can be measured according to threecharacteristic parameters: workload, storage and utilization. Therequired data can often be retrieved from monitoring tools or logfiles in the existing environment.•• Any negative impact on governance (SLA, security, legal andregulatoryrequirements,etc.)immediatelytriggersaveto,preventingan application or service being moved to the public cloud.•• Technical feasibility: the impact on the architecture of theapplication, as well as the effect on the quality of service must beconsidered thoroughly.•• The extent to which the application is future-proof in functionalterms.By applying a ratings model to these areas, it should be possible toidentify the suitability of the application or service for migration toa cloud. While a public cloud infrastructure can offer many benefitsin terms of scale and cost when compared to a dedicated (private)cloud environment, certain applications will never move to thepublic cloud.This will chiefly be the case with applications containingan organization’s most prized possession: mission-critical or highlysensitive data.COST ANALYSISThe business case for cloud application migration is not completewithout taking the target platform (private or public cloud) intoconsideration. The migration and overhead costs vary significantlydepending on which option is chosen and hence also influence thetotal savings achievable. A good cost analysis helps with the choiceof whether or not to move an application and the expected TCO/ROI.It should at least include capex, opex and overheads, which can coverthe following elements, among other things:Capex•• Servers•• Storage•• Back-up•• Network equipment•• Real estate (datacenter)Opex•• Energy•• Personnel•• Bandwidth•• Maintenance•• Licensing contractsOverheads•• Migration costs•• Skills•• GovernanceIt should be reasonably easy to determine the cost advantagesfor applications and services that are offered on a dedicatedinfrastructure, making them good potential candidates for migrationto a cloud infrastructure. In the case of applications offered on ashared infrastructure, it may be necessary to make a specific workloadanalysis in order to determine the potential savings.
MIGRATION STRATEGYBefore determining an application migration strategy it is essential tobe aware of the objectives of the organization, as well as the variouspossibilities. The challenge lies in balancing organizational prioritiestogether with the costs.Enterprise organizations have two choices for cloud infrastructures(public and private). These give way to the following migrationpaths: IaaS, PaaS and SaaS. The choices are driven by matters suchas the aforementioned elasticity, business models and information2.0/ technology 2.0 strategies. At the same time there are severalfactors that limit possibilities, such as technical feasibility, security,migration costs, etc. That’s why it’s not uncommon for largeorganizations to select a hybrid cloud strategy enabling controlledevolution.Anapplicationportfoliorationalizationthatleadstoasinglemigrationstrategy for all applications is counterproductive. The migrationstrategy will have to be determined for each application or serviceseparately and must continue to develop throughout. This can onlytake place after a good evaluation of the applications in relation tothe areas outlined in this article. For instance, the challenges in thefield of hardware infrastructure and architecture that are connectedwith a cloud migration must become part of the overall migrationstrategy. It is important that the service or application is viewed fromthe total IT stack in order to discover and identify the correlation.MIGRATION PATHSEach migration path has its own characteristics, which are outlinedbelow:•• Migrating an application whereby the underlying serverinfrastructure is moved to a public or private IaaS environmentoffers a quick way of enjoying several of the benefits offered bycloud computing. This type of migration is uncomplicated, since itinvolves merely moving the host without any modification of theapplication code. Nonetheless, it should also be evident that thistype of migration only offers a small part of the benefits of cloudcomputing. Examples of the services referred to above are AmazonEC2 or Rackspace.•• Migrating to a true SaaS architecture and hosting the applicationin an environment that can serve hundreds of customers(multi-tenant) yields the biggest cost advantages for enterpriseorganizations. It also aids application rationalization by bringingtogether applications with identical functionality and offering themas a single SaaS application on a shared infrastructure. Migrating anapplication to a full SaaS environment can be off-putting, however,since most applications are not suited to this new multi-tenant cloudarchitecture. The move to an SaaS environment will therefore morelikely entail a replacement of the existing application. An exampleof this is the dedicated enterprise CRM by Salesforce.com. The keyhere is the utilization of a basic application code that is used for allhundreds of customers, which allows specific add-ons to be overlaid(plug-in, mash-up or widget).•• PaaS is available as an intermediate model. Suppliers such asGoogle App Engine and Microsoft Azure supply a complete cloud ITstack for software development and delivery. This gives the optionto build ‘true’ cloud applications and release them in a scalable andelastic environment. However, it also produces a raft of restrictionsat every technology layer of the application stack. These limitationsmean it is often difficult to migrate existing applications and code tothenewcloudenvironments.Thisissometimesduetotheapplicationcode and the fact that programmers occasionally‘forget’to programin orderly fashion (e.g. stateless/statefull). While this does not leadto any problems in current silo IT environments, it does present achallenge in shared PaaS and SaaS environments. For these reasonsPaaS is mainly suited to‘green field activities’.PLANNING AND IMPLEMENTATIONApplication cloud strategies often focus on the technicalconsequences of migration. But don’t forget that the introduction ofcloud technologies also has consequences for the organization. Forexample, it is important to consider the change in the function androle of administration when migrating. The effect on (existing) SLAs,service management, maintenance contracts, charging-on methodsand skill sets must also be taken into account.FINAL RECAPAssoonasoneisreadytomovetoacloudenvironment,itisimportantto closely examine the current application and services portfolio.Clear landing sites must be defined, such as private and public cloud,as well as routes such as IaaS, PaaS and SaaS. It is necessary for eachapplication to determine if it will be replaced by an application ina cloud environment. By evaluating the application using severalcloud basic elements and examining the costs of the application, it ispossible to map out a route to the future with a good business case.This takes some effort, but is necessary to ensure the success of thecloud transition.