Orquestrando Docker Containers



Documentos relacionados
Docker do básico à orquestração de containers. Meetup de Laravel em São Paulo #3

Software Público Brasileiro: Manual de Operação (dev)

V ENSOL. Construindo Firewalls Redundantes em Ambientes GNU/Linux Segurança e Alta Disponibilidade. Jansen Sena. Julho, João Pessoa, PB.

Passos Preliminares: Acessando a máquina virtual via ssh.

35% GARTNER. Despesas com tecnologia ocorrem fora da T.I. Fazem uso de tecnologias não aprovadas pela T.I.

Implementação de Web Services em Projetos de LabVIEW

AULA 6: SERVIDOR DNS EM WINDOWS SERVER

Criando pipelines de entrega contínua multilinguagem com Docker e Jenkins Camilo Ribeiro Klarna AB

VMware vcenter Converter TM

Avaliação de dependabilidade em infraestruturas Eucalyptus geograficamente distribuídas

INTERNET HOST CONNECTOR

Kaspersky Security for Virtualization. Overview

Aula 4: Montagem e Disponibilização Frameworks Genéricos

Test Driven Infrastructure na Globo.com. globo. .com. Fernando Carolo e Rogério Schneider QCon São Paulo 2014

Como contribuir com projetos de software livre

ARQUITETANDO E EVOLUINDO. um erp para a nuvem

Hands On para (web)developers: Docker vs Vagrant

VMware workstation e Windows 7. Instalação de máquina virtual e sistema operacional

Sistema de Gestão Comercial Plataforma GSAN. Documento de Procedimento de Instalação

Origin manual. 1.1 Cadastrando usuário : Get manager License ID. Quem deve se cadastrar: Como se cadastrar. origin manual. 1 de 14

TUTORIAL VMWARE WORKSTATION 8. Aprenda a instalar e configurar corretamente uma máquina virtual utilizando VMware Workstation com este tutorial

Maestro. Arthur Kazuo Tojo Costa Universidade Federal de São Carlos Campus Sorocaba Bacharelado em Ciência da Computação

SAIBA MAIS SOBRE O LINUX E DESCUBRA QUAL DISTRIBUIÇÃO É MELHOR PARA VOCÊ! CURSO

Passos Preliminares: Acessando a máquina virtual via ssh.

Manual de Instalação

Aula 03-04: Modelos de Sistemas Distribuídos

ROTEIRO: IMPLANTANDO O SISTEMA OPERACIONAL WINDOWS 7

Salvando modificações localmente (commit) Enviando modificações para o servidor (push) Sinalizando versão estável (tag)

Instalação do VOL Backup para Sistemas Unix-Like

EUCALYPTUS: UMA PLATAFORMA CLOUD COMPUTING PARA

Partição Partição primária: Partição estendida: Discos básicos e dinâmicos

Integrações e o ecossistema Java. Fabric8 ao Resgate!

Garantindo a. Máquinas Virtuais do. alta disponibilidade nas. Microsoft Azure MDC305

João Víctor Rocon Maia Engenharia de Computação - UFES

GUIA DE CONFIGURAÇÃO SERVIDOR DHCP

Linux pra mim, Linux pra você!

Senado Federal Questões 2012

Como contribuir com projetos de software livre

Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1

Tutorial 1.0. Instalação

CHOReOS: Automatizando a implantação de web services na nuvem

Marlos de Moraes Tavares. Tutorial Rsync

Documentação Symom. Agente de Monitoração na Plataforma Windows

Telefonia IP MOT. Prática 1

Minicurso Computação em Nuvem Prática: Openstack

Prof. Ms. José Eduardo Santarem Segundo Demonstrar o impacto que o tema virtualização tem representado no mercado

FISL 13. Fórum Internacional de Software Livre

DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% de uptime

ESET Remote Administrator ESET EndPoint Solutions ESET Remote Adminstrator Workgroup Script de Logon

Projeto Amadeus. Guia de Instalação Linux

Consoles do Adobe Experience Manager

Sistema Operacional Unidade 12 Comandos de Rede e Acesso Remoto

Gerenciamento de Pacotes

Google App Engine. André Gustavo Duarte de Almeida. Computação Ubíqua e Nuvens. Natal, 24 de maio de 2012 andregustavoo@gmail.com

