• Save
Virtualization at Gilt - Rangarajan Radhakrishnan
Upcoming SlideShare
Loading in...5

Virtualization at Gilt - Rangarajan Radhakrishnan



Rangarajan discusses the evolution of virtualization at Gilt

Rangarajan discusses the evolution of virtualization at Gilt



Total Views
Views on SlideShare
Embed Views



1 Embed 12

https://twitter.com 12



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Virtualization at Gilt - Rangarajan Radhakrishnan Virtualization at Gilt - Rangarajan Radhakrishnan Presentation Transcript

  • O’REILLYVirtualization at GiltRangarajan Radhakrishnan, ranga@gilt.comInfrastructure EngineeringJun 6, 2013
  • O’REILLYWhat is Gilt Groupe?> Founded in 2007, Gilt provides a curated,personalized experience featuring products by today’s top designer labels, at up to 60% off retail> Products across four stores: Men, Women, Home,and Baby & Kids
  • O’REILLYGilt Tech:> The engine behind the Gilt experienceInfrastructure Eng:> Tasked with improving efficiency and reliability
  • O’REILLYTech at GiltOffices: NYC, Dublin and PortlandInfra Eng: NYC and DublinArchitecture: NYC, Portland and DublinEngineering: NYC, Portland and Dublin
  • O’REILLYGilt Tech History> 2007: Small Debian footprint with Ruby on Rails> 2008: Migrated to OpenSolaris (from RoR toJava services)> 2010: Migrated to CentOS (from Java services toScala services)=> =>
  • O’REILLYCurrent Technology at Gilt
  • O’REILLYTechnology> Databases: PostgreSQL, MongoDB> Search: Solr, Splunk> Frameworks: Play> Languages: Scala, Java, Ruby, Node.js> Config mgmt: Puppet> Continuous integration: Jenkins> Messaging: RabbitMQ
  • O’REILLYVirtualization Goals> Build on what is available> Avoid a one-size-fits-all approach> Offer seamless integration with existingapplication stack> Use lightweight containers that offer greatperformance
  • O’REILLYAdditional Virtualization Goals> Automate provisioning as much as possible> Feature immutable containers -- avoiduncertainties as a result of changes over time> Avoid repeated enforcement of configmanagement policies
  • O’REILLYVirtualization History at Gilt:The Past> Bare metal: Debian (2007 - 2008)> OpenSolaris zones (2008 - 2010)> Migration to CentOS (201
  • O’REILLYVirtualization History at Gilt:The Present> Xen VMs (since 2010)> LXC (since 2012): strong performance, lowoverhead> EC2 (off and on since 2008), with varyingdegree of prod/non-prod use (mostly spillovertraffic)> Apache CloudStack (since 2013): to increaseutilization and maximize efficiency
  • O’REILLYWhy CloudStack forVirtualization?> open source> support for multiplehypervisors (KVM, Xenserver and, recently, LXC)> great web UI and Rest API> increasingly active community> committer in-house
  • O’REILLYVirtualization at Gilt withCloudstack and Galactica> CloudStack primarily for use with LXC containers> CloudStack integration with Galactica (in-house)> Galactica implements a meta-data model> Galactica integrates with Puppet/LDAP etc.
  • O’REILLYGalactica ...> is a family of services> allocates containers (via CloudStack)> allows for provisioning of other services> implements a meta-data model for:>> HW/SW provisioning/management>> User access provisioning/management>> IP address/DNS provisioning/management
  • O’REILLY> maintains desired state of services> provides DNS updates for services, especiallywhen provisioning or decommissioning> updates load balancer config> integrates with monitoring system/audit> integrates with ioncannon (automated andcontinuous deployment)Galactica also:
  • O’REILLYWhy LXC?> lightweight: minimal performance overhead> tested in staging with good results> proof of concept with live traffic showed goodperformance> significant work to support LXC in cloudstack"LXC will be implemented as a hypervisor in CloudStack and will be afirst class citizen similar to other hypervisors ..."- Phong Nguyen, Gilt (CloudStack committer)
  • O’REILLYOther Key Pieces> config management system: Puppet 3.1(for first-time run on container, then turned off)> Cobbler 2.2.3 for kickstarting bare metal servers(with both Ubuntu and CentOS profiles)> Jenkins: used for continuous integration andtesting
  • O’REILLYRecent and Ongoing Work> Testing provisioning LXC containers withdifferent libvirt versions>> Up to 1.0.5 on CentOS 6.3 and 0.9.8 onUbuntu> Testing entire application stack on CentOS 6.4LXC container on Ubuntu host>> Trying to avoid libvirt issues that came upwith CentOS host
  • O’REILLYRecent and Ongoing Work(cont.)> Testing entire application stack on Ubuntu 12.04LTS LXC container on Ubuntu host>> Challenge: requires different packagingmechanism> Provisioning LXC with and without libvirt toidentify issues with libvirt
  • O’REILLYFor More Info:> Gilt Tech blog: http://tech.gilt.com> Gilt Twitter: @gilttech> Gilt Facebook: facebook.com/gilttech> Work for us: gilt.com/careers/techThanks to:> CloudStack community> Gilt Tech team> NYCDevOps