Submit Search
Upload
Continuous Deployment at Spreaker
•
3 likes
•
2,819 views
Marco Pracucci
Follow
Continuous Deployment on AWS EC2 made easy with Fabric and Zonify.
Read less
Read more
Technology
Report
Share
Report
Share
1 of 24
Download Now
Download to read offline
Recommended
Running a Lean Startup with AWS - Spreaker Case Study
Running a Lean Startup with AWS - Spreaker Case Study
Marco Pracucci
전 세계 팬들이 모일 수 있는 플랫폼 만들기 - 강진우 (beNX) :: AWS Community Day 2020
전 세계 팬들이 모일 수 있는 플랫폼 만들기 - 강진우 (beNX) :: AWS Community Day 2020
AWSKRUG - AWS한국사용자모임
Spinnaker 파트 1
Spinnaker 파트 1
Steven Shim
Terraform
Terraform
Diego Pacheco
AWS Connect 2017 - Container (feat. AWS)
AWS Connect 2017 - Container (feat. AWS)
smalltown
IDI 2020 - Containers Meet Serverless
IDI 2020 - Containers Meet Serverless
Massimo Ferre'
Ansible Configuration Management Tool 소개 및 활용
Ansible Configuration Management Tool 소개 및 활용
Steven Shim
ContainerDay 2020 - Using Docker as a frontend for Amazon ECS and AWS Fargate
ContainerDay 2020 - Using Docker as a frontend for Amazon ECS and AWS Fargate
Massimo Ferre'
More Related Content
What's hot
Capistrano, Puppet, and Chef
Capistrano, Puppet, and Chef
David Benjamin
Spinnaker VLDB 2011
Spinnaker VLDB 2011
sandeep_tata
Intro to Batch Processing on AWS - DevDay Austin 2017
Intro to Batch Processing on AWS - DevDay Austin 2017
Amazon Web Services
Fabric: A Capistrano Alternative
Fabric: A Capistrano Alternative
Panoptic Development, Inc.
How to launch an aws ec2 instance
How to launch an aws ec2 instance
Andrea Cirillo
Capistrano 3 Deployment
Capistrano 3 Deployment
Creston Jamison
DEPLOYING WORDPRESS BLOG USING DOCKER COMPOSE & ANSIBLE ON AWS
DEPLOYING WORDPRESS BLOG USING DOCKER COMPOSE & ANSIBLE ON AWS
Ramit Surana
Kubernetes Operations (KOPS)
Kubernetes Operations (KOPS)
Jakir Patel
Basics of Ansible - Sahil Davawala
Basics of Ansible - Sahil Davawala
Sahil Davawala
Composer
Composer
Alessandro Minoccheri
Ruby 1.9 And Rails 3.0
Ruby 1.9 And Rails 3.0
ArrrrCamp
"AWS Fargate: Containerization meets Serverless" at AWS User Group Cologne 20...
"AWS Fargate: Containerization meets Serverless" at AWS User Group Cologne 20...
Vadym Kazulkin
Building and Scaling a Containerized Microservice - DevDay Austin 2017
Building and Scaling a Containerized Microservice - DevDay Austin 2017
Amazon Web Services
Control your deployments with Capistrano
Control your deployments with Capistrano
Ramazan K
Terraform Architech
Terraform Architech
David Hsu
Evolution of kube-proxy (Brussels, Fosdem 2020)
Evolution of kube-proxy (Brussels, Fosdem 2020)
Laurent Bernaille
[AWS KR UG 1회 세미나] AWS 배포전략 @ 정민영
[AWS KR UG 1회 세미나] AWS 배포전략 @ 정민영
AWSKRUG - AWS한국사용자모임
Alexandr Marchenko "Kubernetes - easy peasy"
Alexandr Marchenko "Kubernetes - easy peasy"
Fwdays
Deploying a simple Rails application with AWS Elastic Beanstalk
Deploying a simple Rails application with AWS Elastic Beanstalk
Julien SIMON
Symfony aws
Symfony aws
Alessandro Minoccheri
What's hot
(20)
Capistrano, Puppet, and Chef
Capistrano, Puppet, and Chef
Spinnaker VLDB 2011
Spinnaker VLDB 2011
Intro to Batch Processing on AWS - DevDay Austin 2017
Intro to Batch Processing on AWS - DevDay Austin 2017
Fabric: A Capistrano Alternative
Fabric: A Capistrano Alternative
How to launch an aws ec2 instance
How to launch an aws ec2 instance
Capistrano 3 Deployment
Capistrano 3 Deployment
DEPLOYING WORDPRESS BLOG USING DOCKER COMPOSE & ANSIBLE ON AWS
DEPLOYING WORDPRESS BLOG USING DOCKER COMPOSE & ANSIBLE ON AWS
Kubernetes Operations (KOPS)
Kubernetes Operations (KOPS)
Basics of Ansible - Sahil Davawala
Basics of Ansible - Sahil Davawala
Composer
Composer
Ruby 1.9 And Rails 3.0
Ruby 1.9 And Rails 3.0
"AWS Fargate: Containerization meets Serverless" at AWS User Group Cologne 20...
"AWS Fargate: Containerization meets Serverless" at AWS User Group Cologne 20...
Building and Scaling a Containerized Microservice - DevDay Austin 2017
Building and Scaling a Containerized Microservice - DevDay Austin 2017
Control your deployments with Capistrano
Control your deployments with Capistrano
Terraform Architech
Terraform Architech
Evolution of kube-proxy (Brussels, Fosdem 2020)
Evolution of kube-proxy (Brussels, Fosdem 2020)
[AWS KR UG 1회 세미나] AWS 배포전략 @ 정민영
[AWS KR UG 1회 세미나] AWS 배포전략 @ 정민영
Alexandr Marchenko "Kubernetes - easy peasy"
Alexandr Marchenko "Kubernetes - easy peasy"
Deploying a simple Rails application with AWS Elastic Beanstalk
Deploying a simple Rails application with AWS Elastic Beanstalk
Symfony aws
Symfony aws
Similar to Continuous Deployment at Spreaker
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Shixiong Shang
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
devopsdaysaustin
Anton Moldovan "Building an efficient replication system for thousands of ter...
Anton Moldovan "Building an efficient replication system for thousands of ter...
Fwdays
How to contribute Apache CloudStack
How to contribute Apache CloudStack
Go Chiba
HPC in the Cloud
HPC in the Cloud
Guy Tel-Zur
Automating hard things may 2015
Automating hard things may 2015
Mark Baker
Terraform
Terraform
Adam Vincze
Where is my scalable api?
Where is my scalable api?
Altoros
[Spark Summit EU 2017] Apache spark streaming + kafka 0.10 an integration story
[Spark Summit EU 2017] Apache spark streaming + kafka 0.10 an integration story
Joan Viladrosa Riera
Apache Spark Streaming + Kafka 0.10 with Joan Viladrosariera
Apache Spark Streaming + Kafka 0.10 with Joan Viladrosariera
Spark Summit
Kafka Connect & Kafka Streams/KSQL - the ecosystem around Kafka
Kafka Connect & Kafka Streams/KSQL - the ecosystem around Kafka
Guido Schmutz
CI Provisioning with OpenStack - Gidi Samuels - OpenStack Day Israel 2016
CI Provisioning with OpenStack - Gidi Samuels - OpenStack Day Israel 2016
Cloud Native Day Tel Aviv
Docker - Demo on PHP Application deployment
Docker - Demo on PHP Application deployment
Arun prasath
(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...
(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...
Amazon Web Services
Continuous Delivery: The Next Frontier
Continuous Delivery: The Next Frontier
Carlos Sanchez
Building services on AWS in China region
Building services on AWS in China region
Roman Naumenko
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
Edgar Silva
Installing tivoli system automation for high availability of db2 udb bcu on a...
Installing tivoli system automation for high availability of db2 udb bcu on a...
Banking at Ho Chi Minh city
ContainerDays Boston 2015: "CoreOS: Building the Layers of the Scalable Clust...
ContainerDays Boston 2015: "CoreOS: Building the Layers of the Scalable Clust...
DynamicInfraDays
Roy foubister (hosting high traffic sites on a tight budget)
Roy foubister (hosting high traffic sites on a tight budget)
WordCamp Cape Town
Similar to Continuous Deployment at Spreaker
(20)
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
Anton Moldovan "Building an efficient replication system for thousands of ter...
Anton Moldovan "Building an efficient replication system for thousands of ter...
How to contribute Apache CloudStack
How to contribute Apache CloudStack
HPC in the Cloud
HPC in the Cloud
Automating hard things may 2015
Automating hard things may 2015
Terraform
Terraform
Where is my scalable api?
Where is my scalable api?
[Spark Summit EU 2017] Apache spark streaming + kafka 0.10 an integration story
[Spark Summit EU 2017] Apache spark streaming + kafka 0.10 an integration story
Apache Spark Streaming + Kafka 0.10 with Joan Viladrosariera
Apache Spark Streaming + Kafka 0.10 with Joan Viladrosariera
Kafka Connect & Kafka Streams/KSQL - the ecosystem around Kafka
Kafka Connect & Kafka Streams/KSQL - the ecosystem around Kafka
CI Provisioning with OpenStack - Gidi Samuels - OpenStack Day Israel 2016
CI Provisioning with OpenStack - Gidi Samuels - OpenStack Day Israel 2016
Docker - Demo on PHP Application deployment
Docker - Demo on PHP Application deployment
(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...
(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...
Continuous Delivery: The Next Frontier
Continuous Delivery: The Next Frontier
Building services on AWS in China region
Building services on AWS in China region
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
Installing tivoli system automation for high availability of db2 udb bcu on a...
Installing tivoli system automation for high availability of db2 udb bcu on a...
ContainerDays Boston 2015: "CoreOS: Building the Layers of the Scalable Clust...
ContainerDays Boston 2015: "CoreOS: Building the Layers of the Scalable Clust...
Roy foubister (hosting high traffic sites on a tight budget)
Roy foubister (hosting high traffic sites on a tight budget)
Recently uploaded
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024
SkyPlanner
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UbiTrack UK
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
DianaGray10
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
infogdgmi
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
D Cloud Solutions
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
Christian Posta
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
Md Hossain Ali
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
bruanjhuli
Spring24-Release Overview - Wellingtion User Group-1.pdf
Spring24-Release Overview - Wellingtion User Group-1.pdf
Anna Loughnan Colquhoun
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
DianaGray10
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
Mahmoud Rabie
RAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AI
Udaiappa Ramachandran
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
Seth Reyes
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
shyamraj55
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
DianaGray10
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
ThousandEyes
Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?
SANGHEE SHIN
Designing A Time bound resource download URL
Designing A Time bound resource download URL
Runcy Oommen
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
DianaGray10
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
Jamie (Taka) Wang
Recently uploaded
(20)
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
Spring24-Release Overview - Wellingtion User Group-1.pdf
Spring24-Release Overview - Wellingtion User Group-1.pdf
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
RAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AI
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?
Designing A Time bound resource download URL
Designing A Time bound resource download URL
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
Continuous Deployment at Spreaker
1.
Continuous Deployment at Marco Pracucci
2.
Platform for Creating and
Sharing Audio 8 people (4 developers) 2M unique listeners / month 3.5M audio tracks created 500 reqs / sec
3.
We run 80%
of our traffic on AWS about 60 EC2 instances and 50TB on S3
4.
We deploy frequently [even
on friday] 51 deploys in last 30 days
5.
How we deploy the
web [php] app in 90 seconds
6.
Deploy task
7.
code repository 1. ssh fab
www.deploy EC2 instances
8.
code repository 2. checkout fab
www.deploy EC2 instances
9.
code repository Checklist - local
cache warmup 3. warmup - db schema migrations fab www.deploy - check consistency EC2 instances
10.
code repository 4. switch
code fab www.deploy everything ok? EC2 instances
11.
code repository Checklist - iptables
--dport 80 -j DROP - ln -sfn /var/www/new /var/www/curr 4. switch code - clear bytecode cache fab www.deploy - iptables --dport 80 -j ACCEPT EC2 instances
12.
notify team on
IRC generate report fab www.deploy
13.
which instances to
deploy? we do auto-scaling, they change dinamically
14.
we exploited DNS
15.
Split infrastructure into
roles EC2 instances www1 api1 worker1 api2 www2 { worker2 { www3 { api3 role: api role: web role: worker-web
16.
Tag each instance
with roles [space separated roles for multi-role instances]
17.
Map names and
roles to DNS https://github.com/airbnb/zonify Creates Route 53 DNS entries for all instances and roles
18.
Address a single
instance
19.
Address instances by
role
20.
Easy to integrate
with fabric
21.
Do you remember
the starting point? Internally does fab -R web www.deploy
22.
few good reasons Easy,
Fast, Robust
23.
few good reasons Easy,
Fast, Robust Warning: an attacker can easier get your instances IPs (use an unguessable DNS zone name)
24.
Thank you www.spreaker.com/marco @pracucci
Download Now