SlideShare ist ein Scribd-Unternehmen logo
1 von 34
Downloaden Sie, um offline zu lesen
Deployment tales
OLEKSANDR SIMONOV
About Me
•Oleksandr Simonov
•Businessman/Software Engineer/DevOps
•13 years in IT
•8 years with Ruby
•Open Source contributor
•Github: @simonoff
Shared Hosting Era
Dedicated Server Era
Cloud Era
What is wrong in every Era?
?!
Shared Hosting Era
Apache
Shared Hosting Era
Apache
PERL/CGI
Shared Hosting Era
Apache
PERL/CGI
PHP
Shared Hosting Era
Apache
PERL/CGI
PHP
MySQL
Deployment Process
1. Edit File
2. Upload
3. Open browser
4.Say: F*CK
5. Close browser
6. GOTO 1
Dedicated Server Era
Debian/Red Hat
Dedicated Server Era
Debian/Red Hat
sudo
Dedicated Server Era
Debian/Red Hat
sudo
vim
Dedicated Server Era
Debian/Red Hat
sudo
vim
rm -rf /
Deployment Process
tar cvzf suppa.tar.gz suppa
scp suppa.tar.gz root@server.com:/
ssh root@server.com
tar xvzf /suppa.tar.gz /var/www/
Cloud Era
capistrano
Cloud Era
capistrano
vlad
Cloud Era
capistrano
vlad
mina
Cloud Era
capistrano
vlad
mina
ssh -> cd ..-> rails s production
Cloud Era
Every Era Wrong
There is no daemons
There is a lot crushes
There is a lot bugs
There is no persistence on restart
“Something went wrong”
–Nginx default page
Usual fix
init script
passenger
Better fix
daemon tools
runit
systemd
RUNIT
a UNIX init scheme with service
supervision
capistrano + runit
capistrano + runit
all parts are services
all parts will be restarted
all parts management without
root/sudo
capistrano-runit gems collection
puma
sidekiq
resque
rake
https://github.com/
capistrano-runit
QUESTIONS?

Weitere ähnliche Inhalte

Was ist angesagt?

Workshop For pycon13
Workshop For pycon13Workshop For pycon13
Workshop For pycon13
Steven Pousty
 
Build and deployment
Build and deploymentBuild and deployment
Build and deployment
WO Community
 
JCache is here. Say goodbye to proprietary Caching API's", jDays 2015 Speaker...
JCache is here. Say goodbye to proprietary Caching API's", jDays 2015 Speaker...JCache is here. Say goodbye to proprietary Caching API's", jDays 2015 Speaker...
JCache is here. Say goodbye to proprietary Caching API's", jDays 2015 Speaker...
hamidsamadi
 
Lighning Talk: composer repositories
Lighning Talk: composer repositoriesLighning Talk: composer repositories
Lighning Talk: composer repositories
Bryan Agee
 
Open Web Device: The first phone running Firefox OS!
Open Web Device: The first phone running Firefox OS!Open Web Device: The first phone running Firefox OS!
Open Web Device: The first phone running Firefox OS!
Francisco Jordano
 

Was ist angesagt? (19)

perlcc made easy or, how to make a CGI Moose app
perlcc made easy or, how to make a CGI Moose appperlcc made easy or, how to make a CGI Moose app
perlcc made easy or, how to make a CGI Moose app
 
Workshop For pycon13
Workshop For pycon13Workshop For pycon13
Workshop For pycon13
 
Build and deployment
Build and deploymentBuild and deployment
Build and deployment
 
Homebrew atlrug
Homebrew atlrugHomebrew atlrug
Homebrew atlrug
 
JCache is here. Say goodbye to proprietary Caching API's", jDays 2015 Speaker...
JCache is here. Say goodbye to proprietary Caching API's", jDays 2015 Speaker...JCache is here. Say goodbye to proprietary Caching API's", jDays 2015 Speaker...
JCache is here. Say goodbye to proprietary Caching API's", jDays 2015 Speaker...
 
sIFR Vs. Cufón
sIFR Vs. CufónsIFR Vs. Cufón
sIFR Vs. Cufón
 
