Por Thiago Marques
O pai ta on!!
Até agora entendemos o que é um container, como o Docker funciona sob esse modelo e como utilizar o Docker Compose para auxiliar a criação de várias máquinas. Mas conforme vamos nos aprofundando surgem novas dúvidas, como:
• Beleza, mas como tudo isso funciona?
• Como o Docker controla e gerencia os containers?
• Existe licenciamento para utilizar?
Nesse post iremos detalhar um pouco mais sobre o conceito da plataforma para entender tudo isso.

A Arquitetura Docker

Fonte

Docker Client / Remote API
Quando estamos logados em um terminal e executamos comandos como docker ps, docker images e etc, utilizamos o command line interface (CLI) do docker, de forma que, nessas condições, podemos dizer que nosso terminal é um docker client.
Assim conseguimos interagir com o daemon que está no host para nos trazer informações dos containers, das imagens e etc. Além do cliente, é possível interagir também via remote API. Quanto utilizamos o docker em uma máquina diferente do Jenkins, por exemplo, precisamos efetuar a configuração de um remote API para o deploy de um build funcionar.
Note que para instalação do cliente/server em uma instância Amazon Linux 2, é necessário instalar via amazon-linux-extras. A AWS já possui uma excelente documentação de como fazer isso basta acessar o link: How-to-install-docker-Amazon-Linux

Docker daemon / runtimes

Depois da versão 1.11 do Docker (que até então era um grande monolítico), ele passou a segmentar em daemons as operações, sendo:
• dockerd ficou responsável por receber e interpretar os comandos e APIs do cliente;
• containerd ficou com o trabalho mais ‘pesado’ de controlar as imagens e containers, e executar os processos do runC;
• runC que é quem de fato lida com o gerenciamento dos containers.
Note que com a segmentação e a disponibilização dos códigos, podem existir outros runtimes para essas funções, como é o caso do CRI-O, que é uma alternativa ao containerd, ou o CRUN e o RAILCAR que são alternativas ao runC.
NaAWS os runtimes utilizados pelo Fargate são o containerd e o runC.

Fonte: Docker

Docker Registry

Finalizando a parte de arquitetura temos os Registries, que são os repositórios de onde é possível realizar o download/upload dos docker images.
Veja na imagem inicial desse post que quando fazemos o primeiro pull (docker pull ) o processo seguido é:

Nesse caso (apenas o pull) o containerd se registra no repositório, procura a imagem, e faz seu download para o repositório local. O runC não entra no processo ainda, pois não estamos de fato criando um container, apenas baixando a imagem.
A vantagem de ter um repositório central, além de te poupar espaço, é que ele pode garantir outras características como:
• Ter um repositório privado;
• Possibilidade de utilizar SSO e colaboração;
• Acesso a imagens oficiais;
• Scan de vulnerabilidades para as imagens;
• Integração com CI/CDs.

Atualmente o Docker Hub, é o repositório mais utilizado, no qual você pode realizar o push (enviar) ou o pull (receber) as imagens, e possui a versão paga e gratuita. Obviamente na versão gratuita você tem alguns limites, como o bloqueio de 100 pulls por 6horas (veja os limites aqui)
A AWS possui a sua própria solução de registry chamada ECR, o que se mostra ser eficiente para integração de serviços como o ECS e o Fargate. Contudo soluções como o Harbor, para IaaS também pode ser uma saída interessante caso você utiliza pull de forma constante.
That’s all folks! Be Happy!!!

Veja os outros artigos sobre Docker!
Entendendo Docker
Docker Compose

OUTRAS PUBLICAÇÕES

Seja um Provedor de Internet Automatizado: Ativação, Bloqueio e Cancelamento

