Os contêineres são uma nova maneira de disponibilizar aplicativos, que tornam os profissionais e desenvolvedores de TI mais próximos para todas as empresas onde o conceito de DevOps está presente.

O que é um contêiner?

Container é uma sandbox (ambiente isolado) onde é possível executar serviços e processos em um ambiente protegido. Cada Container é executado em um Container Host , que pode ser uma máquina Windows ou Linux. Os principais benefícios dos contêineres, se comparados com as máquinas virtuais clássicas, são os seguintes: a implantação é muito mais rápida, o gerenciamento é mínimo, versões de correção não são necessárias e os riscos são baixos.

2019_02_11_docker-01

Figur1 1 – Esquema de um Container

As outras vantagens que merecem destaque são:

  • Os contêineres são ágeis e inicializam rapidamente, pois usam o sistema operacional do host e compartilham as bibliotecas relevantes
  • Os contêineres não desperdiçam ou bloqueiam recursos de host ao contrário de máquinas virtuais
  • Os contêineres têm bibliotecas e binários isolados específicos para o aplicativo que estão executando
  • Contêineres são manipulados por um mecanismo de Containerization

Por que contêineres?

Os contêineres não são para todos e os cenários não são muito detalhados:

  • Web sites
  • Serviços
  • Processos
  • Aplicações

Como servidor web, pode ser usado o mecanismo mais importante, como o IIS com .Net, Apache e Ngnix também; Como aplicativo, podemos encontrar o SQL Server para Windows ou Linux e o mecanismo de banco de dados mais importante. Redis Cache está disponível para salvar nossos dados antes de salvar; Portanto, a abordagem deve estar correta para evitar problemas.

Os contêineres tornam o desenvolvedor mais independente da TI e permite criar cenários avançados sem tocar no modelo de segurança ou na infraestrutura principal. Uma empresa pode desenvolver um novo aplicativo com um novo software sem precisar comprar novo hardware; tudo pode ser executado dentro da máquina Windows 10. Quando o aplicativo estiver pronto para o horário nobre, o código de compilação será executado dentro do Container Host para criar a composição.

Outro ponto importante para os desenvolvedores é a possibilidade de criar contêineres separados para alcançar os problemas de compatibilidade: por exemplo, se tivermos dois sites com diferentes requisitos de mecanismo Java, é possível construir contêineres diferentes.

A lógica por trás dos bastidores torna mais simples também a atualização do container: não importa se você precisa atualizar o sistema operacional ou o aplicativo, isso pode ser feito em poucos cliques sem o departamento de TI.

Docker

Quando falamos de contêineres, não podemos evitar falar sobre o Docker , talvez a plataforma de contêiner mais conhecida . O Docker é uma ferramenta projetada para beneficiar tanto os desenvolvedores quanto os administradores de sistema, tornando-o parte de muitas ferramentas de desenvolvimento DevOps (desenvolvedores + operações). Para os desenvolvedores, isso significa que eles podem se concentrar em escrever código sem se preocupar com o sistema no qual ele será executado. Ele também permite que eles obtenham uma vantagem inicial usando um dos milhares de programas já projetados para serem executados em um contêiner do Docker como parte de seu aplicativo. Para a equipe de operações, o Docker oferece flexibilidade e reduz potencialmente o número de sistemas necessários devido à sua pequena área de cobertura e menor sobrecarga.

Comunidade Docker Enterprise vs Docker

O Docker está disponível em duas edições: Enterprise Edition e Community Edition . O único ponto comum é a arquitetura do sistema operacional: 64 bits .

Docker Community Edition

O CE é perfeito para desenvolvedores e pequenas equipes que querem começar a usar o Docker e experimentar aplicativos baseados em contêineres. Está disponível para estes sistemas operacionais:

  • Windows 10
  • MAC
  • Fedora
  • Debian
  • Ubuntu
  • CentOS

A plataforma também está disponível na nuvem, dentro do Microsoft Azure e do Amazon Web Services . Os recursos presentes são:

  • A versão mais recente do mecanismo de contêineres Docker otimizada para a infraestrutura disponível
  • Acesso a recursos de ponta com cadência de liberação frequente
  • Público ilimitado e um repo privado gratuito como serviço
  • Construções automatizadas como um serviço
  • Verificação de segurança de imagem como um serviço

Dois são os canais de atualização:

  • Edge : oferece novos recursos a cada mês
  • Estável : oferece atualizações confiáveis ​​a cada trimestre

O suporte é fornecido através do Docker Community Forum e as correções de erros são fornecidas apenas para a versão mais recente.

Docker Enterprise Edition

O EE é projetado para equipes de desenvolvimento corporativo e de TI que criam, enviam e executam aplicativos essenciais aos negócios em produção em escala. Está disponível para estes sistemas operacionais:

  • Windows Server 2016 e Servidor 2019
  • Oracle Linux
  • Red Hat Enterprise Linux
  • Ubuntu
  • CentOS
  • SUSE Linux Enterprise Server

