12. 1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
Do you have basic infrastructure? (2015-11-18)
http://www.robustperception.io/do-you-have-basic-infrastructure/
13. public network
1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
private network
CDN LB API servers DB servers
1.1 -
1.2 -
14. 1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
private network
CDN LB API servers DB servers
public network
.1 -
.2 -
15. 1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
private network
CDN LB API servers DB servers
public network
detection
recovery
diagnosis
16. public network
1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
private network
CDN LB API servers DB servers
1.1 -
1.2 -
29. public network
1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
private network
CDN ELB API servers DB servers
1.1 -
1.2 -
31. public network
1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
private network
CDN LB API servers DB servers
1.1 -
1.2 -
32. public network
private network
API servers
JDK
app server (Tomcat, …)
app (jar, war, …)
Node.js runtime
npm
app source
Python runtime
pip
uWSGI/Gunicorn
app source
39. public network
1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
private network
CDN ELB API servers DB servers
1.1 -
1.2 -
40. uniform
Docker
Config management will only be used to install
Docker, an orchestration system, configure
PAM/SSH auth, and tune OS sysctl values.
traditional
DevOps
toolchain
tedious
… Basically anything not having to do with app deployment.
https://blog.containership.io/containers-vs-config-management-e64cbb744a94
41. public network
1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
private network
CDN LB API servers DB servers
1.1 -
1.2 -
56. public network
1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
private network
CDN ELB API servers DB servers
1.1 -
1.2 -
57. Docker Swarm
Mesos
Kubernetes
Config management will only be used to install
Docker, an orchestration system…
traditional
DevOps
toolchain
… Don’t assume too much about underlying infrastructure.
cattlepets
61. 1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
.1 -
.2 -
private network
CDN LB API servers DB servers
public network
62. private network
LB API servers DB servers
• Rolling upgrade
• Blue/green deployment
• Canary deployment
Traditional app
• in-place update
• immutable infra
68. public network
1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
private network
CDN ELB API servers DB servers
.1 -
.2 -
71. 1. How to recreate your system
2. How to safely change your system
3. When something has gone wrong
Do you have basic infrastructure? (2015-11-18)
http://www.robustperception.io/do-you-have-basic-infrastructure/
73. uniform
Docker
Config management will only be used to install
Docker, an orchestration system… anything
other than app deployment.
traditional
DevOps
toolchain
tedious