PaaS - OpenShift como plataforma pública

1,025 views

Published on

OpenShift por baixo do capo, como funciona, quais os componentes, arquitetura e escalabilidade.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,025
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
15
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

PaaS - OpenShift como plataforma pública

  1. 1. PaaS: Desenvolvendo na nuvem OpenShift Origin como plataforma pública Mateus Caruccio mateus.caruccio@getupcloud.com @mateuscaruccio
  2. 2. Quem sou Mateus Caruccio, Master of Puppets @ Getup Cloud (.com) Linux User #183552 Programador backend com passagens por - Terra Networks - GPARC (PUC-RS) - T&T Engenheiros Associados (HP Brasil) Pythonista por opção DevOps desde 11/2012
  3. 3. Nuvem pra todo lado Termo um tanto vago - mais falado do que o rei do camarote Meu pai adora "mandar essas fotos pra nuvem" Eu já fazia FTP em 1997! Afinal, o que é nuvem?
  4. 4. Nuvem é... ...ninguém sabe ao certo. Usar o gmail/facebook/twitter/whatever é nuvem? Subir arquivo no dropbox? Contratar uma VPS (locaweb, kinghost, etc)? Comprar e montar sua infra na amazom?
  5. 5. Nuvem talvez seja... ABSTRAÇÃO
  6. 6. Menos é mais Se eu uso webmail, não quero saber como o software funciona Eu quero enviar e receber emails! Se eu ofereço webmail, não quero configurar firewall/balanceador/SO/etc Eu quero programar meu software! Se eu provisiono infra-estrutura, não quero manter a usina elétrica
  7. 7. Foca no trabalho!
  8. 8. Known your *aaS SaaS - Software-as-a-Service - Produto final, usuário PaaS - Platform-as-a-Service - Ambiente para o dev = fácil, ágil, flexível IaaS - Infrastructure-as-a-Service - VM, SO, rede, roteador, firewal...
  9. 9. OpenShift Origin é PaaS Roda sobre (praticamente qualquer) infra-estrutura: ● EC2 ● Rackspace ● Bare Metal ● OpenStack ● VMWare
  10. 10. OpenShift Origin - Projeto ● 100% Open Source: github.com/openshift/origin-server ● No lock-in - portabilidade entre diferentes implementações ● Projeto maduro - 1˚ commit em 20/12/2010 - 14634 commits (29/11/2013) ● 8a organização mais ativa no github* (06/2013) - 72 contribs ● Agnóstico a linguagens e frameworks ● Mantido principalmente pela Red Hat * twitter.com/gnurag/status/348777656004800512
  11. 11. OpenShift Origin - Repositório e Releases 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/graphs/commit-activity
  12. 12. OpenShift - Aplicação OpenShift entrega aplicação, não servidor Composta por - Gear - Cartridge Tipos - Escalável - Não Escalável
  13. 13. OpenShift - Gear Aplicação é composta por 1 ou + gears Unidade básica computational: RAM + CPU + Disco Isolamento via labels SELinux Provisionamento de recursos via cgroups Cada gear é um usuário Linux
  14. 14. OpenShift - Cartridge Funcionalidade adicionada ao gear Exemplos: Apache + mod_php/mod_passenger Python (wsgi) NodeJS (npm) Java (JBoss/Tomcat)
  15. 15. OpenShift - Cartridge Fácil de escrever - conjunto de scripts + software opcional Repositório público (github está cheio de exemplos) Formato: metadata/manifest.yml bin/ hooks/ env/ versions/ template/ Spec do cartridge (nome, versão, url, vendor, etc) Scripts de Instalação, configuração e atualização Scripts de troca de mensagem entre cartridges (env vars) Env vars exportadas para o gear Arquivos específicos do cartridge (binários, configs, etc) Repo git inicial do da aplicação (cartridges de linguagens)
  16. 16. OpenShift - Quickstart Aplicação com receita pronta: criar e usar Ex: Wordpress (Cartridge PHP + Cartidge MySql)
  17. 17. OpenShift - Arquitetura Broker - Provisiona apps (gear, DNS, storage, …) - Autenticação - Bilhetagem - Interface REST para clientes (RHC, Web Console, curl, etc) MongoDB - Autenticação - Info de apps (nome, qtd gears, etc) - Usage stats Node hospeda os gears
  18. 18. "x4fx62x72x69x67x61x64x6fx00"; Mateus Caruccio - Master of Puppets mateus.caruccio@getupcloud.com @mateuscaruccio http://www.slideshare.net/getupcloud Getup Cloud http://getupcloud.com @getupcloud

×