Upload
-
View
577
Download
0
Embed Size (px)
DESCRIPTION
Approaching Web Application Deployment in 2012. A short discussion about the future of technologies such as Capistrano, and their place in the technical infrastructure of 2012 and beyond. The presenter has maintained and improved Capistrano over the last 4 years, and is working on new tools to improve the experience of deploying web applications for people of all skill levels.
Citation preview
Deployment Lee @codebeaker Hambley
Saturday, June 16, 12
Nobody cares!
Saturday, June 16, 12
What’s involved?
Saturday, June 16, 12
Application vs. Infrastructure
Saturday, June 16, 12
Infrastructure Application
Saturday, June 16, 12
Operating System
Infrastructure Application
Saturday, June 16, 12
Operating System
Certificates
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Keys
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Github
Keys
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Github
Keys
Log Configuration
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Github
Keys
Log Configuration
Virtual Host Configuration
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Github
Keys
Log Configuration
Virtual Host Configuration
Application Code
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Github
Keys
Log Configuration
Virtual Host Configuration
Application CodeScheduled Jobs
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Github
Keys
Log Configuration
Virtual Host Configuration
Application CodeScheduled Jobs
Database Configuration
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Github
Keys
Log Configuration
Virtual Host Configuration
Application CodeScheduled Jobs
Database Configuration
Cache Configuration
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Github
Keys
Log Configuration
Virtual Host Configuration
Application CodeScheduled Jobs
Log Data
Database Configuration
Cache Configuration
Infrastructure Application
Saturday, June 16, 12
Operating System
Package Manager(s)
Certificates
Github
Keys
Log Configuration
Virtual Host Configuration
Application CodeScheduled Jobs
Log Data
Database Configuration
Cache Configuration
Database
Infrastructure Application
Saturday, June 16, 12
Typical stack?
Saturday, June 16, 12
Resque
Unicorn / Unicorn /
logrotate
cron
Elastic Search
JVM
Resque
Redis
Memcached
PostgreSQL
Nginx
Rails / Sinatra
Saturday, June 16, 12
Tools?
Saturday, June 16, 12
Chef
Bosh Puppet
Vlad
Mina
CapistranoScalarium
Heroku
Saturday, June 16, 12
Provisioning Configuration Deployment
Puppet
Chef
BOSH
Vlad
Capistrano
Mina
Heroku
Scalarium
Saturday, June 16, 12
UNIX™ Philosophy
Saturday, June 16, 12
Lots of small tools, each doing one thing.
Saturday, June 16, 12
Offenders
Saturday, June 16, 12
Apache
Saturday, June 16, 12
Passenger mod_rails
Saturday, June 16, 12
Monit
Saturday, June 16, 12
Because some tools are missing?
Saturday, June 16, 12
Graceful Restarts†
Truth Source
Process Signaling
† Through signaling?
Saturday, June 16, 12
Graceful Restarts†
Truth Source
Process Signaling
† Through signaling?
JSON/YAML Files?
man (1) kill
sudo kill -USR2 $(cat ./tmp/unicorn.pid)
Saturday, June 16, 12
Heroku?
Saturday, June 16, 12
Lightening Quiz
Saturday, June 16, 12
# > touch /tmp/some-file
$ > touch /tmp/some-file
Saturday, June 16, 12
$ sudo su someuser
$ sudo su - someuser
Saturday, June 16, 12
Somebody wants to start working on open
source?
Saturday, June 16, 12
Signal a process when a checksum changes
Saturday, June 16, 12
Saturday, June 16, 12
I’ll help you.
Saturday, June 16, 12
Dankeschön!
Thank You!
дзякуй
спасибо
Saturday, June 16, 12