april25-26sanfranciscocloud success starts hereDelivering SaaS Using IaaSShivan Bindal, Sr. Product Manager, RightScaleChr...
#2#2#RightscaleComputeAgenda• Refresher of RightScale Capabilities• Contextual Awareness• Deployment Complexity• The Resum...
#3#rightscalecomputeBasic FeaturesRightScale Features
#4#4#RightscaleCompute• Set up Cloud Resourcesdynamically at boot time• Provide Monitoring andAlerts• Enable run-timeconfi...
#5#5#RightscaleComputeDeploymentsDeployment-level abstraction• Abstracts resources such as:• Virtual machines (instances)•...
#6#6#RightscaleComputeUser Model with Permissions• Each account corresponds to a setof cloud credentials• Accounts have co...
#RightscaleCompute#7#7Contextual AwarenessAbstract complexity with simple organization
#8#8#RightscaleComputeTraditional Use CaseDev Sandboxes Staging ProductionAll inOneAPPDBAPPAPPAPPAPPAPPAPPAPPAPPAPPAPPAPPD...
#9#9#RightscaleComputeRightScale Example• Developers have access to test account where they can createdeployments and serv...
#10#10#RightscaleComputeNon - Traditional Use CaseCustomer 2APPAPPAPPAPPAPPAPPAPPAPPAPPAPPAPPDBDBLBCustomer 1APPAPPAPPAPPA...
#11#11#RightscaleCompute• Once on-prem legacy applications *can* be brought to cloud• Several customers instantiate deploy...
#RightscaleCompute#12#12Deployment ComplexityDigging into the details
#13#13#RightscaleCompute
#14#14#RightscaleCompute
#15#15#RightscaleComputeBrowsersRightScale DashboardInternetCloudboundaryLatency-based RoutingLoad Balancing ServiceF5 (Pr...
#16#rightscalecomputeThe ResumatorSaaS platform for collecting resumesand managing hiring processes
#17#rightscalecomputeProduct tourTechnical challenges
#18#18#RightscaleComputeCustom careers sites
#19#19#RightscaleComputeCustom careers sites
#20#20#RightscaleComputeDocument processing/rendering
#21#21#RightscaleComputeSearch
#22#22#RightscaleComputeEmail messaging
#23#rightscalecomputeCompany Overview
#24#24#RightscaleCompute2009• Founded in Pittsburgh, PA• 1 employee• 1 server
#25#25#RightscaleCompute2011
#26#26#RightscaleCompute2012
#27#27#RightscaleCompute2012 -> 2013
#28#28#RightscaleComputeWhat’s next?• Unknown is scary if not prepared• Stay a step ahead of growth• Benchmark trigger poi...
#29#29#RightscaleComputeEngineering at The Resumator• 7 engineers + 1 systems admin• Release often (sometimes daily)• Gene...
#30#rightscalecomputeTechnology
#31#31#RightscaleComputeTechnology• EC2• S3• LAMP• Varnish• Redis• Apache Solr
#32#rightscalecomputeInfrastructure
#33#33#RightscaleCompute
#34#34#RightscaleCompute
#35#35#RightscaleComputeDevelopment and Deployment• Jira issue –> Git commit –> Tagged release• RightScript checks tagged ...
#36#rightscalecomputeExample
#37#rightscalecomputeProblemRoutine activities were bringing oursystems to a standstill
#38#38#RightscaleComputeDocument processing/rendering
#39#39#RightscaleComputeDocument processing requirements• Jobseeker submits resume (DOC, DOCX, PDF, etc)• Convert to PDF f...
#40#40#RightscaleComputeDocument processing – old way• Store file on S3• Add record in MySQL database• Run cron to find re...
#41#41#RightscaleComputeSolution: Queue• Design a simple queuing system• Send a job with arbitrary data to the queue• (Let...
#42#42#RightscaleComputeQueue development• Research alternatives (RabbitMQ, ZeroMQ, Redis)• Chose Redis• Simple, fast, and...
#43#43#RightscaleComputeScripts
#44#44#RightscaleComputeThe queue can now be spun up into any of our deployments
#45#45#RightscaleComputeResults• Initial rollout: ~30,000 jobs per day• End user and app server response time improved by~...
#46#46#RightscaleComputeLessons• Set triggers for scaling• Iterate on your infrastructure, don’t lock it in• Small teams b...
april25-26sanfranciscocloud success starts hereWrap up
#48#48#RightscaleComputeSummary• Cloud is *the* way to deliver software to customers goingforward• Your complexity is in t...
april25-26sanfranciscocloud success starts hereQuestions?
Upcoming SlideShare
Loading in...5
×

Delivering SaaS Using IaaS - RightScale Compute 2013

537

Published on

Speakers:
Shivan Bindal - Sr. Product Manager, RightScale
Chris Szymansky - Director of Engineering, The Resumator

Software is eating the world. And it is increasingly being delivered via the cloud. We’ll cover customer examples from demo and POC environments to single-tenant and multi-tenant SaaS applications powered by public and private clouds.

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

  • Be the first to like this

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

