pbs @ rightscale user meetup 2010
TRANSCRIPT
PBS is…
• PBS is a national federation of independently owned and operated public television stations and producers– Each with their own management and development resources
• 1500+ highly trafficked websites:– http://www.pbs.org/
– http://www.pbs.org/nova/
– http://pbskids.org/
– http://pbskids.org/sesame/
– http://video.pbs.org/
• Enterprise services/APIs
Before the cloud
• Hosting provider for 3rd party developers– Shared hosting platform and database cluster
– Numerous widely varying technologies supported
– No application isolation
• Application deployment– Difficult QA and deployment (Dev > Staging > Live)
• Traditional IT– Fixed bandwidth
– Inflexible infrastructure, poorly scalable = degraded uptime
– Aging operational platform (near EOL)
• Strategic applications coming down the pipeline– Lack of data for forecasting
• Need financial visibility per application
Our challenge
• On a limited, shared infrastructure
– Support diverse technologies
– Grant developers full access
– Keep the system running
• Something’s gotta give!
Diverse technologies
System is UpDeveloper
access x
Thanks, RightScale
• Amazon EC2, S3, EBS, ELB, SQS, …
• 180 (+/-) server instances and growing
• All managed via RightScale Enterprise sub-accounts
• Standardize baseline configuration
– Streamlined set of standard server templates
» LAMP Stacks (EBS, S3), App server, DB server, Cache
• CentOS 5.2 RightImage
• Standard + custom RightScripts
• Application specific configurations
• Designed for failure, fully repeatable
PBS hosting now
• CentOS 5.2 Linux (AWS small)
– Apache, MySQL, Python, PHP
– Memcached (use it!)
• Devs install addl software packages
• Complete server isolation
• Automated backups, “Easy” recovery
– S3 and/or EBS
• SSH access with sudo
• Proxy through www.pbs.org
• Staging and Live
System is Up
Diverse technologies
Developer access
✓
✓
✓
In the cloud today
PBS Video (video.pbs.org)
ProxyEC2
ProxyEC2
App Server ELB
Dat
abas
e E
LB
App#N
App#3
App#2
AppEC2
US East 1a
App#N
App#3
App#2
AppEC2
US East 1d
DB Slave EC2/EBS
DB Slave EC2/EBS
DB Master EC2/EBS
AdminEC2/EBS
Cac
he
ELB
CacheEC2
CacheEC2
EBS Snapshots
S3 backups
Additional uses
• Software vetting/selection
– Spin up new servers to test/vet software packages
– No need to requisition expensive hardware
• Hosting operational services
– Documentation wikis (Confluence)
– Issue tracker (JIRA)
– Source control management (SVN, Git, Gitorious)
– Log monitoring (Splunk)
Moving forward
• Hybrid cloud for development
– Eucalyptus
– Build local, deploy to cloud
• Utilize queuing services (SQS) for:
– Video transcoding
– Log processing
• Amazon Relation Database Service
• More Ubuntu
– CentOS packages outdated… lots of upgrading needed