Minio: Associated projects in Go programming.
Minio: Associated projects in Go programming. Minio: Associated projects in Go programming.
Minio: Associated projects in Go programming.
 
Lighning Talk: composer repositories
Lighning Talk: composer repositoriesLighning Talk: composer repositories
Lighning Talk: composer repositories
 
Gestión de la configuración - Jenkins ci
Gestión de la configuración - Jenkins ciGestión de la configuración - Jenkins ci
Gestión de la configuración - Jenkins ci
 
Vagrant
VagrantVagrant
Vagrant
 
Open Web Device: The first phone running Firefox OS!
Open Web Device: The first phone running Firefox OS!Open Web Device: The first phone running Firefox OS!
Open Web Device: The first phone running Firefox OS!
 
Virtual boxen
Virtual boxenVirtual boxen
Virtual boxen
 
Appsecforum2014 nov14-bk-cryptool-rump
Appsecforum2014 nov14-bk-cryptool-rumpAppsecforum2014 nov14-bk-cryptool-rump
Appsecforum2014 nov14-bk-cryptool-rump
 
Travel with your mock server
Travel with your mock serverTravel with your mock server
Travel with your mock server
 
Wander in the Dockershop - May Docker Meetup Shanghai
Wander in the Dockershop - May Docker Meetup ShanghaiWander in the Dockershop - May Docker Meetup Shanghai
Wander in the Dockershop - May Docker Meetup Shanghai
 
Open shift intro for Philly PUG
Open shift intro for Philly PUGOpen shift intro for Philly PUG
Open shift intro for Philly PUG
 
せめてログサーバの稟議を通す方法
せめてログサーバの稟議を通す方法せめてログサーバの稟議を通す方法
せめてログサーバの稟議を通す方法
 
Central Iowa Linux Users Group October Meeting: Centos 8
Central Iowa Linux Users Group October Meeting: Centos 8Central Iowa Linux Users Group October Meeting: Centos 8
Central Iowa Linux Users Group October Meeting: Centos 8
 
Vagrant step-by-step guide for Beginners
Vagrant step-by-step guide for BeginnersVagrant step-by-step guide for Beginners
Vagrant step-by-step guide for Beginners
 

Andere mochten auch

Xmas fbook1111
Xmas fbook1111Xmas fbook1111
Xmas fbook1111
BOLZOND
 
Theo douma kwaliteit, toezicht en de onderwijsteams
Theo douma kwaliteit, toezicht en de onderwijsteamsTheo douma kwaliteit, toezicht en de onderwijsteams
Theo douma kwaliteit, toezicht en de onderwijsteams
BVECongres
 
Theo douma kwaliteit, toezicht en de onderwijsteams
Theo douma   kwaliteit, toezicht en de onderwijsteamsTheo douma   kwaliteit, toezicht en de onderwijsteams
Theo douma kwaliteit, toezicht en de onderwijsteams
BVECongres
 

Andere mochten auch (18)

Workshop 2 - Marieke Moerkerk: inspirerend onderwijs
Workshop 2 - Marieke Moerkerk: inspirerend onderwijsWorkshop 2 - Marieke Moerkerk: inspirerend onderwijs
Workshop 2 - Marieke Moerkerk: inspirerend onderwijs
 
Workshop 8 - Jan Berkhout: Klassenondernemers
Workshop 8 - Jan Berkhout: KlassenondernemersWorkshop 8 - Jan Berkhout: Klassenondernemers
Workshop 8 - Jan Berkhout: Klassenondernemers
 
Xmas fbook1111
Xmas fbook1111Xmas fbook1111
Xmas fbook1111
 
Workshop 6 - Marjolein Held en Henk Munstermann: bekwaamheidseisen mbo
Workshop 6 - Marjolein Held en Henk Munstermann: bekwaamheidseisen mboWorkshop 6 - Marjolein Held en Henk Munstermann: bekwaamheidseisen mbo
Workshop 6 - Marjolein Held en Henk Munstermann: bekwaamheidseisen mbo
 
Presentaties Nationaal BVE Congres
Presentaties Nationaal BVE CongresPresentaties Nationaal BVE Congres
Presentaties Nationaal BVE Congres
 
