Your SlideShare is downloading. ×
0
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Developing applications for the cloud
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Developing applications for the cloud

138

Published on

As we know, HP is all about "The New Style of IT". To achieve this, HP has highlighted 4 Big Bets: Cloud, Security, Mobility and Big Data. Bart Blommaerts, Expert Information Developer, is going to …

As we know, HP is all about "The New Style of IT". To achieve this, HP has highlighted 4 Big Bets: Cloud, Security, Mobility and Big Data. Bart Blommaerts, Expert Information Developer, is going to talk about “Developing applications for the Cloud“. Bart will focus on these questions:

Why do we want applications in the cloud?
Which applications do we want in the cloud?
What methodology do we need to use, to move to the cloud?
Does the cloud have implications on how applications should be developed?


Bart will demonstrate potential pitfalls, and explain the HP approach that aims to avoid issues on the performance, elasticity, resilience and security of Cloud applications. This brown bag session will be an incremental update of a presentation Bart did at HP Discover in Barcelona last year. It is about concepts and methodology, not about technical implementation.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
138
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Cloud = 1 of the 4 Big Bets
  • How does the Cloud help you achieve these objectives:

    New Economics - The fundamental alignment of purchasing to consumption - pay for what you use, lower operational costs (b/t 10-50% in many cases), and from a financial perspective shifting the expenditures from capital expenditures to operational expenses

    Speed – is about having your IT resources focused on highest value projects by freeing up cycles on maintenance/patching tasks. This is also about providing the tools to increase the flexibility and in many cases the reliability of your infrastructure.

    Agility & innovation – enabling users to more quickly take advantage of the latest innovations, leverage the self-service capabilities of online services for employees, and enable them to be productive in many locations on many different devices.

    MACRO REALIZATON:
    These Cloud services will start coming into your organization and as an IT organization you can embrace and develop a strategy or have this change happen to you as your business stakeholders start to implement


  • Eg. Most of the time fat clients will not be an economic fit for the cloud .. Although it is possible (eg. Via JNLP)
  • Developers want to be agile, go fast, release often.
    Operations wants to keep everything stable.
    DevOps can solve this difference: Development and Operations need to work together better and sooner. Bridge Development and Operations for faster delivery of applications

    To achieve this, we propose the continuous approach and far-reaching virtualization.

    Continuous Approach:
    Continuous Testing: reduces need and urge for testing at the end
    Continuous Monitoring: detect issues faster
    Continuous Improvement: decrease time to reproduce and fix issues faster
    Continuous Deployment: resolve issues faster
    Continuous Delivery: shorter time-to customer

    Virtualization:
    Servers: reduce risk of outage
    Servers: reduce cost (no physical hardware)
    Services: Increase quality: test earlier
    Services: reduce time-to-market (test services that are finished, before the application is finished)


    Flemish Government: migration to WLS.
  • Cry for standardization and openness .. While these might be very different.
    This means: choose open standards, try to avoid propriety OS’s, avoid direct coupling between Java/Other and systems such as LDAP or AD, try to avoid technologies that require license fees.

    Kamesh Pemmaraju, Product Manager at Dell.
  •  This graph illustrates the first challenge I spoke about:
    In a truly scalable application, an increase in resources results in a proportional increase in performance (purple line)
    If there are some inherent performance flaws or bottlenecks in the application, you WILL be able to meet the demand because of the cloud infrastructure’s ability to scale up. However, you could end up paying more than you need to. You may start 10 VMs to meet the demand when you would only need 2 if the application was performance optimized in the right way

    You will need to identify functional components causing performance constraints and refactor in order to fully take advantage of the cloud. Examples of this might include: Inefficient database queries, or decoupling compute-intensive components to they can scale independently from the rest of the application.

    A stat from the just released CapGemini world quality report was that a quarter of the respondents indicated that they encountered application performance issues within the first few months of moving to the cloud

    So this can be a very real issue
  • For building new applications or refactoring existing applications we strongly emphasize on modularity.
    Where possible modules get their own life cycle to enable virtual services.
    Benefits:
    Only up-scale the services that require upscaling
    Effective infrastructure resource management
    Realtime feedback on load and thus performance of modules
    Head-start for continuous improvement
  • Business:
    Talk about services with the customer: what kind of services can he provide
    Sell services, not applications
    Maybe other parties are interested to consume your services?

    Development:
    Packaging:
    OSGI, Maven Modules, Project Jigsaw
    Scalability:
    Multi-threading, parallelism
  • Business:
    Does it make sense for a service to have it’s own life cycle?
    Does the would-be service benefit from scaling? Eg. Complex calculations.
  • The next question is “what workloads are a fit for the cloud?”

    There are 4 Key Patterns:
    “On / Off” or Batch processing
    Growing Fast
    Unpredictable Bursting
    Predictable Bursting

    The first workload is an “on / off”. For example, a customer that runs risk analysis for hedge funds. The big challenge for hedge funds is acting quickly. You want to look at market trends, do some analysis and buy or sell based on what the analysis outcome. They will want to come in, book a bank of machines for a month or a week or maybe just a few hours to do their analysis then go back to their clients and make recommendations. This model makes complete sense because you don’t have to buy a bunch of machines that they will never use. They never sit empty, you come in, use what you want and turn it off.

    Another example is an application that is growing quickly. Typically startups or companies launching a new product and want to plan for the best case scenario – and that is a hot service or product. Years ago this was not possible - a company or organization would have to gamble on making reasonable estimates on their needed IT capacity. Today, that gamble is no longer necessary.

    The third example is unpredictable bursting. Lets say you are the sole provider of sporting goods and apparel for the university of Kentucky Wildcats basketball. (one of the final four teams).. As a smaller sports retailer, you are not able to predict and build for the infrastructure needed to handle the peek demands you will see after winning the tournament. I am not a Kentucky fan… just a prediction.

    The last thing is predictable bursting, it is tax time, so lets use that as our example. Your business offers tax preparation services. You know in the months of March and April you will be running full out. Why carry the capacity to handle this predictable peak throughout the year? A cloud PaaS will allow you to throttle up your resources for these two months and throttle back down in May.

    [next]
  • Not going into detail. Important: Service Platform is a platform. The Creation Services and Runtime Services should be perceived as building blocks for other services in the Service Platform.

    Nice to know: Service Platform is used for development in the cloud: this means application development starts in the cloud!

    Controller will be the HP CSA, which is an HP standard.
    Besides creation, change and termination, the controller is also able to facilitate service discovery: what services are available / what services can be build .. Together?
  • Architecting elasticity in means:
    Elasticity as a feature: how should the application behave if a new instance appears / disappears
    Elasticity as a selling point: only pay for the computing time you need
  • Service Level Objective dependent: if availablity is crucial we will propose another configuration then the case were availablity is not crucial.
    Options: load balanced servers, clustered servers, ..

    Application behavior can often also be implemented in the chosen infrastructure: what should happen when a new middleware is spun?
  • This optimized approach combines secure architectural design principles, security code analysis or scanning, vulnerability  assessments, and penetration testing to avoid, mitigate, find, or fix vulnerabilities as early as practical, resulting in fewer vulnerabilities to be addressed at the most expensive time – late in the development lifecycle.

    Design security continuously: from development to deployment.

    Do not take shortcuts.
  • HP Helion: which cloud is right for you? Focus on cloud

    Accelerator Pack: more information, free demos, training, cost calculator, ..

    At2c: focus on application
  • Transcript

    • 1. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Developing applicationsforthecloud Bart Blommaerts – HP Enterprise Services Brussels – July 1, 2014
    • 2. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Why application development in the cloud? New economics • Pay for what you use • Shift from capex to opex • Accelerate time to value Speed • Faster deployment • Reduced patching or maintenance • Reliability and fault- tolerance Agility & innovation • Enable new apps and services • Latest software for users • Internet collaboration/ global reach $
    • 3. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Applications in the cloud Perception “Cloud is about operations and infrastructure” Reality The business is concerned with user services (i.e. dev & ops together) Cloud ROI depends on application DNA “All applications make sense in the cloud” Only apps with certain usage profiles are an economic fit for the cloud “Apps can just be moved to the cloud for cloud benefits” Cloud has implications for HOW applications should be built
    • 4. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. DevOps IT Operations Keys to bridge the gap: “Build to run” “Regular releases reduce risk” Quality Automation Collaboration Agile Delivery Apps / Dev Continuous Delivery
    • 5. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. “Developers,especiallyforhome-grownapplications, maydomanynonstandardthings(makecallstothe hardware,makeassumptionsaboutthenetwork infrastructureorenvironmentitisrunningin,andsoon). Youhavetothinkdifferentlyifyouarebuilding applicationsthatwillrunacrosswide-areanetworksor acrossdatacenters.” – CIO, software vendor Source: SandHill Group, Leaders in the Cloud, March 2010
    • 6. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. The key application considerations Application ‘cloud-readiness’ Performance Application elasticity drives cloud economics. Apps must be designed to scale up for agility AND down for cost savings. An under-performing application can negate the savings promised by the cloud. In the cloud, it is more important to anticipate and proactively handle failures. Cloud brings new risks for apps in a shared environment. Security should be built-in, verified and monitored. Elasticity Resilience Security
    • 7. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Cloud savings are dependent on a performing application Performance: Impacts your savings Performance Wasted investment in application virtual images $ Spent on virtual images Businessdemand
    • 8. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Modular applications to enable virtual services Performance: Our approach Performance Module 1 Module 2 Module n Application
    • 9. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Performance: new applications Performance “Architecting modularity in” from the beginning Business • Think in services • Think beyond the current scope: future reuse? Multi-tenancy? Development • Use language specific module technologies – Packaging, Scalability, .. • Build services with own life cycle • Consider load-balancers
    • 10. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Performance: application transformation Performance Business • Identify services in existing applications • Think beyond the current scope: future reuse? Multi-tenancy? Development • Iterative refactoring • Pay attention to service integration
    • 11. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Elasticity Elasticity and cloud benefits Infrastructurecost Forecasted Demand Time Traditional Approach Fully Elastic Actual Demand A ‘cloud-optimized’ application allows much closer alignment of costs with actual demand
    • 12. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Workload patterns suited for cloud Usage Compute Time Average Inactivity Period “On and off” • On and off workloads (e.g. batch job) • Over provisioned capacity is wasted • Time to market can be cumbersome Compute Time “Unpredictable bursting” Average Usage • Unexpected/unplanned peak in demand • Sudden spike impacts performance • Can’t over provision for extreme cases Average Usage Compute Time “Growing fast” • Successful services needs to grow/scale • Keeping up w/ growth is big IT challenge • Complex lead time for deployment Compute Time “Predictable bursting” • Services with micro seasonality trends • Peaks due to periodic increased demand • IT complexity and wasted capacity Average Usage Elasticity
    • 13. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. ES Service Platform (SP) Elasticity: Our approach Elasticity SP Creation Services • Integrated set of application development tools and services SP Runtime Services • Complete suite of runtime tools (middleware, monitoring) as-a-Service SP Controller • Control services: creation, change, termination, service discovery Mission: Accelerate the creation, evolution and operation of high quality application services through a reusable cloud platform.HP SP
    • 14. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Elasticity: modules / services “Architecting elasticity in” Business • Feature • Selling point Development • Module templating – Eg. OnCreate, OnDestroy, .. Elasticity
    • 15. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Resilience “Early customers of [leading cloud provider] found this out the hard way when the service had a short outage. When it returned, many customer’s applications didn’t.” - Forrester Source: Forrester Research, Inc., Best Practices: Infrastructure as a Service, September 2009 Resilience: elevated in importance Less control and visibility of the environment • Network & disk performance variance due to multi-tenancy of cloud Must design, implement, & test for auto-recovery from failure • Assume hardware will fail; assume outages will occur; assume your application will fail
    • 16. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Resilience: Our approach Resilience Operation Model Infrastructure: SLO dependent • Choose the correct Cloud infrastructure configuration Application: Define behavior as operations • Create • Shutdown • Restart / restore
    • 17. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Resilience: Our approach Resilience Operation Model Business • Integral part of business: think, describe, test, .. Development • Not an after tought !
    • 18. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Security: key cloud problems Lowest common denominator Cloud is a shared environment Attackers seek access though weaker, adjacent apps Limited control & knowledge of public cloud infrastructure Hypervisors, guest and host OSs have vulnerabilities Data needs to be encrypted for security & compliance Cloud apps often rely on 3rd party components You don’t have assurance they are secure unless you test Web services are rarely effectively security tested Low control of environment 3rd party components Security
    • 19. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Security: Our approach Security “Architecting security in” from the beginning Early and continuous • Address all phases of the application lifecycle • Automate application security testing Different tools available for specific customer requirements • HP Fortify – Static testing, mobile testing, penetration testing, .. • HP WebInspect
    • 20. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Learn more about this topic 1 HP Helion Assessment: http://www8.hp.com/us/en/business- solutions/cloud-assessment/index.html 2 Visit the ES Service Platform Connections website: https://connections.houston.hp.com/groups/es-service-platform 3 Download the Cloud Accelerator Pack www.hp.com/go/acceleratorpack 5 Follow us @hpcloud on Twitter 4 Asses your application for cloud computing: https://www.hp-appstogo.com/at2c
    • 21. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Thankyou

    ×