Mark Prichard | CloudBeesPlatform-as-a-Service and AWS:the new Enterprise Java?
2Apologies in Advance: I’m very right-handed©2012 CloudBees, Inc. All RightsReserved
3• Cambridge University Computer Lab, 1990-1991• Logica/SHL/CSC: 1991-2000– Integration/Middleware Specialist– Managing Co...
4What did we like about JavaEE?• Standard way to build apps• Massive, proven eco-system of libraries, APIs, tools• Rich se...
5What did we not like about JavaEE?• Stack often too heavy for most applications• Sizing, scaling and performance: black a...
6©2012 CloudBees, Inc. All RightsReservedHaving your cake and eating it• Lightweight, web framework stacks• Fully-curated ...
7What is Platform-as-a-Service?• We run your applications for you• We provide and manage all the supporting infrastructure...
8CloudBees Is a PlatformDelivered As A Servicecloudbees.comJenkinsMasterTestStageBuildCodeJenkinsExecutorForgeRepositories...
9Have You Met Jenkins?• #1 OSS CI server• Easy to install/use• Extensible via 600+ plugins• Very widely adopted– 47K+ inst...
10Cloud Terminology• Infrastructure-as-a-Service (IaaS)– Think: Amazon Web Services– What: Server Instances, Storage Bucke...
11Getting Started: CloudBeesClickStarts©2012 CloudBees, Inc. All RightsReservedThe easiest way to get started – and learn ...
12More coming all the time©2012 CloudBees, Inc. All Rights Reserved
13• I am starting to work with in a new project and need toget going quickly• I need to learn about a new framework and wa...
14©2012 CloudBees, Inc. All RightsReservedMy shoulder hurts…
15cloudbees.comWhat’s up with thisnew framework!What Did I Just Do?15CloudBeesGitRepoDatabaseBuild/Testdb:createAppPartner...
16ClickStart.json: Putting It All Together16©2013 CloudBees, Inc. All RightsReserved{"id": "jboss-db-example","name": "Jav...
17How do I call a ClickStart?17©2013 CloudBees, Inc. All RightsReserved<ahref="https://grandcentral.cloudbees.com/?CB_clic...
18How an App Becomes a Stack - Java18Java App (jar)InfrastructureJava VMJava APICloudBees-CuratedStackUser-CreatedCloudBee...
19Frictionless Extension and ReuseCustomer &SI ManagedCommunityManagedCloudBeesCuratedForkPush Push Clone19©2013 CloudBees...
20How an App becomes a Stack – General Case20©2013 CloudBees, Inc. All RightsReserved• Interaction is with Apache and PHP•...
21What does PaaS means to you?• Keep quality high whiledelivering to tightschedule• Use the best tools for thejob• Coordin...
22• Problems– I need to provide a high quality product on an aggressive schedule– I need a way to track where everything i...
23Problem• Develop a Java-based web app for weight lossmanagement that is capable of scaling to meetunknown consumer deman...
24• Problems– I need to get a product out quickly to meet business needs.– I need adapt my existing processes to deliver m...
25Problem• Develop a global e-commerce system to enhanceonline customer experience while providing consistencyand flexibil...
26• Problem– We need to get the initial product out quickly, but be able to add newfeature/function rapidly and with confi...
27Problem• Get to market first, delivering a digital supply chain forwhite labeled loyalty programs in a space previouslyd...
28• Problem– I have established practices operationalizing how I deploy, update, andsecure what Development produces.– I n...
29Problem• Deliver an evolving set of customized apps againsta common production backend system at a rapidcadenceSolution•...
30Mobile Development is a Perfect Example©2012 CloudBees, Inc. All Rights Reserved
31PaaS Accelerates Mobile Development31©2012 CloudBees, Inc. All RightsReserved• Local coding, unit tests onone or a few p...
32• Visit the CloudBees Mobile Mall:http://pages.cloudbees.com/mobile-mall.htmlBlueprints and Resources for MobileProjects...
33• Token Vending Machine: AWS, PaaS and Mobile• Blogs: Amazon Web Service and Platform as a Service• Token Vending Machin...
34Quick Sidebar: What Does It Cost?• Your app always runs in secure, isolated containers towhich only you have access• We ...
35App-Cells Are The Basic Unit OfRUN@cloud Usage35©2013 CloudBees, Inc. All rightsreservedJava App (jar)CPUJava VMJava API...
36Use App-Cells To Suit Your Apps36©2013 CloudBees, Inc. All rightsreservedJava StackJava Managed Memory (Heap)Other Java ...
37App-Cells Are Charged By the HourExample: Growing Production Usage Over A Month37©2013 CloudBees, Inc. All rightsreserve...
38• Register on CloudBees.com, it is free and complete:– Deploy your app in the cloud!– Store your data– Do your build & t...
Upcoming SlideShare
Loading in...5
×

Amazon Web Services and PaaS - Enterprise Java for the Cloud Era? - Mark Prichard

228

Published on

The extraordinary growth of Java during the last decade owed everything to the set of infrastructure services that application servers provided as part of the platform. However, TCO eventually drove the move to the cloud and PaaS (Platform as a Service) is set to deliver a standard run-time for the next generation of applications, replacing the proprietary infrastructure provided by the application server vendors. Now the question is: where do developers of real-world business applications look for a common set of standard infrastructure services? Is there a common framework that can provide essential application services, such as message queueing, push notifications, email integration, in-memory caching and processing? Amazon Web Services (AWS) with their highly-scaleable IaaS (Infrastructure as a Service) model are an obvious answer, but how best to combine Java's rich ecosystem of tools, frameworks and knowledge with the scale and cost-effectiveness of cloud-based web services? This session will help you to understand how you can deliver applications that make effective use of those services by using a Java PaaS, without being forced to support the underlying infrastructure. In this code-rich session, aimed at architects and developers, Mark Prichard of CloudBees will show how you can: Pass Amazon security credentials and configuration parameters to PaaS applications at run-time to provide customized environments; use JDBC and Amazon RDS (Relational Data Service) to provide resilient and performant relational data servicesReplace JMS queues and topics with Amazon SQS (Simple Queue Service) and SNS (Simple Notification Service) to develop cloud-based messaging applications; use Amazon's SES (Simple Email Service) from Java applications. We'll also look at other cloud e-mail services that offer easy integration with the PaaS modelRun distributed caching solutions in the cloud using Amazon ElastiCache's in-memory distributed caching with Java PaaS deployments.

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

No Downloads
Views
Total Views
228
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • The way you use ClickStarts and ClickStacks follows what is probably a familiar model. We host them in open source form on a Github-based CloudBees community site. You can fork them, and if you find a way to improve them, submit a pull request to us. Communities like Play and Scala are already doing this, but creating their own galleries of community-managed ClickStarts. And as I was saying, I think you will see customers of ours and SIs like you create brand-new ClickStarts and ClickStacks for use internally, to get new employees up to speed quicker, and to capture standards.
  • CloudBees Services Used: RUN@cloudEcosystem Services: New RelicLose It! Delivers a Scalable and Compelling Weight Loss Experience Watch what you eat. It’s a core tenet of successful weight loss and weight management programs. Here’s another: there is power in numbers. The Lose It! web application, iPhone app and Android app have enabled users to take advantage of both of these principles to lose more than 10 million pounds collectively, with the average user dropping more than 12 pounds. “Tracking what you eat is a validated way to lose weight, but adding a social component—peer support—improves motivation and the efficacy of tracking,” explains Charles Teague, CEO of FitNow, the start-up company that developed Lose It! “When people form small support groups, they are more apt to stick with a diet program and succeed— and Lose It! helps them do just that.”FitNow decided early on to capitalize on their expertise and organizational knowledge by developing and delivering a great application to help people lose weight and eat healthier. For a five-person start-up, allocating resources and incurring overhead to manage day-to-day infrastructure needs was simply not viewed as a priority. Instead the company wanted to distinguish itself in a crowded software application market by offering a high quality application. “Our operations strategy is to leverage third parties for infrastructure and associated maintenance,” says Teague. “Our business strategy is to provide a great consumer experience that differentiates us, and that’s where we want to focus our resources. We do not want to invest in infrastructure—we just want it to be there.”FitNow executes its operations and business strategies for Lose It! with the CloudBees RUN@cloud Platform as a Service (PaaS) solution. “Thanks to CloudBees, we have managed to avoid hiring a full-time systems administrator to support what would be equivalent to 25 in-house servers,” notes Teague. “We have lower infrastructure maintenance costs and higher productivity because we have access to the computing resources we need, when we need them.”Challenge: Preparing for Unknown DemandWhen FitNow was ready to release the web version of Lose It! with social networking features, the company had no way of accurately predicting user demand, and thus no concrete way of planning how many servers they would need to meet that demand. “We could not predict how successful the application would be, so we didn’t know if we would need three servers or 53 on the day it launched,” says Teague. Infrastructure planning was further hampered by the seasonal nature of interest in weight loss programs, which typically subsides during the holidays but increases in January and at the beginning of summer. Overestimating demand and purchasing servers to provide the expected capacity would be a costly mistake, but so too would underestimating demand and not having enough capacity. It was clear that Lose It! would benefit from a cloud deployment that would enable rapid scaling to match demand.FitNow had made the decision to develop both the front end and the back end of the Lose It! application in Java. “We targeted Java because of its maturity, performance and overall robustness. We also wanted to use Google Web Toolkit on the front end – it is a good tool for creating really great client web experiences. With Java, we were also confident that the back end would live up to our performance, stability and code quality expectations,” explains Teague. The developers needed a solution that would enable them to make the most of Java, the cloud and PaaS deployment. This, in turn, would let Lose It! focus on delivering a great application, instead of dealing with infrastructure and deployment headaches. Teague and his team considered a number of potential solutions, but found that many lacked the automation, transparency and flexibility they wanted—including the ability to custom tune application servers and other aspects of the deployment environment as needed.A Flexible and Scalable SolutionFitNow deployed Lose It! to the cloud using RUN@cloud. All of the servers for the application, including application servers, replicated database servers and cache servers are running on RUN@cloud.The CloudBees infrastructure for Lose It! handles thousands of writes per minute and tens of thousands of reads per minute. “Lose It! is a high volume site. We’re seeing volumes as high as 25,000 transactions per minute and RUN@cloud is handling it all 24/7,” says Teague.When the development team wants to share a test version of the Lose It! website, they can instantly spin up a new server in the cloud. The ability to spin servers up and down as needed in a variety of pre-production states streamlines the development and testing process.Deployment has been streamlined as well. “We deploy once a week on average, though with major releases, it may be multiple times per day. We can do this without worry because it costs next tonothing with RUN@cloud,” says Teague.For FitNow, RUN@cloud has provided a vital layer between Lose It! and Amazon’s Infrastructure asa Service (IaaS) offerings. Teague notes that CloudBees takes care of details that few organizationshave the time or experience to delve into. “For example, I probably wouldn’t have had block stores indifferent isolation zones like CloudBees automatically did for us, thinking that there would never be ablock store problem. When Amazon went down last year, they had a major problem with one isolationzone on the Amazon block store. Siteslike ours which were across multiple zones - with data replicated,were able to restore service quickly and without any data loss,” he explains.FitNow gets real-time visibility into Lose It! application performance with the New Relic Software as aService (SaaS) solution. A part of the CloudBees Ecosystem, the New Relic service enables FitNow totrack server performance and analytics, as well as analyze requests to see how the front end, applicationand network are contributing to response times. FitNow can use this information to tune applicationservers in the cloud when necessary.ResultsDeployment in minutes, not weeks. “When deployment gets as easy as it does with CloudBees, itchanges the way you think about development,” says Teague. “At othercompanies I’ve worked for,deployment was a two-week process. Fixing any bug, even if it took a minute to write code, took twoweeks, so you had to be extremely careful on theproduction server. With RUN@cloud that same processnow takes us five minutes. We can address bugs and performance bottlenecks in minutes, which enablesus to continuously improve the quality of Lose It!”Reliable, high-volume transactions with no administration overhead. “Our application on RUN@cloud is handling more than a million simultaneous users and tens of thousands of transactions perminute—all with no systems administrators. That alone is saving us more than $100,000 per year,” saysTeague. “We are seeing three nines (99.9%) for up-time on the equivalent of 25 dedicated servers, with ahardware IT budget of zero.”Increased focus on core differentiators. “To deliver the Lose It! web application we needed scalability.RUN@cloud was a great fit, because it gave us a flexible, scalable solution with low entry cost,” says Teague.“Off-loading the technical back-end work to CloudBees enabled our team to direct all their efforts towardsone objective—creating a compelling, innovative user experience that will help people lose weight.”For more information about Lose It!http://www.loseit.com
  • Let’s take a really concrete use case that is driving a lot of new application development today – mobile – and take a look at how the CloudBees PaaS delivers all the tools you need to provide a complete solution. Developers will likely be working on a local machine, often testing locally with a very limited set of devices. They cut code, run unit and device tests, and commit locally. When they’re ready, they push their work to a shared repository. The push kicks off a build and a larger, matrixed and pipelined set of builds. These might include functional and integration tests, or long running tests to track performance regressions and device-specific gesture-driven tests.
  • Amazon Web Services and PaaS - Enterprise Java for the Cloud Era? - Mark Prichard

    1. 1. Mark Prichard | CloudBeesPlatform-as-a-Service and AWS:the new Enterprise Java?
    2. 2. 2Apologies in Advance: I’m very right-handed©2012 CloudBees, Inc. All RightsReserved
    3. 3. 3• Cambridge University Computer Lab, 1990-1991• Logica/SHL/CSC: 1991-2000– Integration/Middleware Specialist– Managing Consultant• BEA Systems, 2000-2008– Senior Architect, EMEA– Director, Java Virtualization• Oracle, 2008 -2012– WebLogic Platform PM– FMW Web Tier PM• CloudBees, 2012– Senior Director of Product ManagementMark Prichard – My Back Pages©2013 CloudBees, Inc. All Rights Reserved@mqprichardmprichard@cloudbees.comblogs.cloudbees.comClouds, Bees and Blogs
    4. 4. 4What did we like about JavaEE?• Standard way to build apps• Massive, proven eco-system of libraries, APIs, tools• Rich set of APIs and containers to simplify: e.g.– Messaging– Connection Pooling• Tooling and infrastructure to simplify deployment,configuration, resource management and monitoring• It worked
    5. 5. 5What did we not like about JavaEE?• Stack often too heavy for most applications• Sizing, scaling and performance: black arts• Hard to “mix and match” application services• Too much emphasis on the infrastructure• Iterative development slowed down• Pace of innovation slowed• Loss of developer focus
    6. 6. 6©2012 CloudBees, Inc. All RightsReservedHaving your cake and eating it• Lightweight, web framework stacks• Fully-curated or runtime-managed• REST + JSON + SaaS architectures• Elastic, on-demand deployments• If you need application services, choose:– AWS IaaS or SaaS for managed services• Integrated ALM, management/monitoring• Java IDE integration for rapid, iterative development
    7. 7. 7What is Platform-as-a-Service?• We run your applications for you• We provide and manage all the supporting infrastructureneeded to run your apps• We monitor, manage and can scale out your apps• We provide a full, enterprise-class build environmentusing Jenkins CI – the world’s #1 OSS continuousintegration server• Fully integrated ecosystem of cloud services
    8. 8. 8CloudBees Is a PlatformDelivered As A Servicecloudbees.comJenkinsMasterTestStageBuildCodeJenkinsExecutorForgeRepositoriesGitSVNmvnDevelopmentServices(DEV@cloud)Developer andOperationsInteractionEnd UserInteractionRuntimeServices(RUN@cloud)CloudBees APIGrandCentralWebConsoleSDKSessionClusteringMySQLRouterApplicationPartnerEcosystem8©CloudBees, Inc. All Rights ReservedMulti-TenantedDedicatedAmazon Web Services
    9. 9. 9Have You Met Jenkins?• #1 OSS CI server• Easy to install/use• Extensible via 600+ plugins• Very widely adopted– 47K+ installations• Very active community– Over 7 years of history, 440+ releases– 600+ plugins, 300+ developers• CloudBees adds plugins for cloud builds
    10. 10. 10Cloud Terminology• Infrastructure-as-a-Service (IaaS)– Think: Amazon Web Services– What: Server Instances, Storage Buckets etc• Software-as-a-Service (SaaS)– Think: Salesforce.com– What: Packaged Applications (in the Cloud)• Plaform-as-a-Service (PaaS)– What: Managed Service for Custom Apps
    11. 11. 11Getting Started: CloudBeesClickStarts©2012 CloudBees, Inc. All RightsReservedThe easiest way to get started – and learn new technologies
    12. 12. 12More coming all the time©2012 CloudBees, Inc. All Rights Reserved
    13. 13. 13• I am starting to work with in a new project and need toget going quickly• I need to learn about a new framework and want tolearn using a working example• I want to hand off my project to a customer• I want to capture my work so others can re-use itClickStarts: not just for demos…13©2013 CloudBees, Inc. All RightsReserved
    14. 14. 14©2012 CloudBees, Inc. All RightsReservedMy shoulder hurts…
    15. 15. 15cloudbees.comWhat’s up with thisnew framework!What Did I Just Do?15CloudBeesGitRepoDatabaseBuild/Testdb:createAppPartnerServicePartnerServiceCloudBeesAPIGrandCentralWebConsoleBindBindTriggerDeployWow! At yourservice©2013 CloudBees, Inc. All rightsreserved
    16. 16. 16ClickStart.json: Putting It All Together16©2013 CloudBees, Inc. All RightsReserved{"id": "jboss-db-example","name": "Java EE 6 Web Profile","source": "git://github.com/CloudBees-community/jboss-db-example.git","description" : "A full Java EE 6 Web Profile application, with a database and continuous deployment","doc-url" : "https://github.com/CloudBees-community/jboss-db-example/blob/master/readme.md","icon" : "https://d3ko533tu1ozfq.cloudfront.net/clickstart/ee_icon.png","app-package" : "https://s3.amazonaws.com/cloudbees-downloads/clickstart/jboss-db-example.war","supported-by" : "cloudbees","order" : 1,"runtime": {"type": "jboss"},"databases": [{"type": "mysql","alias": "ExampleDS"}],"build-with-jenkins": {"template": {"type": "maven","options": {}}}}
    17. 17. 17How do I call a ClickStart?17©2013 CloudBees, Inc. All RightsReserved<ahref="https://grandcentral.cloudbees.com/?CB_clickstart=https://raw.github.com/CloudBees-community/play2-clickstart/master/clickstart.json"><imgsrc="https://d3ko533tu1ozfq.cloudfront.net/clickstart/deployInstantly.png" style="max-width:100%;"></a>
    18. 18. 18How an App Becomes a Stack - Java18Java App (jar)InfrastructureJava VMJava APICloudBees-CuratedStackUser-CreatedCloudBees-CuratedJava EE App (war)InfrastructureJava VMJava APICloudBees-CuratedStackUser-CreatedCloudBees-CuratedJava EE (jars)• Interaction is with the JavaVM and API• Deployment unit is jar file• Interaction is with the Java EE Server• Deployment unit is war file• Extensions thru container contract andvendor facilitiesJava Runtime Stack Java EE Runtime Stack©2013 CloudBees, Inc. All RightsReserved
    19. 19. 19Frictionless Extension and ReuseCustomer &SI ManagedCommunityManagedCloudBeesCuratedForkPush Push Clone19©2013 CloudBees, Inc. All RightsReserved
    20. 20. 20How an App becomes a Stack – General Case20©2013 CloudBees, Inc. All RightsReserved• Interaction is with Apache and PHP• Deployment unit is PHP and HTML files• Interaction is with Drupal CMS• Deployment unit is a web site Profile• Extensions thru modules, librariesPHP Runtime Stack Drupal Runtime StackPHP App (php)InfrastructureCloudBees-CuratedStackUser-CreatedCloudBees-CuratedApachePHP InterpreterSite Profile (zip)InfrastructureCloudBees-CuratedStackUser-CreatedCloudBees-CuratedDrupal (zip)ApachePHP Interpreter
    21. 21. 21What does PaaS means to you?• Keep quality high whiledelivering to tightschedule• Use the best tools for thejob• Coordinate visibleprogress across team• Make best use of existingtechnology investments• Sustainability of newinvestments• Protect business in theevent that a problemoccurs• Reduce risk and cost• Reproducibility ofdeployments• Ensure systems security• Time to market• Constant delivery of newvalue/features• Better insight intocustomer usage/needsCloudBees offers unique, concrete value in each of these areas.Dev/QAEnterpriseArchitectDevOps andSys AdminsProductLead21©2013 CloudBees, Inc. All RightsReserved
    22. 22. 22• Problems– I need to provide a high quality product on an aggressive schedule– I need a way to track where everything is in a release cycle• Solution– Set up a dev-test-stage-production pipeline in the cloud– Unify your CI and CD: use the language and stacks you prefer.• Benefits– No IT procurement/setup delays or headaches– Enforce Dev and QA org values and processes using Jenkins– Fast feedback cycle, fast delivery cycle, better qualitySpeed and Quality – Developer and QA22©2013 CloudBees, Inc. All RightsReserved
    23. 23. 23Problem• Develop a Java-based web app for weight lossmanagement that is capable of scaling to meetunknown consumer demandSolution• Use RUN@cloud from CloudBees to streamlinedeployment, support tens of thousands oftransactions/minute and rapidly scale up or downas neededBenefits• Deployment in minutes, not weeks• Reliable, high-volume transactions with noadministration overhead• Increased focus on core differentiatorsProof Point – Lose It!Rapid Scalability, Laser Focus on User Experience Is The Key To MobileSuccess©2013 CloudBees, Inc. All RightsReserved“Off-loading the technical back-end workto CloudBees enabled our team to direct alltheir efforts towards one objective-creatinga compelling, innovative user experiencethat will help people lose weight.”Charles TeagueLose It!23
    24. 24. 24• Problems– I need to get a product out quickly to meet business needs.– I need adapt my existing processes to deliver mobile apps• Solution– CloudBees provides all the tools and support so that you can focusexclusively on application development.– Use DEV@cloud and best-of-breed CloudBees partner solutions toautomate mobile app development, testing, and deployment• Benefits– All resources available on-demand, delivered as-a-service– Deliver and improve functionality continuously, incrementallyTime to Market – Product Lead24©2013 CloudBees, Inc. All RightsReserved
    25. 25. 25Problem• Develop a global e-commerce system to enhanceonline customer experience while providing consistencyand flexibility to GROUPE ADEO companiesSolution• CloudBees DEV@cloud solution for fasterdevelopment, increased productivity andefficiencies offered by the cloudBenefits• Speed up of more then 5x in setting upnew projects• One week of development productivitygained, per month• Ability to instantly scale, as needed• Easy extensibility of platform functionalityProof Point – Groupe AdeoAgile Development Delivers Results for Global e-Commerce App25©2013 CloudBees, Inc. All RightsReserved“ADEO needed to combine continuousintegration for agile development with thesimplicity of the cloud. We didn’t find anyother production-ready PaaS solutions thatcould provide the same functionalityprovided within DEV@cloud.”Didier GirardGroupe Sfeir
    26. 26. 26• Problem– We need to get the initial product out quickly, but be able to add newfeature/function rapidly and with confidence from there.• Solution– Continuous Cloud Delivery is the best approach to keeping yourproduct in a release-ready state at all times, ensuring that you cancontinue to drive new feature/function out rapidly.• Benefits– Eliminate impedance mismatch between staging and production– Always have the right resources available when you need them– Pipelines and promotions deliver quick feedback, high qualityContinuous Delivery– Enterprise Architect26©2013 CloudBees, Inc. All RightsReserved
    27. 27. 27Problem• Get to market first, delivering a digital supply chain forwhite labeled loyalty programs in a space previouslydominated by a few established playersSolution• Use the CloudBees PaaS and Continuous Cloud Deliveryto deliver fast, deliver early, and deliver qualityBenefits• First to market, won significant new business with majorcompanies• Able to focus exclusively on application development,leaving IT admin to CloudBees• Scale for spiky loads, providing sub-second response timesto digital inventory of over 8 million items• Stand up entirely new projects for new customers in underan hourProof Point – Choose DigitalChoose Digital Transforms Loyalty Programs with Digital ContentMarketplace©2013 CloudBees, Inc. All RightsReserved“We use continuous integration andcontinuous delivery with CloudBees,enabling every developer to deliverincremental functionality while beingaccountable for his or her own code. As aresult, the effort of each developer isaligned to the goals of the company, andthat keeps us lean, focused and fast.”Mario CruzChoose Digital27
    28. 28. 28• Problem– I have established practices operationalizing how I deploy, update, andsecure what Development produces.– I need everything scripted– I can’t depend on any one person• Solution– Use Jenkins to automate and control deployments reproducibly using theCloudBees deployer and SDK.• Benefits– Maintain control where you add most value, offload elsewhere– Roll back as needed to a previous state– Trace problems to their originBest Practice Blueprints – IT Ops28©2013 CloudBees, Inc. All RightsReserved
    29. 29. 29Problem• Deliver an evolving set of customized apps againsta common production backend system at a rapidcadenceSolution• Use the CloudBees PaaS to deploy and manageover 60 cloud applications for Bullhorn customersBenefits• 80% reduction in time spent resolvinginfrastructure issues• Scalable infrastructure enables Bullhornto meet demanding customer needs• Focus on customer satisfaction – notdevelopment infrastructureProof Point – BullhornStreamline Application Delivery and Cloud Deployment for Customers©2013 CloudBees, Inc. All RightsReserved“The ROI we’ve experienced since webegan working with RUN@cloud hasbeen phenomenal.”Matthew FisherBullhorn, Inc.29
    30. 30. 30Mobile Development is a Perfect Example©2012 CloudBees, Inc. All Rights Reserved
    31. 31. 31PaaS Accelerates Mobile Development31©2012 CloudBees, Inc. All RightsReserved• Local coding, unit tests onone or a few platforms• Push to shared repository• Automatically kick offbroader tests async• Fix issues when notifiedDevelopmentPush• Matrix testing across devicetargets and locales• Track long-running tests andregression suites• Support older releases• Gate uptake across teamsQuality AssurancePromote• Push to staging at propermilestones• Coordinate beta and limitedaccess testing• Gate push to productionRelease EngineeringBuildDistributeGatherReportArchiveStageZHUBIUM
    32. 32. 32• Visit the CloudBees Mobile Mall:http://pages.cloudbees.com/mobile-mall.htmlBlueprints and Resources for MobileProjects©2012 CloudBees, Inc. All Rights Reserved
    33. 33. 33• Token Vending Machine: AWS, PaaS and Mobile• Blogs: Amazon Web Service and Platform as a Service• Token Vending Machine ClickStartsExplore PaaS and Amazon Web Services©2012 CloudBees, Inc. All Rights Reserved
    34. 34. 34Quick Sidebar: What Does It Cost?• Your app always runs in secure, isolated containers towhich only you have access• We can run those containers for you using sharedresources or dedicated resources• You pay only for what you need: a fixed subscription or“pay as you go” pricing• FREE and COMPLETE for developers: no credit cardrequired
    35. 35. 35App-Cells Are The Basic Unit OfRUN@cloud Usage35©2013 CloudBees, Inc. All rightsreservedJava App (jar)CPUJava VMJava APIJava StackJava Managed Memory (Heap)Other Java MemoryNon-Java MemoryJava Class StructuresYour app candeploy in as littleas one app-cell. Asingle app-cellprovides 128 Mbof memory and1/8 of an AWS EC2Compute Unit ** Amazon EC2 Compute Unit
    36. 36. 36Use App-Cells To Suit Your Apps36©2013 CloudBees, Inc. All rightsreservedJava StackJava Managed Memory (Heap)Other Java MemoryNon-Java MemoryJava Class StructuresJava StackJava Managed Memory (Heap)Other Java MemoryNon-Java MemoryJava Class StructuresJava StackJava Managed Memory (Heap)Other Java MemoryNon-Java MemoryJava Class StructuresJava StackJava Managed Memory (Heap)Other Java MemoryNon-Java MemoryJava Class StructuresFour app-cells cansupportfour Javaapps, or oneJava app,using a totalof 512Mbmemory, forthe samecost.Java StackJava Managed Memory (Heap)Other Java MemoryNon-Java MemoryJava Class Structures
    37. 37. 37App-Cells Are Charged By the HourExample: Growing Production Usage Over A Month37©2013 CloudBees, Inc. All rightsreserved1 app-cell usingTomcat on 1instance for 8 days,24 hr/day4 app-cells usingTomcat on 1instance for 8 days,24 hr/day8 app-cells usingTomcat on 5instances for 14days, 24 hr/dayOne month(192 app-cell-hr + 768 app-cell-hr + 2688 app-cell-hr) * $0.019/app-cell-hr = $69.31 for the month
    38. 38. 38• Register on CloudBees.com, it is free and complete:– Deploy your app in the cloud!– Store your data– Do your build & test in the cloud• Jenkins as a Service• Repositories: Git, SVN, Maven/DAV• Eclipse plugin– Free program for FOSS projectshttps://grandcentral.cloudbees.com/account/signupTry it for Yourself©2012 CloudBees, Inc. All Rights Reserved

    ×