Gerda veleke, beroepsvereniging als platform voor kwaliteit
Gerda veleke, beroepsvereniging als platform voor kwaliteitGerda veleke, beroepsvereniging als platform voor kwaliteit
Gerda veleke, beroepsvereniging als platform voor kwaliteit
 
Workshop 7 - Jeroen van den Oord en John Leeman: Vakmanschap is meesterschap
Workshop 7 - Jeroen van den Oord en John Leeman: Vakmanschap is meesterschapWorkshop 7 - Jeroen van den Oord en John Leeman: Vakmanschap is meesterschap
Workshop 7 - Jeroen van den Oord en John Leeman: Vakmanschap is meesterschap
 
Theo douma kwaliteit, toezicht en de onderwijsteams
Theo douma kwaliteit, toezicht en de onderwijsteamsTheo douma kwaliteit, toezicht en de onderwijsteams
Theo douma kwaliteit, toezicht en de onderwijsteams
 
Workshop 6 marjolein held en henk munstermann mbo docent belicht
Workshop 6   marjolein held en henk munstermann mbo docent belichtWorkshop 6   marjolein held en henk munstermann mbo docent belicht
Workshop 6 marjolein held en henk munstermann mbo docent belicht
 
Theo douma kwaliteit, toezicht en de onderwijsteams
Theo douma   kwaliteit, toezicht en de onderwijsteamsTheo douma   kwaliteit, toezicht en de onderwijsteams
Theo douma kwaliteit, toezicht en de onderwijsteams
 
Workshop 4 - Leo Bakker: digitaal leermateriaal in onderwijsleerproces
Workshop 4 - Leo Bakker: digitaal leermateriaal in onderwijsleerprocesWorkshop 4 - Leo Bakker: digitaal leermateriaal in onderwijsleerproces
Workshop 4 - Leo Bakker: digitaal leermateriaal in onderwijsleerproces
 
Workshop 5 - Patrice Dijkman en Rity van der Avoort: ruimte geven, nemen en m...
Workshop 5 - Patrice Dijkman en Rity van der Avoort: ruimte geven, nemen en m...Workshop 5 - Patrice Dijkman en Rity van der Avoort: ruimte geven, nemen en m...
Workshop 5 - Patrice Dijkman en Rity van der Avoort: ruimte geven, nemen en m...
 
Workshop 1 - christa de graauw identiteit als kwaliteit
Workshop 1  - christa de graauw identiteit als kwaliteitWorkshop 1  - christa de graauw identiteit als kwaliteit
Workshop 1 - christa de graauw identiteit als kwaliteit
 
Evaluatie Nationaal BVE Congres
Evaluatie Nationaal BVE CongresEvaluatie Nationaal BVE Congres
Evaluatie Nationaal BVE Congres
 
Workshop 3 - Marga Tubbing: leerstijlen en e-leren
Workshop 3 - Marga Tubbing: leerstijlen en e-lerenWorkshop 3 - Marga Tubbing: leerstijlen en e-leren
Workshop 3 - Marga Tubbing: leerstijlen en e-leren
 
How to become a chef
How to become a chefHow to become a chef
How to become a chef
 
De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...
De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...
De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...
 
Pivorak light
Pivorak lightPivorak light
Pivorak light
 

Ähnlich wie Deployment tales

Dockerizing Symfony Applications - Symfony Live Berlin 2014
Dockerizing Symfony Applications - Symfony Live Berlin 2014Dockerizing Symfony Applications - Symfony Live Berlin 2014
Dockerizing Symfony Applications - Symfony Live Berlin 2014
D
 
Midwest php 2013 deploying php on paas- why & how
Midwest php 2013   deploying php on paas- why & howMidwest php 2013   deploying php on paas- why & how
Midwest php 2013 deploying php on paas- why & how
dotCloud
 
Plack on SL4A in Yokohama.pm #8
Plack on SL4A in Yokohama.pm #8Plack on SL4A in Yokohama.pm #8
Plack on SL4A in Yokohama.pm #8
Yoshiki Kurihara
 
