Apresentação no FISL14 da nossa implementação de OpenShift Origin usando infraestrutura Amazon junto com a Diane Mueller - Red Hat Cloud Ecosystem Evangelist
1. Launching a Public PaaS on Open Source
Getup & OpenShift Origin
Mateus Caruccio - CEO
mateus.caruccio@getupcloud.com
@mateuscaruccio
2. First things first
3 gears grátis durante o FISL - para sempre o/
http://getupcloud.com | promo code: FISL14
perguntas e respostas no final
#getupfisl
ou no microfone como de costume
3. A Getup
Plataforma para desenvolvimento e hospedagem de aplicações na nuvem,
baseado em OpenShift Origin e com infraestrutura Amazon.
E por que entramos nessa?
Nós gostamos de programar
Programação e infraestrutura não se misturam
Queremos os desenvolvedores longe da infraestrutura
Trazer para o Brasil um serviço verdadeiramente self-service e "pay as you go"
chega de falsos cloud!
4. Por que escolhemos o OpenShift Origin?
Open Source - mandatório
No lock-in - portabilidade
Maturidade
Forte senso de comunidade - 8a
organização mais ativa no github*
Agnóstico à linguagens e frameworks
Confiança - projeto mantido por uma empresa com tradição OSS
*twitter.com/gnurag/status/348777656004800512
5. Repositório do OpenShift Origin
Branch master - commits frenéticos*, desenvolvimento de features
Branch openshift-origin-release-X - versão estável e ciclo definido (~3 meses)
github.com/openshift/origin-server
*github.com/openshift/origin-server/graphs/commit-activity
6. Repositório OpenShift Getup
Criamos o branch getup-openshift-origin-release-X
Desenvolvimento local
Componentes (broker/console/node/auth) rodam no host do programador
Adicionamos nossos bits (identidade visual, autenticação, billing)
Deploy em ambiente dev para teste / homologação
Deploy em produção
github.com/getupcloud/origin-server
8. Nossa implementação na AWS
presença global / múltiplas zonas / vários produtos
EC2 - poder computacional
EBS - persistência
RDS -multi zona / escalável
Route53 - SLA 100% / plugin OpenShift
VPC - rede privada
CloudFormation - deploy automático
CloudWatch - monitoramento
9. CloudFormation + Puppet
Também precisamos de escalabilidade e para isso não podemos confiar em
humanos.
Buscar "zero intervenção manual"
CloudFormation atua na infraestrutura
Puppet atua nas instâncias
github.com/getupcloud/getup-cloudformation
github.com/getupcloud/getup-utils
10. CloudWatch - Monitoramento
Métricas padrão
CPU, memória, disco
Métricas OpenShift
No
global de apps, global de gears, gears por node
Alarmes
Email + SMS (Zenvia)
13. Disaster Recovery
EBS everywhere!
Snapshot a cada 3 horas / ciclo 7 dias
MongoDB redundante - replicaset
Indisponibilidade de zona - nodes para outras zonas
RDS redundante - master / slave
Restauração mais rápida com cloudformation
14. OpenShift Origin - Prós e contras
Bom
Comunidade ativa
Amplos canais de suporte (irc, blog, fórum, mail-list, g+ e hangout)
Resposta rápida de suporte
Flexibilidade - cartridges customizados
Nem tão bom
Sem console web/usuário admin
15. Futuro
Abrir nosso script puppet
Gears maiores (1GB)
Novos cartridges
Integração com outros serviços (S3, CloudFront, Mailgun...)
Deploy de app em múltiplas regiões
Tradução do Console WEB
Novos gatilhos de auto-scale (atualmente apenas tráfego web)
Maior flexibilidade para equipes de desenvolvimento
16. Comunidade Getup
Como fazer parte da comunidade Getup
GitHub - github.com/getupcloud
Zendesk - getup.zendesk.com