tsuru: o paas open source
DESCRIPTION
Palestra sobre o tsuru apresentada durante o DevDay 2014, em Belo Horizonte, no dia 01 de Novembro de 2014TRANSCRIPT
tsuruO PaaS open source
Francisco Souza @franciscosouza
what the f**rancisco?!
• Desenvolvedor @ Globo.com
• Open source fanboy
tsuru?
Premissas
• Boas práticas
• Simplicidade
• Extensibilidade
• Escalabilidade
• Multiplataforma
• Open source
• No vendor lock-in
Demo
O que aconteceu?• app-create
O que aconteceu?• git push tsuru master
O que aconteceu?• Acessar http://hello.devday.souza.cc
Arquitetura
• Alta disponibilidade
• Segregação
• Segurança
• Escalabilidade
Arquitetura
Contribuindo
github.com/tsuru
tsuru• Coração do PaaS
• API
• Comunicação com Docker, EC2 e CloudStack
• Configuração do Hipache
• Integração com Gandalf
• Go
Gandalf
• Gerenciamento de repositórios Git
• Criação, remoção e autorização via HTTP
• Controle de acesso por SSH
• Go
basebuilder
• Plataformas utilizadas no tsuru
• Adicione sua linguagem favorita aqui :)
• Dockerfile + Shell
tsuru-dashboard• Dashboard web para o tsuru
• Visualização de métricas
• Gerenciamento de apps
• Administração da cloud
• Python (Django) + JavaScript
tsuru-circus
• Plugins do tsuru para coleta de logs, injeção de variáveis de ambiente e notificação de status dos processos da aplicação
• Python
tsuru-unit-agent• Agente que roda dentro das unidades da
aplicação
• Injeção de variáveis de ambiente
• Execução de hooks de deploy
• Registro de units na API do tsuru
• Python
docker-cluster
• Lib de clusterização de containers no Docker
• Lógica personalizável de scheduling
• Detecção e correção automática de falhas em nós do cluster
• Go
config
• Lib de gerenciamento de configuração utilizando YAML
• Go
…
Menção honrosa
github.com/fsouza/go-dockerclient
Dig it!
• Passo a passo: docs.tsuru.io/en/latest/installing
• tsuru-bootstrap: github.com/tsuru/tsuru-bootstrap
tsuru: o PaaS open source
Francisco Souza @franciscosouza slideshare.net/franciscosouza [email protected]
tsuru.io
globo .com