A plataforma também está disponível na nuvem, dentro do Microsoft Azure e do Amazon Web Services . Os recursos presentes são:

  • A versão mais recente do mecanismo de contêineres Docker na infraestrutura certificada (sistema operacional corporativo e provedores de nuvem)
  • Contêineres certificados de fornecedores terceirizados de ISVs (Independent Software Vendors – Integradores de Software Independente)
  • Plugins certificados de fornecedores de redes e armazenamento
  • Docker Datacenter para gerenciamento e segurança integrados de contêineres
  • Interface de usuário da Web intuitiva e fácil de usar
  • Multilocação segura com RBAC (Role Based Access Control) granular, integração RBAC e LDAP/AD baseada em nó
  • Segurança de ponta a ponta com gerenciamento de segredos, assinatura de imagens e digitalização de imagens
  • Gerenciamento de imagens com registro privado, armazenamento e armazenamento em cache
  • Automação baseada em políticas com promoções de imagem

Uma nova versão estável é lançada a cada trimestre e correções de erros são fornecidas com um plano de manutenção de um ano

O EE está disponível em três níveis:

  • Básico : plataforma Docker para infraestrutura certificada, com suporte da Docker Inc. e contêineres e plugins certificados da Docker Store
  • Padrão : Adiciona gerenciamento avançado de imagem e contêiner, integração LDAP/ADuser e controle de acesso baseado em função (Docker Datacenter)
  • Avançado : Adiciona a varredura de segurança do Docker e o monitoramento contínuo de vulnerabilidades

O suporte está disponível em duas opções:

  • Negócio Diário: de segunda a sexta das 9h às 18h, com resposta em 2 horas úteis
  • Negócio Crítico : 24 x 7 x 365, com resposta em 2 horas

Alterações de preço pelo sistema operacional Container Host (Linux ou Windows) e segmento.

Ciclo da vida

Este é um exemplo das diferenças entre o suporte ao ciclo de vida CE e EE. Como podemos ver, o Enterprise Edition permite executar uma versão que pode ser um ano mais antiga que a mais recente. Isso significa que você pode evitar a “pressão de atualização” e organizar melhor seus planos.

2019_02_11_docker-02

Windows vs Linux

O Docker tem o mesmo mecanismo no Linux e no Windows, mas a ideia de usar o Windows Server em produção pode ser ajudada por esses pontos:

  • Com o Datacenter SKU, é possível executar infinitos containers Windows
  • A partir do Windows Server 2019, é possível executar também contêineres do Linux
  • Suporte Básico Nativo Incluído

No Windows Server, existe a possibilidade de tornar a segurança de cada contêiner mais forte. Esse modo é chamado de contêiner Hyper-V.

Esse modo isola os processos do SO entre os contêineres e o host do contêiner, graças à Nested-Virtualization. A inicialização é mais lenta se comparada ao Windows Server Container, mas a solução é perfeita para empresas de médio porte, em que a segurança é essencial. O contêiner do Hyper-V precisa dos seguintes requisitos:

  • A função do Hyper-V instalada
  • Pelo menos 4 GB de RAM
  • Um processador com Intel VT-x (atualmente, este recurso está disponível apenas para processadores Intel)
  • A VM do host do contêiner também precisará de pelo menos dois processadores virtuais

Execute o primeiro contêiner

Após a implantação da função, no Linux ou no Windows, para criar seu primeiro contêiner, use esta sintaxe:

docker run -p 800: 80 microsoft / iis 

O comando acima obtém uma imagem principal, com o IIS já configurado, e disponibilizar o container com o ponto 800. O motivo em não usar a porta 80 é porque existir apenas uma porta 80 para cada Container Host, então o NAT é fundamental quando planejamos usar contêineres.

Abra um navegador, digite o URL http: // containerip:800 e verifique o resultado.

2019_02_11_docker-04

No Linux, a sintaxe é a mesma. A única diferença será a imagem mostrada no navegador.

docker run -p 81:81 httpd

2019_02_11_docker-05

Comandos

Estes são alguns comandos úteis para gerenciar sua máquina Docker:

  • Iniciar Container – docker start idcontainer
  • Parar Contêiner – docker stop idcontainer
  • Abrir uma sessão – docker exec -it idcontainer bash
  • Listar imagens – imagens docker
  • Listar Contêineres – docker ps -a
  • Excluir imagem – docker rmi idimmagine
  • Excluir contêiner – docker rm idcontainer
  • Copiar itens do Host para o Contêiner – idcontainer de origem do docker cp: pathdestination

Conclusão

O que o Docker pode fazer por você? Ele pode obter mais aplicativos em execução no mesmo hardware, de maneira mais eficiente se comparado a outras tecnologias; torna mais fácil para os desenvolvedores criar rapidamente aplicativos contidos prontos para execução; e torna o gerenciamento e a implantação de aplicativos muito mais fácil. Junte tudo isso e veja por que o Docker executou o ciclo de hype o mais rápido já visto numa tecnologia corporativa.

Você pode encontrar informações mais detalhadas nesta página oficial:  https://www.docker.com/resources/what-container

(Inglês)



Containers do Docker: uma nova maneira de disponibilizar aplicativos
Iperius Backup Brasil
*****************************************

PLEASE NOTE: if you need technical support or have any sales or technical question, don't use comments. Instead open a TICKET here: https://support.iperius.net

*****************************************

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*****************************************

PLEASE NOTE: if you need technical support or have any sales or technical question, don't use comments. Instead open a TICKET here: https://support.iperius.net

*****************************************