O que é um registro de containers?

Copiar URL

Um registro de containers é um repositório (ou conjunto de repositórios) usado para armazenar e acessar imagens de container. Os registros de containers podem oferecer suporte ao desenvolvimento de aplicações baseadas em container, geralmente como parte dos processos DevOps. Os registros de containers podem se conectar diretamente a plataformas de orquestração de containers, como o Docker e o Kubernetes

Os registros de containers economizam um tempo valioso para os desenvolvedores na criação e disponibilização de aplicações nativas em nuvem, agindo como intermediários no compartilhamento de imagens de container entre sistemas.

Desenvolva e implante apps em containers com a Red Hat

Uma imagem de container inclui os arquivos e componentes que compõem uma aplicação. Ao contrário das máquinas virtuais (VMs), os containers são pacotes leves de software executados no sistema operacional Linux®. As imagens de container podem ser multiplicadas para escalar conforme as mudanças nas cargas de trabalho. Elas são comumente associados ao desenvolvimento ágil, à metodologia DevOps e à integração e entrega contínuas (CI/CD). 

As imagens de container incluem bibliotecas e ferramentas do sistema e outras configurações da plataforma de que suas aplicações precisam serem executadas. Isso oferece aos desenvolvedores os benefícios da portabilidade e agilidade para expandir ou criar novas aplicações com rapidez.

Uma ferramenta open source como o Buildah permite criar imagens compatíveis com OCI e Docker, com ou sem Dockerfiles ou um uma imagem de container existente como ponto inicial, eliminando muitas dúvidas no processo. 

Quando você desenvolve imagens de container, é necessário ter um local para salvá-las, compartilhá-las e acessá-las à medida que são criadas: é aí que o registro entra em cena. 

Um registro de containers age essencialmente como um local para os desenvolvedores armazenarem imagens de container e as compartilharem por meio de um processo de upload (push) para o registro e download (pull) para outro sistema, como umcluster do Kubernetes

Depois de extrair a imagem, a aplicação dentro dela pode ser executada nesse sistema.

Além das imagens de container, os registros também armazenam parâmetros de controle de acesso e caminhos de interfaces de programação de aplicações (APIs). As APIs ajudam a eliminar acoplamentos não intencionais que restrinjam mudanças e sejam uma fonte comum de interrupções, especialmente em ambientes de nuvem híbrida, em que as aplicações não residem mais no mesmo data center.

As imagens de container também podem se comunicar pela service mesh, uma camada de infraestrutura entre serviços em containers que ajuda na escalabilidade. No caso de aplicações nativas em nuvem criadas em uma arquitetura de microsserviços, a service mesh é uma maneira de englobar um grande número de serviços discretos em uma aplicação funcional.

Recursos da Red Hat

ACloud Native Computing Foundation diz que os containers (incluindo imagens e registros de container) e os microsserviços são a base para o desenvolvimento de aplicações nativas em nuvem. Como os containers e os microsserviços são totalmente autocontidos, eles são uma ferramenta poderosa para criar aplicações nativas em nuvem portáveis. 

Os containers isolam do restante do sistema os processos da aplicação, os arquivos do ambiente de execução e as dependências do sistema operacional. Eles prometem maior portabilidade em ambientes de nuvem híbrida e podem ser implantados por períodos muito mais curtos do que as máquinas virtuais (VM). Dessa forma, fica mais fácil para os desenvolvedores fazer enviar e extrair o que precisam de um registro de containers, permitindo que eles se concentrem na qualidade da solução sem se preocupar com a infraestrutura subjacente ou os detalhes de execução.

Em um ambiente DevOps, o uso de containerse imagens/registros de containerpermite que os desenvolvedores implantem os serviços de aplicação de forma independente, eliminando a necessidade de mesclar alterações de código, melhorando os testes e ajudando na prevenção de falhas nos testes e na produção.

Há dois tipos de registro de containers: público e privado. 

Os registros públicos são normalmente usados por indivíduos ou pequenas equipes que querem colocar seus registros em funcionamento o mais rápido possível. No entanto, à medida que as organizações crescem, podem surgir problemas de segurança mais complexos, como aplicação de patches, privacidade e controle de acesso. 

Os registros privados oferecem uma maneira de incorporar a segurança e a privacidade ao armazenamento de imagens de container empresariais, seja por host remoto ou on-premise. Em geral, esses registros privados vêm com funcionalidades avançadas de segurança e suporte técnico. 

A maioria dos provedores de nuvem oferece serviços privados de registro de imagens: oGoogle oferece o Google Container Registry, a AWS oferece o Amazon Elastic Container Registry (ECR) e a Microsoft oferece o Azure Container Registry.

Usar um registro interno privado oferece o potencial máximo de segurança e configuração, mas exige um gerenciamento cuidadoso e garante que a infraestrutura do registro e os controles de acesso permaneçam em sua organização. 

Ao escolher um serviço de registro de containers privado para sua empresa, considere estes recursos importantes:

  • Suporte a vários sistemas de autenticação

  • Gerenciamento de controle de acesso baseado em função (RBAC) para imagens locais

  • Recursos de verificação de vulnerabilidades para aprimorar a segurança e a configuração

  • Capacidade de documentar o uso em logs auditáveis para que a atividade de um usuário seja rastreada

  • Otimizado para automação

As funcionalidades prontas para empresas de um registro privado permitem que as organizações acessem internamente as imagens de container de maneira segura e eficiente. Vários sistemas de autenticação implementam medidas para verificar a imagem do container armazenada nele. 

Por exemplo, a imagem deve ser assinada digitalmente pela pessoa que está fazendo o upload dela antes que possa ser enviada ao registro, assim como para habilitar o rastreamento de atividades e impedir uploads de usuários não autorizados.

O RBAC gerencia quais ações do usuário são permitidas com base na função do indivíduo. Talvez um desenvolvedor precise do acesso para upload e download no registro, enquanto um membro ou testador da equipe precise do acesso apenas para download. Para organizações com um sistema de gerenciamento de usuários, como o Active Directory (AD) ou Lightweight Directory Access Protocol (LDAP), esse sistema pode ser vinculado diretamente ao registro do container e usado para o RBAC.

Saiba como um registro privado pode aprimorar a segurança das imagens de container

As empresas podem criar e implantar os próprios registros de container ou escolher um serviço de registro privado com suporte comercial oferecido por um provedor. 

O Red Hat® OpenShift® é uma plataforma de aplicações em container Kubernetes pronta para empresas que oferece consistência em qualquer infraestrutura de nuvem, gerenciando implantações de nuvem híbrida, multicloud e edge. Com o Red Hat OpenShift, o provisionamento de um ambiente para uma nova aplicação ou microsserviço pode ser feito em questão de minutos. Além de outros serviços em nuvem, como middleware, linguagens, frameworks e bancos de dados, ele já inclui um registro privado que oferece funcionalidades básicas para gerenciar suas imagens de container. 

Os registros privados podem ser implantados como parte de um serviço gerenciado pelo Red Hat OpenShift em um provedor de nuvem do rico ecossistema de parceiros da Red Hat, oferecendo uma experiência contínua no Azure, Amazon Web Services (AWS), IBM Cloudou Google Cloud. O Red Hat OpenShift também é compatível com a integração de outros registros privados que talvez já estejam em uso na sua empresa, como o Artifactory da JFrog e o Sonatype Nexus.

A Red Hat também oferece serviços autogerenciados baseados em nuvem híbrida, com funcionalidades de segurança aprimoradas e elementos adicionais de software que você pode usar no seu data center. Se você precisar de funcionalidades mais avançadas de suporte técnico e segurança, oRed Hat Quay está disponível como uma opção de registro empresarial independente e escalável.

Saiba mais sobre os benefícios do Red Hat Quay

Hub

Blog da Red Hat

Tudo relacionado à Red Hat: soluções, treinamentos e certificações Red Hat, casos de sucesso de clientes, novidades dos nossos parceiros e notícias sobre projetos das comunidades open source.

Teste as soluções da Red Hat

Você sabia que a Red Hat oferece versões de teste gratuitas de suas soluções? Aproveite e obtenha experiência prática, prepare-se para uma certificação da Red Hat ou avalie na prática se a solução é adequada para ao caso de uso.

Leia mais

What is the Kubernetes Java client?

The Kubernetes Java client is a client library that enables the use of the Java programming language to interface with Kubernetes.

Kubernetes na AWS: comparação entre K8s autogerenciado e plataforma de aplicações gerenciada

Conheça as vantagens de usar o Kubernetes (K8s) na AWS e entenda as diferenças entre o Kubernetes autogerenciado e uma plataforma de aplicações gerenciada.

O que é hosted control plane?

Hosted control plane refere-se ao plano de gerenciamento desacoplado que permite o controle e gerenciamento consolidados dos principais componentes do plano de controle.

Containers: leitura recomendada

Artigos relacionados