Deploying PHP on PaaS: Why and How?
Deploying PHP on PaaS: Why and How?Deploying PHP on PaaS: Why and How?
Deploying PHP on PaaS: Why and How?
Docker, Inc.
 
Chef on SmartOS
Chef on SmartOSChef on SmartOS
Chef on SmartOS
Eric Saxby
 
bh-us-02-murphey-freebsd
bh-us-02-murphey-freebsdbh-us-02-murphey-freebsd
bh-us-02-murphey-freebsd
webuploader
 

Ähnlich wie Deployment tales (20)

Python on FreeBSD
Python on FreeBSDPython on FreeBSD
Python on FreeBSD
 
Dockerizing Symfony Applications - Symfony Live Berlin 2014
Dockerizing Symfony Applications - Symfony Live Berlin 2014Dockerizing Symfony Applications - Symfony Live Berlin 2014
Dockerizing Symfony Applications - Symfony Live Berlin 2014
 
Midwest php 2013 deploying php on paas- why & how
Midwest php 2013   deploying php on paas- why & howMidwest php 2013   deploying php on paas- why & how
Midwest php 2013 deploying php on paas- why & how
 
A Fabric/Puppet Build/Deploy System
A Fabric/Puppet Build/Deploy SystemA Fabric/Puppet Build/Deploy System
A Fabric/Puppet Build/Deploy System
 
Plack on SL4A in Yokohama.pm #8
Plack on SL4A in Yokohama.pm #8Plack on SL4A in Yokohama.pm #8
Plack on SL4A in Yokohama.pm #8
 
zebra & openconfigd Introduction
zebra & openconfigd Introductionzebra & openconfigd Introduction
zebra & openconfigd Introduction
 
The Modern Developer Toolbox
The Modern Developer ToolboxThe Modern Developer Toolbox
The Modern Developer Toolbox
 
Introduction to NodeJS with LOLCats
Introduction to NodeJS with LOLCatsIntroduction to NodeJS with LOLCats
Introduction to NodeJS with LOLCats
 
Deploying PHP on PaaS: Why and How?
Deploying PHP on PaaS: Why and How?Deploying PHP on PaaS: Why and How?
Deploying PHP on PaaS: Why and How?
 
Chef on SmartOS
Chef on SmartOSChef on SmartOS
Chef on SmartOS
 
ASP.NET 5 auf Raspberry PI & docker
ASP.NET 5 auf Raspberry PI & dockerASP.NET 5 auf Raspberry PI & docker
ASP.NET 5 auf Raspberry PI & docker
 
bh-us-02-murphey-freebsd
bh-us-02-murphey-freebsdbh-us-02-murphey-freebsd
bh-us-02-murphey-freebsd
 
NLUUG Spring 2012 - OpenShift Primer
NLUUG Spring 2012 - OpenShift PrimerNLUUG Spring 2012 - OpenShift Primer
NLUUG Spring 2012 - OpenShift Primer
 
Self revisor
Self revisorSelf revisor
Self revisor
 
Drupal Efficiency - Coding, Deployment, Scaling
Drupal Efficiency - Coding, Deployment, ScalingDrupal Efficiency - Coding, Deployment, Scaling
Drupal Efficiency - Coding, Deployment, Scaling
 
Software Quality Assurance Tooling - Wintersession 2024
Software Quality Assurance Tooling - Wintersession 2024Software Quality Assurance Tooling - Wintersession 2024
Software Quality Assurance Tooling - Wintersession 2024
 
Start tracking your ruby infrastructure
Start tracking your ruby infrastructureStart tracking your ruby infrastructure
Start tracking your ruby infrastructure
 
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Introducing resinOS: An Operating System Tailored for Containers and Built fo...Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
 
Bundling Packages and Deploying Applications with RPM
Bundling Packages and Deploying Applications with RPMBundling Packages and Deploying Applications with RPM
Bundling Packages and Deploying Applications with RPM
 
Deploying to Ubuntu on Linode
Deploying to Ubuntu on LinodeDeploying to Ubuntu on Linode
Deploying to Ubuntu on Linode
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Kürzlich hochgeladen (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
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
 
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
 

Deployment tales