Três considerações para planejar a implantação do seu Docker Datacenter

dezembro 16, 2016 5:00 pm Publicado por Deixe um comentário

Parabéns! Você decidiu fazer uma alteração no seu ambiente de aplicativo com Docker Datacenter. Você está agora no caminho para uma maior agilidade, portabilidade e controle dentro de seu ambiente. Mas do que você precisa para começar? Neste artigo, vamos pontuar as coisas que você precisa considerar (estratégia, infraestrutura, migração) para garantir um POC suave e migração para a produção.

1 – Estratégia

Estratégia envolve fazer um pouco de trabalho up-front para trazer todos para a mesma página. Esta etapa é fundamental para alinhar expectativas e definir critérios claros de sucesso para sair do projeto. As principais áreas de foco existem para determinar seu objetivo, planejar como alcançá-lo e saber quem deve estar envolvido.

Defina o objetivo – Esta é uma etapa crítica, pois ajuda a definir expectativas claras, a definir um caso de uso e a descrever os critérios de sucesso para sair de um POC. Um objetivo comum é habilitar a produtividade do desenvolvedor implementando um ambiente de Integração Contínua com o Docker Datacenter.

Planeje como alcançá-lo – Com um caso de uso claro e resultado identificado, o próximo passo é olhar para o que é necessário para concluir este projeto. Para um pipeline CI, o Docker é capaz de padronizar o ambiente de desenvolvimento, fornecer o isolamento das aplicações e de suas dependências e eliminar quaisquer problemas do tipo “funciona na minha máquina” para facilitar a automação da CI. Ao delinear o plano, certifique-se de selecionar a aplicação piloto. O trabalho envolvido irá variar dependendo se é uma refatoração de aplicativos legados ou o desenvolvimento de novos aplicativos.

A integração entre o controle de origem e o CI permite que as compilações de imagem do Docker sejam automaticamente disparadas a partir de um fluxo de trabalho padrão do Git. Isso irá conduzir a construção automatizada de imagens Docker. Depois que as imagens do Docker são construídas, elas são enviadas para o registro seguro do Docker para armazená-las (Docker Trusted Registry/Registro Confiável do Docker) e os controles de acesso baseados em função permitem uma colaboração segura. As imagens podem, então, ser puxadas e implantadas em um cluster seguro como aplicações em execução através da camada de gerenciamento do Docker Datacenter (Universal Control Plane/Plano de Controle Universal).

Saiba quem deve estar envolvido – A solução envolverá várias equipes e é importante incluir as pessoas corretas o quanto antes para evitar eventuais barreiras posteriormente. Essas equipes podem incluir as seguintes equipes, dependendo do projeto inicial: desenvolvimento, middleware, segurança, arquitetos, rede, banco de dados e operações. Compreenda suas necessidades e acesse-as o quanto antes, e obtenha consenso através da colaboração.

PRO TIP – A maioria dos primeiros sucessos tendem a ser aplicações web com algum tipo de camada de dados que pode utilizar bancos de dados tradicionais ou ser contêinerizada com dados persistentes armazenados em volumes.

2 – Infraestrutura

Agora que você compreende os conceitos básicos de construir uma estratégia para sua implantação, é hora de pensar sobre infraestrutura. Para instalar o Docker Datacenter (DDC) em uma implantação altamente disponível (HA), a infraestrutura de base mínima é de seis nodes. Isso permitirá a instalação de três gerenciadores UCP e três réplicas DTR em nodes de trabalho, além dos nodes de trabalho onde os workloads serão implantados. Uma configuração de HA não é necessária para uma avaliação, mas recomendamos um mínimo de 3 réplicas e gerenciadores para implantações de produção para que o seu sistema possa lidar com falhas.

PRO TIP – A melhor prática é não implantar e executar qualquer workload de contêiner nos gerenciadores UCP e réplicas DTR. Esses nodes executam funções fundamentais dentro do DDC e são melhores se executarem apenas os serviços UCP ou DTR.

Os nodes são definidos como servidores em nuvem, virtuais ou físicos com o Docker Engine Comercialmente Suportado (CS) instalado como uma configuração básica.

Cada node deve consistir de um mínimo de:

  • 4 GB de RAM
  • Espaço de armazenamento de 16 GB
  • Para RHEL/CentOS com devicemapper: dispositivo de bloco separado OU espaço livre adicional no grupo de volume de raiz deve estar disponível para armazenamento no Docker.
  • Conectividade de rede sem restrições entre nodes
  • Acesso à Internet OPCIONAL para Docker Hub para facilitar os downloads iniciais do UCP/DTR e imagens de conteúdo base
  • Instalado com o sistema operacional suportado do Docker
  • Acessos de credenciais Sudo para cada node

