SlideShare a Scribd company logo
1 of 20
Virtualization at Gilt
Rangarajan Radhakrishnan, ranga@gilt.com
Infrastructure Engineering
Jun 6, 2013
What is Gilt?
> 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 Men, Women, Home, and Baby &
Kids stores
Gilt Tech:
> The engine behind the Gilt experience
Infrastructure Eng:
> Tasked with improving efficiency and
reliability
Tech at Gilt
Offices: NYC, Dublin and Portland
Infra Eng: NYC and Dublin
Architecture: NYC, Portland and Dublin
Engineering: NYC, Portland and Dublin
Gilt Tech History
> 2007: Small Debian footprint with Ruby on Rails
> 2008: Migrated to OpenSolaris (from RoR to Java
services)
> 2010: Migrated to CentOS (from Java services to
Scala services)
=> =>
Current Technology at Gilt
Technology
> Databases: PostgreSQL, MongoDB
> Search: Solr, Splunk
> Frameworks: Play
> Languages: Scala, Java, Ruby, Node.js
> Config mgmt: Puppet
> Continuous integration: Jenkins
> Messaging: RabbitMQ
Virtualization Goals
> Build on what is available
> Avoid a one-size-fits-all approach
> Offer seamless integration with existing
application stack
> Use lightweight containers that offer great
performance
Additional Virtualization Goals
> Automate provisioning as much as possible
> Feature immutable containers -- avoid uncertainties
as a result of changes over time
> Avoid repeated enforcement of config management
policies
Virtualization History at Gilt:
The Past
> Bare metal: Debian (2007 - 2008)
> OpenSolaris zones (2008 - 2010)
> Migration to CentOS (2010)
Virtualization History at Gilt:
The Present
> Xen VMs (since 2010)
> LXC (since 2012): strong performance, low
overhead
> EC2 (off and on since 2008), with varying degree of
prod/non-prod use (mostly spillover traffic)
> Apache CloudStack (since 2013): to increase
utilization and maximize efficiency
Why CloudStack for
Virtualization?
> open source
> support for multiple
hypervisors (KVM, Xenserver and, recently, LXC)
> great web UI and Rest API
> increasingly active community
> committer in-house
Virtualization at Gilt with
CloudStack 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.
Galactica ...
> 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
> maintains desired state of services
> provides DNS updates for services, especially
when provisioning or decommissioning
> updates load balancer config
> integrates with monitoring system/audit
> integrates with ioncannon (automated and
continuous deployment)
Galactica also:
Why LXC?
> lightweight: minimal performance overhead
> tested in staging with good results
> proof of concept with live traffic showed good
performance
> significant work to support LXC in CloudStack
"LXC will be implemented as a hypervisor in CloudStack and will be a
first class citizen similar to other hypervisors ..."
- Phong Nguyen, Gilt (CloudStack committer)
Other 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 and
testing
Recent and Ongoing Work
> Testing provisioning LXC containers with different
libvirt versions
>> Up to 1.0.5 on CentOS 6.3 and 0.9.8 on
Ubuntu
> Testing entire application stack on CentOS 6.4
LXC container on Ubuntu host
>> Trying to avoid libvirt issues that came up with
CentOS host
Recent and Ongoing Work
(cont.)
> Testing entire application stack on Ubuntu 12.04
LTS LXC container on Ubuntu host
>> Challenge: requires different packaging
mechanism
> Provisioning LXC with and without libvirt to identify
issues with libvirt
For More Info:
> Gilt Tech blog: http://tech.gilt.com
> Gilt Twitter: @gilttech
> Gilt Facebook: facebook.com/gilttech
> Work for us: gilt.com/careers/tech
Thanks to:
> CloudStack community
> Gilt Tech team
> NYCDevOps

More Related Content

What's hot

What's hot (20)