INSTALANDO E CONFIGURANDO O WINDOWS 10

Como é o Funcionamento do LTSP

Gerenciamento de Redes de Computadores. Pfsense Introdução e Instalação

Gerenciando TI - do físico ao virtual para o cloud. Guilherme Azevedo EMC Ionix. Copyright 2009 EMC Corporation. All rights reserved.

Introdução ao Sistema. Características

Alertamos que essa é uma configuração avançada e exige conhecimentos técnicos em informática para ser executada.

Manual de Instalação. Instalação via apt-get

Manual de introdução de Bomgar B300v

Como utilizar PuTTY para conexão SSH a um servidor linux

CURSO DE VIRTUALIZAÇÃO

Uc-Redes Técnico em Informática André Luiz Silva de Moraes

SOFTWARE LIVRE. Distribuições Live CD. Kernel. Distribuição Linux

Tutorial Slony passo a passo. Professor MSc. Willamys Rangel Nunes de Sousa

QCON RIO 2015 Desenvolvimento para Windos 10. Alexandre

Controle de Versão com GIT

Instruções para Instalação dos Utilitários Intel

TUTORIAL PARA A INSTALAÇÃO EM AMBIENTE DE REDE WINDOWS DO SERVIDOR FIREBIRD

Virtualização. Prof. Emiliano Monteiro

Wellington Figueira da Silva. Novatec

Software Público Brasileiro: Manual de Operação (prod)

Benefícios e processos relacionados à migração e servidores dedicados para cloud servers. Juliano Simões. Diretor de Tecnologia

COORDENAÇÃO DE TECNOLOGIA (COTEC) MAIO/2010

ENDEREÇOS DE REDE PRIVADOS até até até Kernel

ADMINISTRAÇÃO DE SISTEMA OPERACIONAL DE REDE (AULA 9)

Resolução de Problemas de Rede. Disciplina: Suporte Remoto Prof. Etelvira Leite

Manual de Instalação. Instalação via apt-get. SIGA-ADM versão 12.06

Construção e uso de ferramenta de suporte remoto baseada em software livre

INSTALAÇÃO BASE TESTE AUTOSERVIÇO. 1-Instalação usando emulador de impressora fiscal.

ROTEIRO: IMPLANTANDO O SISTEMA OPERACIONAL LINUX. Introdução: FERRAMENTAS. Abaixo segue relação de aplicativos utilizados para realizar este roteiro:

ZoneMinder. Instalação/Configuração com Câmeras IP e DVRs HDL

Rede de Computadores

Passos Preliminares: Acessando a máquina virtual via ssh.

Aula 2 Servidor DHCP. 2.1 dhcp

Manual Instalação Web G-MUS Versão 4

Sumário Instalando o Windows 2000 Server... 19

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH!

Solutions for Information Technologies. BIS-Navegador. Manual de Instalação para Microsoft SQL Server

Instalação e configuração de Sistema de Informação. Sobre o Help Center Live

Guia de Conectividade Worldspan Go Res! A V A N Ç A D O

Curso de Linux Básico

Habilitar conectividade para o armazenamento 3PAR:

Classificação::Modelo de implantação

RECUPERANDO DADOS COM REDO BACKUP E RECOVERY

Introdução. Man in the middle. Faculdade de Tecnologias Senac Goiás. Professora: Marissol Relatório MITM

Transcrição:

Orquestrando Docker Containers Machine, Swarm e Compose Roberto G. Hashioka - @rhashioka 2015-06-10 São Paulo/SP!

Informações Pessoais Roberto Gandolfo Hashioka @rogaha (Github) e @rhashioka (Twitter)! No Docker em Maio 2013 (Dotcloud)! Finanças -> Software Engineer! Projeto Atual: Docker Hub/Metrics!

Objetivo da Apresentação Explicar o que é o Docker e como usá-lo Explicar o paradigma entre dev e ops! Explicar como rodar aplicações distribuidas em qualquer ambiente! Compartilhar experiências (Silicon Valley)!

Informações dos Projetos Projetos no Github Docker (github.com/docker/docker)! Docker Machine (github.com/docker/machine)! Docker Swarm (github.com/docker/swarm)! Docker Compose (github.com/docker/compose)! Aplicações distribuidas com Docker são modularizadas, portáveis e dinâmicas