No notes for slide
  • Customers are businesses, also deal with end users (applicants).Software scales to not only number of customers, but also has to scale to how popular a customer is, as jokseekers flock to their careers pages.Primary customer is SMB
  • I’m going to quickly run through a few different parts of the SaaS product that we offer so you can get a little background on some of the technical challenges that comes with it.
  • 2009Founded in Pittsburgh, PA1 employee1 server
  • Obviously you do not want to be caught napping and have to scale when its too late
  • Small team, but lessons can be applicable to any startup and most companies that are cash conscious
  • Small team, but lessons can be applicable to any startup and most companies that are cash conscious
  • Architecture
  • EachRightScale deployment environment has a copy of our architecture.Prod is the holy grailStaging is an exact replica of prodEach other deployment has its own characteristics for testing
  • App delivery
  • How we added a new component to our infrastructure
  • Common activities were bringing our systems to a standstill
  • Document Processing RequirementsTake in files (DOC, DOCX, PDF, RTF)Convert to PDFExtract text for searchStore on S3Display in browser
  • Document Processing RequirementsTake in files (DOC, DOCX, PDF, RTF)Convert to PDFExtract text for searchStore on S3Display in browser****All happening immediately as soon as a resume is submitted********1.1 million resumes processed during growth****
  • SolutionDesign a simple queuing systemSend a job with arbitrary data to the queueOther processes, like email, used 25,000 times per day can benefit from it(Let the software guys figure out what to do with it)
  • Researched queuing alternatives:Redis, RabbitMQ, ZeroMQ, others
  • Researched queuing alternatives:Redis, RabbitMQ, ZeroMQ, others
  • Researched queuing alternatives:Redis, RabbitMQ, ZeroMQ, others
  • Researched queuing alternatives:Redis, RabbitMQ, ZeroMQ, others
  • Right tool for the job: Solr, Redis, VarnishKnowing when to shed old techWant to lock in infrastructure but it won’t happenGeneralists help you understand problems from code level as well as systemsDon’t scale before you have to, but project worse cases and limitationsUnderstand limitations
  • Delivering SaaS Using IaaS - RightScale Compute 2013

    1. 1. april25-26sanfranciscocloud success starts hereDelivering SaaS Using IaaSShivan Bindal, Sr. Product Manager, RightScaleChris Szymansky, Dir. Engineering, TheResumator
    2. 2. #2#2#RightscaleComputeAgenda• Refresher of RightScale Capabilities• Contextual Awareness• Deployment Complexity• The Resumator• Question / Answer
    3. 3. #3#rightscalecomputeBasic FeaturesRightScale Features
    4. 4. #4#4#RightscaleCompute• Set up Cloud Resourcesdynamically at boot time• Provide Monitoring andAlerts• Enable run-timeconfiguration w/ scripts orrecipes• Facilitate dev-like workflowServerTemplates™
    5. 5. #5#5#RightscaleComputeDeploymentsDeployment-level abstraction• Abstracts resources such as:• Virtual machines (instances)• Storage (object storage, block volumes)• Virtual networks (firewalls, subnets, VPNs, etc)• Abstracts providers:• 8 public cloud providers• 2 private cloud technologiesSelf-service provisioning• Click to launch or clone fully configuredservers and deployments
    6. 6. #6#6#RightscaleComputeUser Model with Permissions• Each account corresponds to a setof cloud credentials• Accounts have complete isolation –reporting, configurationassets, cost tracking, etc.• User roles and access rights areorganized “Account down” asopposed to “User up”• A user can access 1 or moreenvironments with different rolesand access rights• SSO supported• Users are granted rights by Adminvia permanent / temporaryinvitation process
    7. 7. #RightscaleCompute#7#7Contextual AwarenessAbstract complexity with simple organization
    8. 8. #8#8#RightscaleComputeTraditional Use CaseDev Sandboxes Staging ProductionAll inOneAPPDBAPPAPPAPPAPPAPPAPPAPPAPPAPPAPPAPPDBDBLB
    9. 9. #9#9#RightscaleComputeRightScale Example• Developers have access to test account where they can createdeployments and servers as needed.• QA has control on staging accounts where they do rolling codeupdates from development and run automated regressions andmanual functional tests.• Operations have access to separate environment withproduction account that runs RightScale on RightScale.
    10. 10. #10#10#RightscaleComputeNon - Traditional Use CaseCustomer 2APPAPPAPPAPPAPPAPPAPPAPPAPPAPPAPPDBDBLBCustomer 1APPAPPAPPAPPAPPAPPAPPAPPAPPAPPAPPDBDBLBCustomer XAPPAPPAPPAPPAPPAPPAPPAPPAPPAPPAPPDBDBLB
    11. 11. #11#11#RightscaleCompute• Once on-prem legacy applications *can* be brought to cloud• Several customers instantiate deployments with single-tenantapplication stacks per customer• Cost efficiency is irrelevant if you price your applicationappropriately• Requires ingenuity for operational management consideringvast number of customers and potential application stackupgradesSaaS-ification-ism
    12. 12. #RightscaleCompute#12#12Deployment ComplexityDigging into the details
    13. 13. #13#13#RightscaleCompute
    14. 14. #14#14#RightscaleCompute
    15. 15. #15#15#RightscaleComputeBrowsersRightScale DashboardInternetCloudboundaryLatency-based RoutingLoad Balancing ServiceF5 (Primary) F5 (Standby)Autoscaling Server TierIIS & .NETIIS & .NETTech StackTBDTech StackTBDMySQL Database Server TierMySQL Server(Master)MySQL Server(Slave)ReplicationAWS US EastPrivate CloudELBAutoscaling Server TierIIS & .NETIIS & .NETTech StackTBDTech StackTBDDirectConnect“Cloudbursting”MySQL Database Server TierMySQL Server(Slave)ReplicationVPC
    16. 16. #16#rightscalecomputeThe ResumatorSaaS platform for collecting resumesand managing hiring processes
    17. 17. #17#rightscalecomputeProduct tourTechnical challenges
    18. 18. #18#18#RightscaleComputeCustom careers sites
    19. 19. #19#19#RightscaleComputeCustom careers sites
    20. 20. #20#20#RightscaleComputeDocument processing/rendering
    21. 21. #21#21#RightscaleComputeSearch
    22. 22. #22#22#RightscaleComputeEmail messaging
    23. 23. #23#rightscalecomputeCompany Overview
    24. 24. #24#24#RightscaleCompute2009• Founded in Pittsburgh, PA• 1 employee• 1 server
    25. 25. #25#25#RightscaleCompute2011
    26. 26. #26#26#RightscaleCompute2012
    27. 27. #27#27#RightscaleCompute2012 -> 2013
    28. 28. #28#28#RightscaleComputeWhat’s next?• Unknown is scary if not prepared• Stay a step ahead of growth• Benchmark trigger points for scaling• Iterate on your architecture, don’t perfect it (oryou’re sacrificing product)
    29. 29. #29#29#RightscaleComputeEngineering at The Resumator• 7 engineers + 1 systems admin• Release often (sometimes daily)• Generalists• Scrum for feature dev• “Lite” CD with RightScale
    30. 30. #30#rightscalecomputeTechnology
    31. 31. #31#31#RightscaleComputeTechnology• EC2• S3• LAMP• Varnish• Redis• Apache Solr
    32. 32. #32#rightscalecomputeInfrastructure
    33. 33. #33#33#RightscaleCompute
    34. 34. #34#34#RightscaleCompute
    35. 35. #35#35#RightscaleComputeDevelopment and Deployment• Jira issue –> Git commit –> Tagged release• RightScript checks tagged release out to test environment• Call test kickoff on test environment• Log test results• Proceed to check out tagged release to [Deployment]
    36. 36. #36#rightscalecomputeExample
    37. 37. #37#rightscalecomputeProblemRoutine activities were bringing oursystems to a standstill
    38. 38. #38#38#RightscaleComputeDocument processing/rendering
    39. 39. #39#39#RightscaleComputeDocument processing requirements• Jobseeker submits resume (DOC, DOCX, PDF, etc)• Convert to PDF for display• Extract text for search• Store on S3• Display in browser for customer
    40. 40. #40#40#RightscaleComputeDocument processing – old way• Store file on S3• Add record in MySQL database• Run cron to find resumes with a certain magicstatus (-4)• Send resumes to 3rd party service to extract text• Have webhook callback to update database
    41. 41. #41#41#RightscaleComputeSolution: Queue• Design a simple queuing system• Send a job with arbitrary data to the queue• (Let the software guys figure out what to do with it)
    42. 42. #42#42#RightscaleComputeQueue development• Research alternatives (RabbitMQ, ZeroMQ, Redis)• Chose Redis• Simple, fast, and free• Takes minutes to get up and running withRightScale• (Researching and testing still takes weeks!)
    43. 43. #43#43#RightscaleComputeScripts
    44. 44. #44#44#RightscaleComputeThe queue can now be spun up into any of our deployments
    45. 45. #45#45#RightscaleComputeResults• Initial rollout: ~30,000 jobs per day• End user and app server response time improved by~25%• Expanded queue to four types of jobs• Handled traffic growth with essentially same infrastructure
    46. 46. #46#46#RightscaleComputeLessons• Set triggers for scaling• Iterate on your infrastructure, don’t lock it in• Small teams benefit from generalists• Know when to shed old tech• MySQL -> Redis and Solr
    47. 47. april25-26sanfranciscocloud success starts hereWrap up
    48. 48. #48#48#RightscaleComputeSummary• Cloud is *the* way to deliver software to customers goingforward• Your complexity is in the app, you don’t need to extendcomplexity upwards• We see a lot of ways to be successful• Simple management features are powerful• Find what works for you and your business• Learn from others’ experiences
    49. 49. april25-26sanfranciscocloud success starts hereQuestions?
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×