e-KTP Information Extraction with Google Cloud Function & Google Cloud Vision
e-KTP Information Extraction with Google Cloud Function & Google Cloud Visione-KTP Information Extraction with Google Cloud Function & Google Cloud Vision
e-KTP Information Extraction with Google Cloud Function & Google Cloud Vision
 
Heat Updates - Liberty Edition
Heat Updates - Liberty EditionHeat Updates - Liberty Edition
Heat Updates - Liberty Edition
 
ManageIQ Overview at Management and Orchestration Developer (MODM) Meet-up
ManageIQ Overview at Management and Orchestration Developer (MODM) Meet-upManageIQ Overview at Management and Orchestration Developer (MODM) Meet-up
ManageIQ Overview at Management and Orchestration Developer (MODM) Meet-up
 
DevOpsDays Houston 2019 - Dan Kirkpatrick - My Kubernetes Tool Chain: Open-So...
DevOpsDays Houston 2019 - Dan Kirkpatrick - My Kubernetes Tool Chain: Open-So...DevOpsDays Houston 2019 - Dan Kirkpatrick - My Kubernetes Tool Chain: Open-So...
DevOpsDays Houston 2019 - Dan Kirkpatrick - My Kubernetes Tool Chain: Open-So...
 
Microservices with Spring Cloud and Netflix OSS
Microservices with Spring Cloud and Netflix OSSMicroservices with Spring Cloud and Netflix OSS
Microservices with Spring Cloud and Netflix OSS
 
Managing traffic routing with istio and envoy workshop
Managing traffic routing with istio and envoy workshopManaging traffic routing with istio and envoy workshop
Managing traffic routing with istio and envoy workshop
 
OpenStack - Tzu-Mainn Chen, Marek Aufart, Petr Blaho - ManageIQ Design Summit...
OpenStack - Tzu-Mainn Chen, Marek Aufart, Petr Blaho - ManageIQ Design Summit...OpenStack - Tzu-Mainn Chen, Marek Aufart, Petr Blaho - ManageIQ Design Summit...
OpenStack - Tzu-Mainn Chen, Marek Aufart, Petr Blaho - ManageIQ Design Summit...
 
stackconf 2021 | How we finally migrated an eCommerce-Platform to GCP
stackconf 2021 | How we finally migrated an eCommerce-Platform to GCPstackconf 2021 | How we finally migrated an eCommerce-Platform to GCP
stackconf 2021 | How we finally migrated an eCommerce-Platform to GCP
 
Microservices in GO - Massimiliano Dessì - Codemotion Rome 2017
Microservices in GO - Massimiliano Dessì - Codemotion Rome 2017Microservices in GO - Massimiliano Dessì - Codemotion Rome 2017
Microservices in GO - Massimiliano Dessì - Codemotion Rome 2017
 
Functional Ops - the cake is a lie
Functional Ops - the cake is a lieFunctional Ops - the cake is a lie
Functional Ops - the cake is a lie
 
Replication - Nick Carboni - ManageIQ Design Summit 2016
Replication - Nick Carboni - ManageIQ Design Summit 2016Replication - Nick Carboni - ManageIQ Design Summit 2016
Replication - Nick Carboni - ManageIQ Design Summit 2016
 
OpenStack and Containers - Will they blend? A prequel. SF Bay OpenStack Meetup
OpenStack and Containers - Will they blend? A prequel. SF Bay OpenStack MeetupOpenStack and Containers - Will they blend? A prequel. SF Bay OpenStack Meetup
OpenStack and Containers - Will they blend? A prequel. SF Bay OpenStack Meetup
 
Google Cloud Platform and Kubernetes
Google Cloud Platform and KubernetesGoogle Cloud Platform and Kubernetes
Google Cloud Platform and Kubernetes
 
The evolving container landscape
The evolving container landscapeThe evolving container landscape
The evolving container landscape
 
Containers, orchestration and security, oh my!
Containers, orchestration and security, oh my!Containers, orchestration and security, oh my!
Containers, orchestration and security, oh my!
 