Com o avanço da tecnologia no dia a dia das pessoas, gerenciar os negócios também acaba sendo uma tarefa a mais. Assim, quanto mais dinâmico você deixar seus negócios, mais poderá se concentrar na estratégia do que na operação. Com o avanço da tecnologia no dia a dia das pessoas, gerenciar os negócios também acaba sendo uma tarefa a mais. Assim, quanto mais dinâmico você deixar seus negócios, mais poderá se concentrar na estratégia do que na operação. Por isso, vamos automatizar seu provedor com apenas alguns passos. Você ativa seus clientes, gerencia e cancela seus contratos facilmente e torna seus processos mais eficientes. Automatizando seu provedor Para iniciarmos esse processo de automação, é necessário entender que suas aplicações serão integradas a outras plataformas, de forma que possam operar em conjunto, facilitando e dando-lhes maior poder de gerência e administração sobre suas atividades. Isso porque cada cliente contrata um tipo de serviço diferente e tem uma necessidade diferente com relação à velocidade de banda, forma de endereçamento IP, funcionamento da estrutura interna, entre outras funcionalidades possíveis. Gerenciando os clientes e seus planos Com a integração das plataformas e tomando como exemplo de utilização um sistema baseado no RouterOS e uma aplicação de gerenciamento MK-Solutions, você poderá controlar toda ativação do seu cliente, escolhendo o equipamento em que ele fará o login, qual tipo de endereço será atribuído a ele, sua velocidade de contrato (sendo possível alteração instantânea) e inclusive a configuração dos equipamentos que ficarão alocados no cliente final. Dessa forma, qualquer mudança que se necessite fazer, você gerencia seus clientes pela plataforma, com alguns cliques, de forma rápida e fácil. Benefícios de um sistema automatizado Dentre os principais benefícios de se automatizar está na capacidade de você permitir ou não o funcionamento das atividades, estando à distância. Através da plataforma, você pode cancelar um cliente ou bloqueá-lo por falta de pagamento, modificar os contratos e integrar sistemas de autenticação por cabo ou Wifi (hotspot). Fernando Candido Coordenador fernando.candido@darede.com.br Bacharel em Redes de Computador, técnico de Redes de Computador pelo SENAI Suíco-Brasileiro, onde ministrou aulas por 7 anos. Possui experiência em projetos de Internet Service Provider e atualmente coordena projetos para ISPs na Darede.

Novidades da AWS – 23/12 a 22/01