Podem ser necessários outros nodes para a ferramenta CI relacionada. Para um POC construído em torno de DDC em uma implantação HA com CI/CD, 10 nodes são recomendados. Para um POC construído em torno de DDC em uma implantação não-HA com CI/CD, cinco nós são recomendados.

Abaixo estão os requisitos específicos para os componentes individuais da plataforma DDC:

Plano de controle universal

  • O Motor Docker Suportado Comercialmente (CS) deve ser usado em conjunto com o DDC.
  • O balanceador de carga TCP deve estar disponível para UCP em uma configuração HA.
  • Uma entrada DNS válida deve ser criada para o balanceador de carga VIP.
  • O certificado SSL de uma CA raiz confiável deve ser criado (um certificado autoassinado é criado para UCP e pode ser usado, mas é necessária configuração adicional).
  • A licença DDC para teste de 30 dias ou assinatura anual deve ser obtida ou adquirida para o POC.

Registro confiável do Docker

  • O Motor Docker Suportado Comercialmente (CS) deve ser usado em conjunto com o DDC.
  • O balanceador de carga TCP deve estar disponível para DTR em uma configuração HA.
  • Uma entrada DNS válida deve ser criada para o balanceador de carga VIP.
  • As opções de armazenamento de imagens incluem um sistema de arquivos em cluster para armazenamento HA ou blob (armazenamento compatível com AWS S3, Azure, S3 ou OpenStack Swift)
  • O certificado SSL de uma raiz confiável CA deve ser criado (um certificado autoassinado é criado para DTR e pode ser usado, mas é necessária configuração adicional).
  • LDAP/AD está disponível para autenticação; a autenticação incorporada gerenciada também pode ser usada, mas requer configuração adicional.
  • A licença DDC para teste de 30 dias ou assinatura anual deve ser obtida ou adquirida para o POC.

A fase de design do POC é o momento ideal para avaliar como o Docker Datacenter se integrará em sua infraestrutura de TI existente, desde CI/CD, rede/balanceamento de carga, volumes para dados persistentes, gerenciamento de configuração, monitoramento e sistemas de logging. Durante esta fase, compreenda como as ferramentas existentes se encaixam e descubra eventuais lacunas no seu tooling. Com a estratégia e a infraestrutura preparadas, comece a instalação e o teste do POC. Os documentos de instalação podem ser encontrados aqui.

3 – Passando do POC para a produção

Depois de ter construído o seu ambiente POC, como você saberá se está pronto para uso em produção? Aqui estão alguns métodos sugeridos para lidar com a migração.

  1. Execute a troca de aplicativos não-dockerizados para o Docker Datacenter em ambientes de pré-produção. Tenha ambientes Dev, Test e Prod, troque Dev e/ou Test e execute um conjunto de burn em ciclo para permitir o teste adequado do ambiente para procurar qualquer funcionalidade inesperada ou ausente. Quando os ambientes não produtivos estiverem estáveis, mude para o ambiente de produção.
  1. Comece a integrar o Docker Datacenter ao lado de suas implantações de aplicativos existentes. Esse método requer que o aplicativo possa ser executado com várias instâncias sendo rodadas ao mesmo tempo. Por exemplo, se seu aplicativo for confrontado por um balanceador de carga, adicione o aplicativo dockerizado ao pool de balanceadores de carga existente e comece a enviar tráfego para o aplicativo em execução no Docker Datacenter. Se surgirem problemas, remova o aplicativo dockerizado executado a partir do pool de balanceadores de carga até que os problemas possam ser resolvidos.
  1. Completamente desligado de um ambiente dockerizado, tudo de uma só vez. À medida que as aplicações adicionais começam a utilizar Docker Datacenter, continue a usar um padrão testado que funcione melhor para você fornecer um caminho padrão para a produção de seus aplicativos.

Esperamos que essas dicas, aprendidas com a experiência de primeira mão com nossos clientes, ajudem você a planejar sua implantação. Desde padronizar seu ambiente de aplicação e simultaneamente adicionar mais flexibilidade para suas equipes de aplicação, o Docker Datacenter fornece a você uma fundação para construir, enviar e executar aplicações contêinerizadas em qualquer lugar.

Aproveite o seu Docker Datacenter POC

***

Este artigo é do Docker Core Engineering. A tradução do artigo foi feita com autorização pela Redação iMasters, e você pode acompanhar o artigo em inglês no link: https://blog.docker.com/2016/11/three-considerations-docker-datacenter-deployment/#comment-373296.

Source: IMasters

Categorizados em:

Este artigo foi escrito pormajor

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *