ServerTemplate Deep Dive


Published on

RightScale Webinar: January 13, 2011 – Watch this webinar for a look behind the scenes as we discuss ServerTemplates and how are they different from alternate approaches.

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • check out Thorsten's  Poll:-how many have maintained virtual machine images?-how many have used ServerTemplates before?  Agenda:deep dive into ServerTemplates what they are, why they are awesome why they are not like competition - different from Chef/Puppet why would I use a ServerTemplate vs. an AMI / virtual machine imageServerTemplatesw/ MCI pair enable multi-cloud (we'll be going deep on this in 2 weeks)... best practices, manage them, version control them examples of what customers are doing with them ok "sounds great, how do I get started"...ok, "sounds great, how do I add to my existing AMI?" - RightLink webinarif I already have an AMI, how do I put a ServerTemplate on top of it? 10% of our running servers are not RightImages - ones our customers have brought explain compatibility release briefly touch on the fact that you can share them, point to supportal   
  • For those of you who don’t know RightScale, we’ve been helping customers manage their cloud deployments for 4 years. Today, we have more than 30,000 users and have launched almost 2,000,000 servers in the cloud.RightScale is available on demand, so you don’t need to purchase any software in advance… and we have a very experienced professional services team ready to help you architect and deploy your applications to cloud infrastructure.Our customers vary in size and industry – from large multi-national media, insurance and pharmaceutical companies…. to online gaming and Web 2.0 startups. RightScale has managed some of the largest scaling events on the cloud – like Animoto’s ramping up 4000 servers within a few days at the launch of their service. Other customers regularly launch hundreds of servers at a time and are managing many thousands w/ just a few sysadmins. Which begs the question… how do they do it?
  • Most images are a machine image with a software stack. With RightScale, images are just the base OS, but the software stack is provisioned on the fly through template.Modular and variable-basedBuilt with re-usable scriptsServerTemplates and scripts are version controlledDeployments* can be archived
  • Problems With Machine ImagesMonolithicNot modularOpaqueDifficult to inspect, audit, change, version controlLarge90% is uninteresting, hard to locate interesting tidbitsEx: only the apache config file may be interestingEx: new version of apache -> 1000’s of changed files
  • “Cloud Aware” configuration vs. images or other configuration solutions which are generally only aware of the machine scope
  • (1st bullet) – for example, we use JasperServer here for reporting, and instead of modifying the install script with our license, I simple added a script at the end and overwrote the demo license with ours.(2nd bullet) -
  • I won’t make the assumption that all of you know what ServerTemplates are, so…
  • scalable server arrayoperational flexibilitydynamic configuration -> servers fit into deploymenttest&dev flexibilityshow 3 different configurations of same building blocksshow diffshow upgrade
  • audit entrieshistoryversion control
  • RightScale’s ServerTemplates innovate beyond “machine images,” providing dynamic configuration at run-time – no more post-launch configuration! When a server is launched using a ServerTemplate it automatically configures itself in the context of a deployment running on a specific cloud. It automatically obtains the needed IP addresses, gets the address of and access to storage, checks in with load balancers, submits monitoring data, and collaborates with other servers in the deployment. While some of what our ServerTemplates can do could be programmed into a machine image, RightScale ServerTemplates are designed to do it automatically – no more developing or maintaining custom machine images.To do this, we have designed our ServerTemplates to include:A Base Machine Image which is stripped down to the barest level - the operating system and some hooks to RightScale. RightScale maintains images for each OS and cloud combination. You just select the appropriate combination for your app. Second, Cloud Configurations configure all the cloud specific resources required such as the instance size, storage required, security group, and IP address. Again RightScale maintains these configurations for each cloud. You just need to select the appropriate options.Because of this layer of abstraction, you worry about the server’s role and function, not the underlying cloud-specific infrastructure. The server’s role and function is determined by a series of scripts which you add that can be executed when the server boots, as it is running, or when the server is decommissioned. You select or write the scripts to load the application software, libraries, data … whatever is needed. You can leverage our libraries of ServerTemplates or write your own. They can be written in a number of common scripting languages (shell, bash, perl, ruby, python) or you can use Chef cookbooks and recipes. ServerTemplates are modular and variable-based - all the scripts, executables, and variables are stored outside the template. This makes maintenance much easier; you just need to make one change and it is automatically reflected in all ServerTemplates that use that script, executable, or variable value. This also enables automation. As deployments change, servers reconfigure themselves and new servers launch in the context of the current deployment. We’ll talk more about this on the next slide. ServerTemplates launch servers with the same configuration every time, so you are assured that you get the same predictable result. Finally, because the underlying cloud infrastructure is abstracted from the role and function of the server, ServerTemplates are portable across cloud infrastructure providers.
  • ServerTemplate Deep Dive

    1. 1. ServerTemplate Deep Dive:Cloud Server Automation Made EasyJanuary 13, 2011<br />
    2. 2. Your Panel Today<br />Presenting:<br /><ul><li>Darryl Eaton – Director, Product Management at RightScale
    3. 3. Chris Horne – Director, Product Marketing at RightScale
    4. 4. SanketNaik – Sr. Director, Operations at</li></ul>Q&A:<br /><ul><li>Chris Williams, Account Manager</li></ul>Please use the questions window to ask questions any time!<br />
    5. 5. Agenda<br /><ul><li>Introduction to RightScale
    6. 6. Introduction to ServerTemplates
    7. 7. How Coupa is leveraging ServerTemplates
    8. 8. How to Get Started
    9. 9. Some Best Practices
    10. 10. ServerTemplate Library & Contest
    11. 11. Summary & Conclusions</li></ul>Please use the questions window to ask questions any time!<br />
    12. 12. RightScale Real Customers, Real Deployments, Real Benefits<br />Managing Cloud Deployments for 4 Years<br />More than 30,000 users; launched almost 2,000,000 servers<br />On-Demand with a range of customer service offerings<br />
    13. 13. What are ServerTemplates?<br />Virtual Machine Images<br />Standard Cloud Images<br />ServerTemplates<br />
    14. 14. What are ServerTemplates?<br />Configuring servers<br />through bundling Images:<br />Configuring servers<br />with ServerTemplates:<br />Custom MySQL 5.0.24 (CentOS 5.2)<br />Custom MySQL 5.0.24 (CentOS 5.4)<br />A set of configuration directives that will install and configure software on top of the base image<br />MySQL 5.0.36 (CentOS 5.4)<br />MySQL 5.0.36 (Ubuntu 8.10)<br />MySQL 5.0.36 (Ubuntu 8.10) 64bit<br />Frontend Apache 1.3 (Ubuntu 8.10)<br />Frontend Apache 2.0 (Ubuntu 9.10) - patched<br />CMS v1.0 (CentOS 5.4)<br />CMS v1.1 (CentOS 5.4)<br />My ASP appserver (windows 2008)<br />My (windows 2008) – security update 1<br />Base Image<br />Very few and basic<br />My (windows 2008) – security update 8<br />SharePoint v4 (windows 2003) – 32bit<br />SharePoint v4 (windows 2003) –64bit<br />Win 2003<br />CentOS 5.2<br />Ubuntu 8.10<br />SharePoint v4.5 (windows 2003) –64bit<br />CentOS 5.4<br />Win 2007<br />Ubuntu 9.10<br />…<br />
    15. 15. What are ServerTemplates?<br />Anatomy of a<br />ServerTemplate<br />Example ServerTemplate<br />MySQL 5.0<br />RightScript/Recipe 6<br />Initialize slave<br />…<br />…<br />operations<br />operations<br />RightScript/Recipe 6<br />Perform backup<br />RightScript/Recipe N<br />Start all services<br />…<br />…<br />RightScript/Recipe 5<br />Setup DNS and IPs<br />RightScript/Recipe 4<br />Restore last backup<br />boot sequence<br />boot sequence<br />RightScript/Recipe 3<br />Configure/tune MySQL<br />RightScript/Recipe 2<br />Install MySQL Server<br />RightScript/Recipe 1<br />Install monitoring<br />Base Image<br />Right Image<br />
    16. 16. What do they help me do?<br />Affect Cloud Resources and specify cloud properties(image, instance type, ssh key, security groups, etc.)<br />“Record” everything you do to set up a server (install software, edit configuration files, start services, etc.)<br />Extract variable configuration information [as Inputs]<br />Define custom monitors and alerts<br />Keep versions of your configurations, images, scripts…<br />Share best practices within your organization, or to the world<br />Incorporate best practices from others, and receive updates<br />
    17. 17. Coupa Cloud Spend Management<br />Goal - Focus on core business & scale with lean operations team<br />Ruby on Rails – the cloud platform<br />ServerTemplates are re-usable for each stage of SDLC<br />Coupa benefits from community contributions as accelerators<br /><br />
    18. 18. Environment Lifecycle Management<br />Production<br />Staging<br />Test<br />Developer<br />load bal<br />apache<br />apache<br />app server<br />app server<br />app server<br />api server<br />all-in-one<br />backgrnd<br />backgrnd<br />backgrnd<br />database<br />database<br />database<br />
    19. 19. Sounds great… How do I get started? <br />Two options: Start from Scratch… or Search the Library<br /> and add a RightScript:<br />
    20. 20. Mix-n-Match Pre-Built Components<br />You can mix & match scripting languages on same template: Bash, PowerShell, Chef, Python, Ruby…<br />
    21. 21. Some Key Best Practices<br />Add new scripts vs. modifying existing scripts<br />If you import a ServerTemplate from the Library, try not to change the existing scripts. Instead, add new ones at the end and overwrite previous operations/configurations. That way, it will be easier to incorporate any future updates.<br />Design idempotent systems<br />When writing scripts that create/modify configurations files, make them idempotent. If the script is run twice, it will not destroy the configuration (e.g. ‘>’ instead of ‘>>’ for a new file). <br />Kill processes before you (re)start them – remember that often, people may just be pressing a play button in our interface<br />Trap errors informatively <br />Ensure everything is in the right place, exit -1 if not: you want your server to ‘strand’ appropriately with descriptive messages<br />Leverage existing knowledge and assets<br />Learn from others – peruse other templates in the Library<br />
    22. 22. What if I’ve already created an image?<br />No Problem… RightScale-enable your image<br />Install RightLink Agent# rpm -i rightscale_5.3.0-centos_5.4-i386.rpm-or-<br />Rebundle<br />Tag the image as RS-enabledprovides:rs_agent_type=right_link<br />
    23. 23. ServerTemplate Library<br />The RightScale Library holds published ServerTemplates, RightScripts, MultiCloud Images, and Macros<br />Public templates are available to the world – searchable, browsable, importable…<br />Company templates are available to your organization<br />ISV CE templates can be public, paid templates shared with specific customers<br />
    24. 24. ServerTemplate Showdown – Q4 2010<br />Winner for most Useful!<br />Winner for Most Innovative!<br />Set up a standalone OpenLDAP server or a Provider-Consumer pair… with backups!<br />“Create your own CDN” by deploying these globally with load balancing.<br />
    25. 25. Why publish your ServerTemplates?<br />
    26. 26. Accelerator for Initial Deployment<br />Human Capital<br />“RightScale gave us the ability to get up and running quickly. It would have taken three to four times the man-hours to complete our initial deployment.” <br />Mobile Platform Provider<br />“Since we have been using RightScale as part of our solution, our new customer deployment time has gone from roughly a week to a day – a time savings of about 85%.”<br />Internet Service Developer<br />Initial Deployment <br />Cloud APIs or Consoles<br />RightScale<br />Efficiency Gains <br />67-85%<br />Time<br />
    27. 27. Reduce Effort of Ongoing Maintenance<br />“We would spend twice the time managing our cloud deployments without RightScale.” <br /> Research Institute<br />"Starting with an existing deployment takes the time to deploy a new application to minutes, literally a reduction in cycle time.”<br />Major pharmaceutical<br />Human Capital<br />Initial Deployment <br />Ongoing Maintenance<br />Cloud APIs or Consoles<br />RightScale<br />Efficiency Gains <br />67-85%<br />Efficiency Gains <br />50-90%<br />Time<br />
    28. 28. ServerTemplates = Cloud-Ready Servers <br />
    29. 29. Q&A / Getting Started<br />Have a project, but need some help?<br />Contact us: or (866) 720-0208<br />Ready to get started? <br />Sign up for our Free<br />Call us for a VIP trial of our paid editions<br /><br />Need to learn more?<br />TCO<br /> Webinar archive:<br /> White papers:<br />
    30. 30. Thank You!<br />
    31. 31. Customer Example: Eli Lilly<br />IT Group maintains one compliant “Golden Image” <br />ServerTemplates encapsulate common scientific use cases<br />IT publishes internally to appropriate teams<br />Teams can access and launch approved templates themselves<br />“Alongside the elastic cloud approach, Lilly is leveraging RightScale's infrastructure management interface and services against appliance/application stacks in a "vending machine" concept that allows self-service to infrastructure and up to three tiers of applications as needed.”<br />25 Top Information Managers: 2010<br />Dave Powers, Eli Lilly & Co.<br />
    32. 32. ISV Example: IBM<br />Encapsulating best practices for using IBM software on the cloud<br />Lead generation for the IBM Sales team (upgrade from Community Edition)<br />View aggregated usage data for all templates and revisions<br />Working with RightScale on related Solution Packs<br />
    33. 33. Developer Example: nginx+Apache<br />Most Imported Submission (even though for paid only)<br />Gain notoriety by showing your expertise <br />Build a consulting business off shared best practices<br />Winner for Most Popular!<br />
    34. 34. More Winners!<br />Winner for most Useful!<br />Winner for Most Innovative!<br />Set up a standalone OpenLDAP server or a Provider-Consumer pair… with backups!<br />“Create your own CDN” by deploying these globally with load balancing.<br />
    35. 35. Beyond Machine Images<br />Problems With Machine Images<br />Monolithic<br />Not modular<br />Opaque<br />Difficult to inspect, audit, change, version control<br />Large<br />90% is uninteresting, hard to locate interesting tidbits<br />Ex: only the apache config file may be interesting<br />Ex: new version of apache -> 1000’s of changed files<br />
    36. 36. ServerTemplates Alternative<br />Modular building block approach<br />Configuration scripts (RightScripts)<br />Chef cookbooks & recipes<br />A ServerTemplate defines what goes onto a server<br />Software configuration management<br />Default server characteristics, e.g. EC2 instance type<br />Monitoring & alert configuration<br />It’s a template –> it can be instantiated many times<br />Benefits ▬> Modular + Transparent + Dynamic<br />
    37. 37. ServerTemplates: Many Constituencies<br />Modular – Portable – Transparent – Dynamic<br />Application<br />Developer<br /><ul><li>Application
    38. 38. Cloud libraries
    39. 39. Web framework</li></ul>App Libraries<br />Environment config<br />Sysadmin defined<br /><ul><li>syslog config
    40. 40. SSH keys
    41. 41. Apache config</li></ul>Common config<br />Vendor provided<br /><ul><li>Ubuntu/RHEL/…
    42. 42. MySQL/Oracle/…
    43. 43. Tomcat/Jboss/…</li></ul>S/W Packages<br />OS<br />Virtual machine<br />
    44. 44. ServerTemplates: Built-to-Order Servers<br />Flexible base-image / dynamic config boundary<br />Application<br />Dynamic<br />recipes/powershell<br />(custom config)<br />App Libraries<br />Dynamic scripts/recipes<br />(std packages + custom software)<br />Environment config<br />Common config<br />S/W Packages<br />Windows image<br />(major apps installed)<br />OS<br />Linux image<br />(minimal install)<br />Virtual machine<br />
    45. 45. Auto-scaling Applications<br />
    46. 46. Demo – Dev/Test/Prod ServerTemplates<br />alerts<br />api servers<br />web servers<br />databases<br />EC2 cloud<br />load balancers<br />daemons<br />
    47. 47. How ServerTemplates Work<br /><ul><li>Server Identity
    48. 48. RightScripts / Cookbooks
    49. 49. Dynamic Inputs
    50. 50. Server state updates
    51. 51. Audit entries
    52. 52. Monitoring data</li></li></ul><li>Demo – ServerTemplates in Action<br />
    53. 53. Dynamically Configure with ServerTemplates Create agile, automated, and predictable IT infrastructure<br />Dynamically configure servers at run-time<br />Abstract role and behavior from cloud infrastructure<br />Modular and variable-based for easy maintenance <br />Launch predictable infrastructure<br />Portable<br />
    54. 54. Agile = automate and benefit!<br />From boot to production on auto-pilot<br />Across different stacks & different clouds<br />Auto-failover, auto-restart, auto-scale<br />“Deploy faster, better, and cheaper than your competitors” <br />Agile Deployment<br />
    55. 55. Next Generation Server Architecture<br />“Cloud-ready” servers<br />More than just running a bundled image<br />Dynamic vs. static configuration<br />Leverage one server model across different deployments<br />Replicable design<br />Complete lifecycle management … version control<br />RightScale ServerTemplates<br />