Todos os dias a AWS lança uma série novidades e atualizações em seus produtos que visam melhorar a vida de seus usuários. Reunimos algumas delas que fazem mais sentido para nosso mercado e que certamente aplicaremos em nosso dia a dia. Confira as novidades das últimas semanas de dezembro e primeiras semanas de janeiro. Segurança e Governança Amazon AppFlow – agora armazena credenciais na conta do AWS Secrets Manager O Amazon AppFlow agora pode armazenar credenciais criptografadas para se conectar a fontes de fluxo e aplicativos de destino, como, por exemplo, o tokens OAuth, chaves de aplicativo, APIs, além de senhas nas próprias contas do AWS Secrets Manager dos clientes. AWS Pricing Calculator – suporte a medição prévia de custos de workloads do Windows Server e do SQL Server Agora é possível utilizar o AWS Pricing Calculator para gerar estimativas de gastos das workloads do Windows Server e do SQL Server considerando o licenciamento da Microsoft. AWS Certificate Manager (ACM) – compatível com FedRAMP O AWS Certificate Manager (ACM), agora é compatível com FedRAMP, programa americano que disponibiliza uma abordagem padrão para avaliação de segurança, autorização e monitoramento contínuo de produtos e serviços na nuvem. AWS Artfact – facilita o compartilhamento e download de documentos de compliance O AWS Artifact anunciou que agora é possível baixar e compartilhar documento de complicance da AWS sem a necessidade de entrar em contato com a plataforma para realizar a solicitação. Amazon GuardDuty – adição de novos recursos de detecção O Amazon GuardDuty adicionou três novos recursos de detecção de ameaças que ajudam a notificar o usuário quando agentes maliciosos tiverem algum tipo acesso em seus dados do Amazon Simple Storage Service (S3). AWS Compute Optimizer – oferece recomendações para funções Lambda O AWS Compute Optimizer agora oferece recomendações de tamanho de memória para funções do Lambda. Podendo verificar se o tamanho da memória previsto em sua função Lambda está coerente com suas necessidades. Certificados AWS – Novo exame beta para AWS Certified SysOps Administrator – Associate A AWS anunciou que estão abertas as inscrições do novo exame beta do AWS Certified SysOps Administrator – Associate, que acontecerá entre os dias 16 de fevereiro a 26 de março. O exame beta apresenta uma combinação de três possíveis formatos de perguntas, incluindo múltipla escolha, resposta múltipla e laboratórios de exames. Integração e DevOps AWS Outposts – disponibilidade a conectividade privada em cloud Agora é possível conectar de maneira privada sua infraestrutura do AWS Outposts on-premise, em um ambiente em cloud através do Direct Connect. AWS Snow – console da Família AWS Snow simplificado O console da Família AWS Snow foi aprimorado de forma que facilite e simplifique a criação bem como o gerenciamento de transferência de dados e computação do Snow, assim melhorando a experiência do usuário. AWS Snow Family – suporte a Linux 2 O AWS Snow Family agora oferece suporte ao sistema operacional Amazon Linux 2, de forma que seja possível executar workloads no sistema operacional. AWS OpsHub – Disponível para Linux O AWS OpsHub, interface de usuário gráfica que gerencia seus dispositivos AWS Snowcone e AWS Snowball, anunciou suporte a Linux. AWS Snowcone – suporte a fluxos multicast e roteamento O AWS Snowcone agora oferece suporte a diversos recursos como fluxos multicast, roteamento, balanceamento de carga, entre outros casos de uso de rede. Assim permitindo que as instâncias em um dispositivo Snow tenham acesso direto a uma rede externa. AWS Distributed Load Testing – Apresentação v1.2 A AWS anunciou a versão v1.2 do Distributed Load Testing, serviço que auxilia a simular facilmente milhares de usuários conectando a seu aplicativo para entender melhor o desempenho dos seus aplicativos sob carga. Porting Assistant for .NET – suporte a tradução automática de código O Porting Assistant for .NET agora oferece suporte à tradução automática de código, trazendo a possibilidade de além de identificar incompatibilidades no código-fonte, o serviço agora pode fazer alterações de forma automática no código-fonte para lidar com incompatibilidades comumente encontradas no .NET Core. Porting Assistant for .NET – Interface gráfica agora é open source A AWS anunciou que a interface gráfica do usuário do Porting Assistant for .NET agora está disponível em código aberto. AWS App2Container – suporte a execução remota de fluxos de trabalho O AWS App2Container agora oferece suporte à execução remota do fluxo de trabalho de agrupamento em contêiner. Amazon ECS – ECS deployment Circuit Breaker disponível O Amazon ECS anunciou a disponibilidade geral do ECS deployment Circuit Breaker para tipos de execução de EC2 e Fargate. Amazon SQS – Anúncio do tiered pricing A partir desse ano o Amazon Simple Queue Service fornece definição de preço para solicitações mensais de API, assim permitindo que a definição de preço possa fornecer descontos com base no uso mensal do Amazon SQS. Amazon MSK – Simplificação do teste de resiliência do cliente Apache Kafka Agora é possível reinicializar agentes individuais em seu Amazon Managed Streaming for Apache Kafka(Amazon MSK) usando a API de reinicialização de agente. Compute e Network Amazon EC2 – Disponibilidade das instâncias M5zn A AWS anunciou a disponibilidade das instâncias M5zn na região de São Paulo. Essas novas instâncias possuem processadores de alta frequência, alta velocidade e baixa latência. Amazon EC2 – instâncias M6g, C6g e R6g do Amazon EC2 disponíveis As instâncias M6g, C6g, e R6g do Amazon EC2 já estão disponíveis nas regiões de São Paulo e AWS GovCloud (EUA). Amazon EC2 – Certificação das Instâncias R5B em SAP A AWS anunciou que as instâncias R5B do Amazon EC2 agora são certificadas para workloads SAP. Amazon EFS – Métricas de monitoramento com CloudWatch Agora é possível monitorar o tamanho de armazenamento dos recursos do Amazon Elastic File System através do Amazon CloudWatch. Amazon Lightsail – suporte a IPv6 O Amazon Lightsail agora suporta IPv6, em recursos como instâncias, contêineres, balanceadores de carga e CDN. AWS Wavelength – Disponível na Coreia do Sul A AWS anunciou mais uma Wavelength Zone. Desta vez será na Coreia do Sul em parceria com a SK Telecom, o que permite