Create Great CNCF User-Base from Lessons Learned from Other Open Source Commu...
Create Great CNCF User-Base from Lessons Learned from Other Open Source Commu...Create Great CNCF User-Base from Lessons Learned from Other Open Source Commu...
Create Great CNCF User-Base from Lessons Learned from Other Open Source Commu...
 
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
 
[Lakmal] Automate Microservice to API
[Lakmal] Automate Microservice to API[Lakmal] Automate Microservice to API
[Lakmal] Automate Microservice to API
 
Communication Amongst Microservices: Kubernetes, Istio, and Spring Cloud - An...
Communication Amongst Microservices: Kubernetes, Istio, and Spring Cloud - An...Communication Amongst Microservices: Kubernetes, Istio, and Spring Cloud - An...
Communication Amongst Microservices: Kubernetes, Istio, and Spring Cloud - An...
 
Gdsc muk - innocent
Gdsc   muk - innocentGdsc   muk - innocent
Gdsc muk - innocent
 

Similar to Virtualization at Gilt

Maruthi_YH_resume
Maruthi_YH_resumeMaruthi_YH_resume
Maruthi_YH_resume
Maruthi YH
 

Similar to Virtualization at Gilt (20)

Virtualization at Gilt - Rangarajan Radhakrishnan
Virtualization at Gilt - Rangarajan RadhakrishnanVirtualization at Gilt - Rangarajan Radhakrishnan
Virtualization at Gilt - Rangarajan Radhakrishnan
 
Google Cloud Next '22 Recap: Serverless & Data edition
Google Cloud Next '22 Recap: Serverless & Data editionGoogle Cloud Next '22 Recap: Serverless & Data edition
Google Cloud Next '22 Recap: Serverless & Data edition
 
Maruthi_YH_resume
Maruthi_YH_resumeMaruthi_YH_resume
Maruthi_YH_resume
 
Puppet Camp Berlin 2015: Puppet Keynote
Puppet Camp Berlin 2015: Puppet KeynotePuppet Camp Berlin 2015: Puppet Keynote
Puppet Camp Berlin 2015: Puppet Keynote
 
Puppet Camp Berlin 2015: Nigel Kersten | Puppet Keynote
Puppet Camp Berlin 2015: Nigel Kersten | Puppet KeynotePuppet Camp Berlin 2015: Nigel Kersten | Puppet Keynote
Puppet Camp Berlin 2015: Nigel Kersten | Puppet Keynote
 
Drizzle @OpenSQL Camp
Drizzle @OpenSQL CampDrizzle @OpenSQL Camp
Drizzle @OpenSQL Camp
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
 
IBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClassIBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClass
 
AMIS Oracle OpenWorld 2013 Review Part 2 - Platform Middleware Publication
AMIS Oracle OpenWorld 2013 Review Part 2 - Platform Middleware PublicationAMIS Oracle OpenWorld 2013 Review Part 2 - Platform Middleware Publication
AMIS Oracle OpenWorld 2013 Review Part 2 - Platform Middleware Publication
 
Fabio Ferrari | particles.io | Presentation
Fabio Ferrari | particles.io | PresentationFabio Ferrari | particles.io | Presentation
Fabio Ferrari | particles.io | Presentation
 
Evolution of netflix conductor
Evolution of netflix conductorEvolution of netflix conductor
Evolution of netflix conductor
 
Resume
ResumeResume
Resume
 
DEVNET-1169 CI/CT/CD on a Micro Services Applications using Docker, Salt & Ni...
DEVNET-1169	CI/CT/CD on a Micro Services Applications using Docker, Salt & Ni...DEVNET-1169	CI/CT/CD on a Micro Services Applications using Docker, Salt & Ni...
DEVNET-1169 CI/CT/CD on a Micro Services Applications using Docker, Salt & Ni...
 
Resume-Fred
Resume-FredResume-Fred
Resume-Fred
 
