Date post: | 16-Apr-2017 |
Category: |
Technology |
Upload: | francisco-souza |
View: | 287 times |
Download: | 1 times |
what the f**rancisco?!
• Software Engineer, Video @ NYTimes
• Docker Captain
• One of the first developers of Tsuru PaaS
• Not-as-active-as-in-the-past open-source contributor
What is tsuru?
• Open-source PaaS created by Globo.com
• Also used by other companies
• "Real-life" oriented from day-0
January, 2012
• Let's move to the "cloud"
• What does that mean?
• Private cloud
20162015
20142013
2012
IaaS and PaaS
• Are these terms still a thing?
• Back in 2012, they were
• IaaS: OpenStack
• PaaS: Cloud Foundry
20162015
20142013
2012
Creating a PaaS in 2012
• No Docker
• "Let's go with VM's and investigate this container thing later"
20162015
20142013
2012
Creating a PaaS in 2012
• No Docker
• "Let's go with VM's and investigate this container thing later"
• Using Go Weekly releases
20162015
20142013
2012
Concepts• Platforms
• Platform <-> Juju Charm
• Applications
• Application <-> Juju Deployment + load balancer
• Units
• Unit <-> VM
December, 2012
• First application deployed to production
• 10-minutes overhead
20162015
20142013
2012
December, 2012
• First application deployed to production
• 10-minutes overhead
• Can we do better?
20162015
20142013
2012
Concepts• Platforms
• Platform <-> Docker image
• Applications
• Application <-> Docker image + hostname
• Units
• Unit <-> Docker container
December, 2013
• First application deployed to production
• Docker 0.7
• Production environment created with Docker 0.4
20162015
20142013
2012
Tsuru at Globo.com today
• ~800 apps
• ~300 deployments a day
• Running internal applications and large-scale user-facing applications (~400k simultaneous users)
20162015
20142013
2012
Docker in Production
• Docker 0.4: first deployment of the production environment
• Docker 0.7: first application launched
20162015
20142013
2012
Scaling/Clustering
• No Swarm/Kubernetes/Mesos at the time
• Let's do it ourselves!
• github.com/tsuru/docker-cluster
docker-cluster
• Library for clustering Docker nodes
• Hold one instance of go-dockerclient per node
• Communicate through the remote API
Future of Tsuru & Docker• Docker shifting towards orchestration
• Less work for Tsuru :)
• Container orchestration solutions
• Docker Swarm
• Mesos/Marathon
• Kubernetes
try tsuru today!% brew tap tsuru/homebrew-tsuru
% brew install tsuru
% tsuru install
% sudo apt-add-repository ppa:tsuru/ppa
% sudo apt-get update
% sudo apt-get install tsuru-client
Growing up with Docker
Francisco Souza @franciscosouza slideshare.net/franciscosouza [email protected]
How Docker and Tsuru have evolved
github.com/tsuru