O que é AWS Organizations?

O AWS Organizations é uma das grandes ferramentas de gerenciamento de contas na AWS. Veja um artigo de nossos #cloudspecialists sobre o serviço!

Novidades da Semana – 08 a 12 de fevereiro

Todos os dias a AWS lança uma série novidades e atualizações em seus produtos que visam melhorar a vida de seus usuários. Reunimos algumas delas que fazem mais sentido para nosso mercado e que certamente aplicaremos em nosso dia a dia. Confira as novidades da última semana. Security & Analytics AWS IAM – Suporte a tags em novos recursos O AWS IAM agora permite o uso de tags para gerenciar e garantir o acesso seguro em diversos recursos como Customer Managed Policies, Instance Profiles, OpenID Connect Providers, SAML Providers, Server Certificates, e Virtual MFAs. AWS Glue – Suporte ao FindMetrics O AWS Glue incluiu em sua ferramenta o recurso FindMaches ML que identifica, por meio de machine learning a quantidade de dados duplicados independente de sua chave primária. AWS Glue – DataBrew permite configurar o tamanho do dataset a ser analisado O AWS Glue DataBrew agora permite a configuração do tamanho do dataset que será analisado. AWS Cloud HSM – Adiciona novas AZs O AWS CloudHSM adicionou em sua ferramenta novas zonas de disponibilidade (AZs) das seguintes regiões: Leste dos EUA (Virgínia do Norte), Ásia-Pacífico (Cingapura), Ásia-Pacífico (Tóquio) e AWS GovCloud (Oeste dos EUA). Networking & Developer Tools AWS Cloud9 – Integração visual com o Github O AWS Cloud9 anunciou a integração visual dos controles do GitHub em sua console, de forma que seja possível desenvolver projetos na ferramenta. Amazon VPC- Traffic Mirroring suporta instâncias do tipo non-Nitro O Amazon VPC Traffic Mirroring agora permite habilitar a ferramenta em suas instâncias do tipo non-Nitro como as instâncias: C4, D2, G3, G3s, H1, I3, M4, P2, P3, R4, X1 e X1e. Amazon VPC – Anúncio do Endopoints para AWS CloudHSM O Amazon VPC Endpoints agora permite o acesso das APIs do serviço AWS CloudHSM sem requerer uma internet gateway ou uma instância Network Address Translation (NAT). AWS Cloud Map – Suporte a tag de recursos no Console O AWS Cloud Map agora permite utilizar o recurso da tag em seus namespaces e serviços da ferramenta por meio do Console AWS. Aplication Load Balancer (ALB) – Suporte à cookies de aplicativos O Application Load Balancer (ALB) agora oferece suporte à perdurabilidade de cookies baseados em aplicativos. Database AWS Data Exchange – Permite subscribers para exportar revisões O AWS Data Exchange agora permite a inclusão de subscribers para exportar arquivos do Amazon S3 em uma única chamada. Amazon Keyspaces – Suporte ao point-in-time recovery utilizando o AWS CloudFormation O Amazon Keyspaces (for Apache Cassandra) agora permite criar tabelas automatizadas através do recurso point-in-time recovery (PITR) através do AWS Cloudformation. Amazon Aurora – Global Database suporta a mudança de região do cluster primário O Amazon Aurora Global Database agora permite mudar a região que hospeda seu cluster primário de forma que a topologia física de seu banco de dados seja preservada e evitando desnecessárias mudanças em suas aplicações. Amazon DynamoDB – Suporte ao PartiQL O DynamoDB local agora oferece suporte ao PartiQL para consultar, inserir, atualizar e excluir dados de tabelas do Amazon DynamoDB. Outros Novo curso – Managing Amazon S3 A AWS lançou um novo curso “Managing Amazon S3”. Voltado para desenvolvedores, Cloud Architects, Storage Architects, entre outros. O curso tem 2h30 de duração. Quer saber as novidades da AWS das últimas semanas? Leia nosso blog! E acompanhe toda sexta-feira em nosso canal do Youtube nossa live sobre as Novidades da Semana.

Nós usamos cookies para garantir e oferecer a melhor experiência de navegação em nosso site! Mais informações