Download - ServerTemplate Deep Dive
2
Your Panel Today
Presenting:• Darryl Eaton – Director, Product Management at RightScale• Chris Horne – Director, Product Marketing at RightScale• Sanket Naik – Sr. Director, Operations at Coupa.com
Q&A:• Chris Williams, Account Manager
Please use the questions window to ask questions any time!
3
Agenda
• Introduction to RightScale
• Introduction to ServerTemplates
• How Coupa is leveraging ServerTemplates
• How to Get Started
• Some Best Practices
• ServerTemplate Library & Contest
• Summary & Conclusions
Please use the questions window to ask questions any time!
4
RightScale Real Customers, Real Deployments, Real Benefits
• Managing Cloud Deployments for 4 Years• More than 30,000 users; launched almost 2,000,000 servers• On-Demand with a range of customer service offerings
6
What are ServerTemplates?
Custom MySQL 5.0.24 (CentOS 5.2)
Custom MySQL 5.0.24 (CentOS 5.4)
MySQL 5.0.36 (CentOS 5.4)
MySQL 5.0.36 (Ubuntu 8.10)
MySQL 5.0.36 (Ubuntu 8.10) 64bit
Frontend Apache 1.3 (Ubuntu 8.10)
Frontend Apache 2.0 (Ubuntu 9.10) - patched
CMS v1.0 (CentOS 5.4)
CMS v1.1 (CentOS 5.4)
My ASP appserver (windows 2008)
My ASP.net (windows 2008) – security update 1
My ASP.net (windows 2008) – security update 8
SharePoint v4 (windows 2003) – 32bit
SharePoint v4 (windows 2003) –64bit
SharePoint v4.5 (windows 2003) –64bit
…
Configuring serversthrough bundling Images:
A set of configuration directives that will install
and configure software on top of the base image
Configuring serverswith ServerTemplates:
CentOS 5.2
CentOS 5.4
Ubuntu 8.10
Ubuntu 9.10
Win 2003
Win 2007
Base ImageVery few and basic
7
What are ServerTemplates?Anatomy of a
ServerTemplateExample ServerTemplate
MySQL 5.0
RightScript/Recipe N
RightScript/Recipe 5
RightScript/Recipe 4
RightScript/Recipe 3
RightScript/Recipe 2
RightScript/Recipe 1
…
boo
t se
que
nce
RightScript/Recipe 6
RightScript/Recipe 6
ope
ratio
ns
…
Base Image
Start all services
Setup DNS and IPs
Restore last backup
Configure/tune MySQL
Install MySQL Server
Install monitoring
…
boo
t se
que
nce
Perform backup
Initialize slave
ope
ratio
ns
…
Right Image
8
What do they help me do?• Affect Cloud Resources and specify cloud properties
(image, instance type, ssh key, security groups, etc.)
• “Record” everything you do to set up a server (install software, edit configuration files, start services, etc.)
• Extract variable configuration information [as Inputs]• Define custom monitors and alerts• Keep versions of your configurations, images, scripts…• Share best practices within your organization, or to the world• Incorporate best practices from others, and receive updates
9
Coupa Cloud Spend Management• Goal - Focus on core business & scale with lean operations team
• Ruby on Rails – the cloud platform
• ServerTemplates are re-usable for each stage of SDLC• Coupa benefits from community contributions as accelerators
10
Environment Lifecycle Management
apache
load bal
app server
api server
backgrnd
database
apache
app server
backgrnd
database
app server
backgrnd
database
all-in-one
Production Staging Test Developer
11
Sounds great… How do I get started? • Two options:
Start from Scratch… or Search the Library
and add a RightScript:
12
Mix-n-Match Pre-Built Components
Operating SystemsWindows 2003/2008CentOSUbuntuSUSE
Language/FrameworkPHPRuby/RailsJava/Tomcat.NETPython/Django
DatabaseMySQLSQL ServerMySQL ProxydbShardsMembase
Web ServerIISApacheNginxLighttpd
Load BalancingHAProxyElastic Load BalancerZeusaiCache
Automation ScriptingChefRubyBashPowerShell
You can mix & match scripting languages on same template: Bash, PowerShell, Chef, Python, Ruby…
13
Some Key Best Practices• Add new scripts vs. modifying existing scripts
• 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.
• Design idempotent systems• 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).
• Kill processes before you (re)start them – remember that often, people may just be pressing a play button in our interface
• Trap errors informatively • Ensure everything is in the right place, exit -1 if not: you want your server to ‘strand’
appropriately with descriptive messages
• Leverage existing knowledge and assets• Learn from others – peruse other templates in the Library
14
What if I’ve already created an image?• No Problem… RightScale-enable your image
1. Install RightLink Agent# rpm -i rightscale_5.3.0-centos_5.4-i386.rpm
-or-
2. Rebundle
3. Tag the image as RS-enabledprovides:rs_agent_type=right_link
15
ServerTemplate Library• The RightScale Library holds
published ServerTemplates, RightScripts, MultiCloud Images, and Macros
• Public templates are available to the world – searchable, browsable, importable…
• Company templates are available to your organization
• ISV CE templates can be public, paid templates shared with specific customers
16
ServerTemplate Showdown – Q4 2010
Winner for most Useful! Winner for Most Innovative!
Set up a standalone OpenLDAP server or a Provider-Consumer pair… with backups!
“Create your own CDN” by deploying these globally with load balancing.
17
Why publish your ServerTemplates?
Organizations (internal) ISV Partners Community Developers
• Encapsulate best practices
• Standardize internal developer environments
• Maintain flexibility
• Cloud-enable your software product
• Gain valuable usage data
• Maintain portability• Increase exposure
• Drive awareness• Develop for many
clouds at once• Incorporate best
practices from others
18
Human Capital
TimeRightScaleCloud APIs or Consoles
Initial Deployment
Accelerator for Initial Deployment“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.”
Mobile Platform Provider
“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%.”
Internet Service Developer
Efficiency Gains
67-85%
19
Human Capital
TimeRightScaleCloud APIs or Consoles
Initial Deployment
Reduce Effort of Ongoing Maintenance
Efficiency Gains
67-85%
“We would spend twice the time managing our cloud deployments
without RightScale.”
Research Institute
"Starting with an existing deployment takes the time to deploy a new
application to minutes, literally a reduction in cycle time.”
Major pharmaceutical
Ongoing Maintenance
Efficiency Gains
50-90%
21
Have a project, but need some help?
Contact us: [email protected] or (866) 720-0208
Ready to get started?
Sign up for our Free Edition: www.RightScale.com/Free
Call us for a VIP trial of our paid editions
http://support.rightscale.com/12-Guides/Getting_Started
Need to learn more?
TCO calculator: www.RightScale.com/tco-calculator
Webinar archive: www.RightScale.com/webinars
White papers: www.RightScale.com/whitepapers
Q&A / Getting Started
23
25 Top Information Managers: 2010Dave Powers, Eli Lilly & Co.
“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.”
Customer Example: Eli Lilly
IT Group maintains one compliant “Golden Image”
ServerTemplates encapsulate common scientific use cases
IT publishes internally to appropriate teams
Teams can access and launch approved templates themselves
24
ISV Example: IBM• Encapsulating best practices
for using IBM software on the cloud
• Lead generation for the IBM Sales team (upgrade from Community Edition)
• View aggregated usage data for all templates and revisions
• Working with RightScale on related Solution Packs
25
Developer Example: nginx+Apache
• Most Imported Submission (even though for paid only)
• Gain notoriety by showing your expertise
• Build a consulting business off shared best practices
Winner for Most Popular!
26
More Winners!
Winner for most Useful! Winner for Most Innovative!
Set up a standalone OpenLDAP server or a Provider-Consumer pair… with backups!
“Create your own CDN” by deploying these globally with load balancing.
27
Beyond Machine Images
Problems With Machine Images• Monolithic
• Not modular
• Opaque• Difficult to inspect, audit, change, version control
• Large• 90% is uninteresting, hard to locate interesting tidbits• Ex: only the apache config file may be interesting• Ex: new version of apache -> 1000’s of changed files
28
ServerTemplates Alternative• Modular building block approach
• Configuration scripts (RightScripts)• Chef cookbooks & recipes
• A ServerTemplate defines what goes onto a server• Software configuration management• Default server characteristics, e.g. EC2 instance type• Monitoring & alert configuration• It’s a template –> it can be instantiated many times
• Benefits ▬> Modular + Transparent + Dynamic
29
ServerTemplates: Many Constituencies
Virtual machine
OS
S/W Packages
Common config
Environment config
App Libraries
Vendor provided• Ubuntu/
RHEL/…• MySQL/
Oracle/…• Tomcat/
Jboss/…
Sysadmin defined• syslog config• SSH keys• Apache config
ApplicationDeveloper• Application• Cloud libraries• Web framework
Modular – Portable – Transparent – Dynamic
30
ServerTemplates: Built-to-Order Servers
Virtual machine
OS
S/W Packages
Common config
Environment config
App Libraries
Linux image(minimal install)
Windows image(major apps installed)
Application
Flexible base-image / dynamic config boundary
Dynamic scripts/recipes(std packages + custom software)
Dynamicrecipes/powershell
(custom config)
32
daemons
load balancers
EC2 cloud
databases
web servers
api servers
alerts
Demo – Dev/Test/Prod ServerTemplates
33
How ServerTemplates Worko Server Identityo RightScripts / Cookbookso Dynamic Inputs
o Server state updateso Audit entrieso Monitoring data
35
• Dynamically configure servers at run-time
• Abstract role and behavior from cloud infrastructure
• Modular and variable-based for easy maintenance
• Launch predictable infrastructure
• Portable
Dynamically Configure with ServerTemplates Create agile, automated, and predictable IT infrastructure
36
• Agile = automate and benefit!• From boot to production on auto-pilot• Across different stacks & different clouds• Auto-failover, auto-restart, auto-scale
“Deploy faster, better, and cheaper than your competitors”
Agile Deployment