verdades que não querem te contar sobre docker

Post on 31-Jul-2015

201 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

C l o u d C o m p u t i n g

VERDADES QUE NÃO QUEREM TE CONTAR SOBRE DOCKER

Luis Armando e Bruno Tavares

2

Luis Armando - @labianchin

Bruno Tavares - @bltavares

AGENDA

• O que é o Docker?

• Como ele tem facilitado a entrega na nuvem

• As verdades que não querem te contar...

• Perguntas

3

O QUE É DOCKER?

4

O QUE É DOCKER?

5

• Tecnologia recente (2013)

• Baseada em namespaces (isolamento de processos)

• Plataforma com ferramentas de suporte de armazenamento, rede

• Comunidade grande e crescendo sempre

• Esta em Trial no Tech Radar da ThoughtWorks

E NO QUE O DOCKER FACILITA?

6

POR QUE DOCKER?

7

• Todas dependências de uma aplicação dentro de um pacote (imagem)

• Várias aplicações em um mesmo servidor

• Mesma imagem em diferentes servidores e ambientes

• Imagem torna-se um artefato de deployment

• Facilita escalar horizontalmente

• Isolamento de aplicação e dependências de forma barata

VAMOS COMEÇAR A FALAR UMAS VERDADES?

8

COMO "DOCKERIZAR" UMA APLICAÇÃO?Sua aplicação provavelmente vai precisar de mudanças. Sera que ela esta preparada?

9

COMO "DOCKERIZAR"?

10

• A aplicação pode iniciar e parar a qualquer momento?

• Como a aplicação sabe localizar os serviços que ela usa?

• Assume serviços rodando no mesmo servidor?

• Como as dependências são gerenciadas?

• Como arquivos gerados pela aplicação são persistidos?

COMO UTILIZAR DOCKER NO PIPELINE?Gerar artefatos reproduzíveis é muito importante para um bom processo de entrega. Como eu integro com o Docker?

11

DOCKER NO PIPELINE

12

• Seu CI já possui artefatos gerados?

• Como publicar imagens do Docker?

• Posso utilizar um registro publico?

• Como manter o próprio registro?

• Como se integra com outros gerenciadores de artefatos?

COMO INTEGRAR PROCESSOS DEPENDENTES?Cada processo roda em um container. Como eu coloco processos para rodar em conjunto?

13

COMPOSIÇÃO DE CONTAINERS

14

• Como os seus processos interagem?

• Eles se comunicam por rede?

• Eles se comunicam por arquivos intermediarios?

• Como orquestrar containers para desenvolvimento?

• Como orquestrar containers em produção?

COMO LIDAR COM PERSISTÊNCIA DE ARQUIVOS?Containers são descartáveis. Como lidar com arquivos de forma persistente?

15

PERSISTÊNCIA DE ARQUIVOS

16

• Os arquivos do containers podem ser descartados?

• Como gerencio arquivos permanentes?

• Onde persistir esses arquivos?

COMO DEPLOYAR UMA IMAGEM?Agora que temos uma imagem, precisamos executa-las.

17

DEPLOYMENT

18

• Como configurar o servidor do Docker?

• Posso continuar usando o meu Configuration Manager?

• Qual distro recomendada?

• Como implementar meu próprio PaaS?

COMO DEPLOYAR EM VÁRIOS SERVIDORES?Se estivermos escalando horizontalmente, quais são os desafios?

19

MÚLTIPLOS SERVIDORES

20

• Como abstraio a rede entre múltiplos servidores?

• Como faço para containers serem executados no mesmo

servidor?

• Como o sistema escolhe qual servidor executará o

container?

E É SEGURO?Aplicações podem ser comprometidas por diversos motivos. Como containers mitigam os problemas?

21

SEGURANÇA

22

• Quão isolados são os processos?

• Quão difícil é escalar privilégios?

• Como aplicar patches de segurança?

• Como auditar containers?

ESTA MADURO?A comunidade é forte e tem resolvido vários problemas que estamos discutindo. Será que devo começar a usar?

23

MATURIDADE

24

• Tenho um processo que consegue acompanhar as

mudanças do ecosistema?

• As mudanças tem sido retro-compatíveis?

"Pode usar que é massa" - Tavares, Bruno

25

Perguntas?

MUITO OBRIGADO

Luis Bianchin @labianchin

Bruno Tavares @bltavares

FUTURO

27

FUTURO

28

• Acompanhar o que outras empresas tem feito

• New Relic, Spotify, Google, Joyent, Phusion, Iron.io...

• Acompanhe outras tecnologias de containers

• rkt (CoreOs), Snappy (Canonical), systemd-nspawn

• Kubernets, Mesos, Marathon, Flyn, Deis...

• Acompanhe a evolução da plataforma

• Powerstrip, Weave, Flannel, Swarm, Registrator.

top related