Microservices with kubernetes @190316
Microservices with kubernetes @190316Microservices with kubernetes @190316
Microservices with kubernetes @190316
 
OCP Datacomm RedHat - Kubernetes Launch
OCP Datacomm RedHat - Kubernetes LaunchOCP Datacomm RedHat - Kubernetes Launch
OCP Datacomm RedHat - Kubernetes Launch
 
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud ServicesDockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
 
DCSF 19 Developing Apps with Containers, Functions and Cloud Services
DCSF 19 Developing Apps with Containers, Functions and Cloud ServicesDCSF 19 Developing Apps with Containers, Functions and Cloud Services
DCSF 19 Developing Apps with Containers, Functions and Cloud Services
 
SpringBoot and Spring Cloud Service for MSA
SpringBoot and Spring Cloud Service for MSASpringBoot and Spring Cloud Service for MSA
SpringBoot and Spring Cloud Service for MSA
 

More from Gilt Tech Talks

Scala Self Types by Gregor Heine, Principal Software Engineer at Gilt
Scala Self Types by Gregor Heine, Principal Software Engineer at GiltScala Self Types by Gregor Heine, Principal Software Engineer at Gilt
Scala Self Types by Gregor Heine, Principal Software Engineer at Gilt
Gilt Tech Talks
 

More from Gilt Tech Talks (13)

“Get Stuff Done Faster: Why Engineers Should Work with the ‘Dark Side’ of Tech”
“Get Stuff Done Faster: Why Engineers Should Work with the ‘Dark Side’ of Tech”“Get Stuff Done Faster: Why Engineers Should Work with the ‘Dark Side’ of Tech”
“Get Stuff Done Faster: Why Engineers Should Work with the ‘Dark Side’ of Tech”
 
Optimizely at Gilt--November 2013 presentation
Optimizely at Gilt--November 2013 presentationOptimizely at Gilt--November 2013 presentation
Optimizely at Gilt--November 2013 presentation
 
The Agile PMO (fall 2014 version)
The Agile PMO (fall 2014 version)The Agile PMO (fall 2014 version)
The Agile PMO (fall 2014 version)
 
An Intro to Swift
An Intro to SwiftAn Intro to Swift
An Intro to Swift
 
iOS Testing With Appium at Gilt
iOS Testing With Appium at GiltiOS Testing With Appium at Gilt
iOS Testing With Appium at Gilt
 
Handling Changes to Your Server-Side Data Model
Handling Changes to Your Server-Side Data ModelHandling Changes to Your Server-Side Data Model
Handling Changes to Your Server-Side Data Model
 
Mobile Testing at Gilt
Mobile Testing at GiltMobile Testing at Gilt
Mobile Testing at Gilt
 
Beyond the Crystal Ball: The Agile PMO
Beyond the Crystal Ball: The Agile PMOBeyond the Crystal Ball: The Agile PMO
Beyond the Crystal Ball: The Agile PMO
 
Exploring Docker at Gilt
Exploring Docker at GiltExploring Docker at Gilt
Exploring Docker at Gilt
 
Scaling Gilt: from monolith ruby app to micro service scala service architecture
Scaling Gilt: from monolith ruby app to micro service scala service architectureScaling Gilt: from monolith ruby app to micro service scala service architecture
Scaling Gilt: from monolith ruby app to micro service scala service architecture
 
PostgreSQL Setup Using Docker
PostgreSQL Setup Using DockerPostgreSQL Setup Using Docker
PostgreSQL Setup Using Docker
 
Roadmap for the Trillion Sensor Universe -- a Gilt-hosted, Internet of Things...
Roadmap for the Trillion Sensor Universe -- a Gilt-hosted, Internet of Things...Roadmap for the Trillion Sensor Universe -- a Gilt-hosted, Internet of Things...
Roadmap for the Trillion Sensor Universe -- a Gilt-hosted, Internet of Things...
 