O que é o Docker Engine? Ferramenta que facilita a construção, distribuição e execução de qualquer a plicação em qualquer ambiente (VM, nuvem, servidor fisico, laptop) Sua aplicação roda de forma isolada com seus próprios processos, IP e file system, independente do host. Ou seja, dentro de um container Construção: empacota sua aplicação numa imagem (docker build)! Distribuição: Move a imagem entre diferentes maquinas (docker push/pull)! Execução: Execute sua aplicação (docker run)!

Contrução: docker build Dockerfile Receita para criar uma imagem (container) Começa de uma base: FROM ubuntu:14.04, fedora:20, debian:jessie! Rode comandos: RUN apt-get install y firefox ssh! Copie seus dados: ADD /app/code /code/! Crie scripts de inicialização ou execute arquivos binários: CMD start_firefox.sh, /usr/sbin/sshd D!

Exemplo de Dockerfile -----------------------------------------------------------------------------------------------------------! FROM ubuntu:14.04! MAINTAINER Roberto Hashioka (roberto@docker.com)! RUN apt-get update && apt-get install -y nginx! RUN echo Hello Developers from Sao Paulo' > /usr/share/nginx/html/index.html! EXPOSE 80! ------------------------------------------------------------------------------------------------------------! $ docker build t rogaha/web.! $ docker run d p 80:80 -name container_web_demo_sp rogaha/web!

Distribuição: docker pull / push Transfere sua aplicação dockerzizada de um servidor para outro Registry Hub: Repositório central de imagens criadas pela comunidade! O objetivo principal do Registry Hub é facilitar a criação de aplicações! Milhares de images foram criadas e são mantidas pela comunidade. Por exemplo: nginx, ubuntu, postgres, redis, node, centos, wordpress, java (htt ps://registry.hub.docker.com/repos/library/)!

Execução: docker run Roda as aplicações de forma consistente e confiável Elimina os problemas de diferenças entre versionamento das dependências! Os containers rodam de forma isolada. Você pode rodar aplicações em De bian, Ubuntu, CentOS na mesmo servidor/laptop! Se funciona no seu laptop, irá funcionar no servidor! RESOLVE grande parte dos problemas entre DEV e OPS!

Estatíticas da comunidade Docker > 950 Contribuidores no Github > 80.000 Projetos dockerized no Github > 140.000 Repositórios no Docker Hub! > 48.000 membros no Meetup.com, > 150 cidades, > 50 países! > 400.000.000 images do docker baixadas (docker pull)!

Docker Machine: Zero to Docker em minutos Antes Depois Várias etapas de setup! Um comando de setup! Conecta a apenas um host! Instalação e configuração para aquele host específico! Provisiona o Docker Engine em qualquer host! Integrações para criar hosts com o docker nas nuvens!

Docker Machine

Docker Machine $ machine create

! Docker Swarm: Otimize recursos, Tolerância a falhas e alta disponibilidade Antes Depois Sem solução nativa! Cada Docker Engine é independente entre si! Cluster de Docker Engines como se fosse um só! Interface única de dev.! Swarm dimensiona seu app! Agendamento nativa das app! Integração com outros agendadores!

Docker Swarm $ docker run swarm

Docker Swarm $ docker run

Docker Swarm $ docker run Batteries included but swappable

! Docker Compose: Simplifica Aplicações multicontainer Antes Depois Simples aplicações individuais em containers! Único arquivo.yml que define sua aplicação inteira! Sem solução nativa para aplicações multi-containers! Rode sua aplicação completa com um único comando! Ineficiente: Precisa repetir commandos para cada container! Atualize facilmente sua aplicação com o arquivo.yml!!

Docker Compose containers: web: build:. command: python app.py ports: - "5000:5000" volumes: -.:/code links: - redis environment: - PYTHONUNBUFFERED=1 redis: image: redis:latest command: redis-server --appendonly yes

Docker Compose $ docker-compose

Docker Compose $ docker-compose

A Docker Distributed Application Happy Devs $ docker Web x8 Database x2 Cache x2 Ops Flexibility

Ecosistema de Gestão de Containers Service Discovery Clustering and Scheduling Infrastructure

Docker Hub Promo code: docker-sp-meetup https://registry.hub.docker.com/plans/micro @rhashioka

Obrigado! Perguntas? @rhashioka