Scala Self Types by Gregor Heine, Principal Software Engineer at Gilt
Scala Self Types by Gregor Heine, Principal Software Engineer at GiltScala Self Types by Gregor Heine, Principal Software Engineer at Gilt
Scala Self Types by Gregor Heine, Principal Software Engineer at Gilt
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 

Virtualization at Gilt

  • 1. Virtualization at Gilt Rangarajan Radhakrishnan, ranga@gilt.com Infrastructure Engineering Jun 6, 2013
  • 2. What is Gilt? > 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 Men, Women, Home, and Baby & Kids stores
  • 3. Gilt Tech: > The engine behind the Gilt experience Infrastructure Eng: > Tasked with improving efficiency and reliability
  • 4. Tech at Gilt Offices: NYC, Dublin and Portland Infra Eng: NYC and Dublin Architecture: NYC, Portland and Dublin Engineering: NYC, Portland and Dublin
  • 5. Gilt Tech History > 2007: Small Debian footprint with Ruby on Rails > 2008: Migrated to OpenSolaris (from RoR to Java services) > 2010: Migrated to CentOS (from Java services to Scala services) => =>
  • 7. Technology > Databases: PostgreSQL, MongoDB > Search: Solr, Splunk > Frameworks: Play > Languages: Scala, Java, Ruby, Node.js > Config mgmt: Puppet > Continuous integration: Jenkins > Messaging: RabbitMQ
  • 8. Virtualization Goals > Build on what is available > Avoid a one-size-fits-all approach > Offer seamless integration with existing application stack > Use lightweight containers that offer great performance
  • 9. Additional Virtualization Goals > Automate provisioning as much as possible > Feature immutable containers -- avoid uncertainties as a result of changes over time > Avoid repeated enforcement of config management policies
  • 10. Virtualization History at Gilt: The Past > Bare metal: Debian (2007 - 2008) > OpenSolaris zones (2008 - 2010) > Migration to CentOS (2010)
  • 11. Virtualization History at Gilt: The Present > Xen VMs (since 2010) > LXC (since 2012): strong performance, low overhead > EC2 (off and on since 2008), with varying degree of prod/non-prod use (mostly spillover traffic) > Apache CloudStack (since 2013): to increase utilization and maximize efficiency
  • 12. Why CloudStack for Virtualization? > open source > support for multiple hypervisors (KVM, Xenserver and, recently, LXC) > great web UI and Rest API > increasingly active community > committer in-house
  • 13. Virtualization at Gilt with CloudStack 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.
  • 14. Galactica ... > 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
  • 15. > maintains desired state of services > provides DNS updates for services, especially when provisioning or decommissioning > updates load balancer config > integrates with monitoring system/audit > integrates with ioncannon (automated and continuous deployment) Galactica also:
  • 16. Why LXC? > lightweight: minimal performance overhead > tested in staging with good results > proof of concept with live traffic showed good performance > significant work to support LXC in CloudStack "LXC will be implemented as a hypervisor in CloudStack and will be a first class citizen similar to other hypervisors ..." - Phong Nguyen, Gilt (CloudStack committer)
  • 17. Other 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 and testing
  • 18. Recent and Ongoing Work > Testing provisioning LXC containers with different libvirt versions >> Up to 1.0.5 on CentOS 6.3 and 0.9.8 on Ubuntu > Testing entire application stack on CentOS 6.4 LXC container on Ubuntu host >> Trying to avoid libvirt issues that came up with CentOS host
  • 19. Recent and Ongoing Work (cont.) > Testing entire application stack on Ubuntu 12.04 LTS LXC container on Ubuntu host >> Challenge: requires different packaging mechanism > Provisioning LXC with and without libvirt to identify issues with libvirt
  • 20. For More Info: > Gilt Tech blog: http://tech.gilt.com > Gilt Twitter: @gilttech > Gilt Facebook: facebook.com/gilttech > Work for us: gilt.com/careers/tech Thanks to: > CloudStack community > Gilt Tech team > NYCDevOps