We couldn't find a match for given <KEYWORD>, please try again.

O que é orquestração de contêineres?

A orquestração de contêineres é a automação de grande parte do esforço operacional necessário para executar cargas de trabalho e serviços em contêineres. Isso inclui diversas coisas que as equipes de software precisam para gerenciar o ciclo de vida de um contêiner, como aprovisionamento, implantação, dimensionamento (vertical), rede, balanceamento de carga e muito mais.

Estado do Kubernetes

Sete maneiras de melhorar a experiência dos desenvolvedores e acelerar a entrega de software no Kubernetes

Por que precisamos da orquestração de contêineres?

Como os contêineres são leves e efêmeros por natureza, executá-los na produção pode ser um esforço grande demais. Quando há emparelhamento com microsserviços, que costumam ser executados em contêineres próprios, um aplicativo em contêineres pode ser convertido em operações de centenas ou milhares de contêineres, especialmente ao criar e operar qualquer sistema de grande escala.

Isso pode apresentar uma complexidade significativa no caso do gerenciamento manual. Por ser uma maneira declarativa de automatizar grande parte do trabalho, a orquestração de contêineres permite que as equipes de desenvolvimento e operações (ou DevOps) consigam gerenciar essa complexidade. Isso a torna ideal para as equipes e a cultura de DevOps, que no geral buscam trabalhar com muito mais velocidade e agilidade do que as equipes de software tradicionais.

Quais são os benefícios da orquestração de contêineres?

A orquestração é fundamental para que as empresas possam trabalhar com contêineres e aproveitar tudo que eles têm a oferecer. Ela também oferece benefícios próprios para um ambiente em contêineres, incluindo:

  • Operações simplificadas: esse é o benefício mais importante da orquestração de contêineres e o principal motivo para ser adotada. Os contêineres trazem muita complexidade, o que pode sair rapidamente do controle caso não haja uma orquestração.
  • Resiliência: as ferramentas de orquestração de contêineres podem reiniciar ou dimensionar automaticamente um contêiner ou cluster, aumentando a resiliência.
  • Segurança adicional: a abordagem automatizada da orquestração de contêineres ajuda a manter os aplicativos em contêineres seguros, reduzindo ou eliminando a chance de erros humanos.

O que são contêineres e quais são seus benefícios?

Os contêineres são um método criar, empacotar e implantar software. Eles são semelhantes, mas não iguais, às máquinas virtuais (VMs, pela sigla em inglês). Uma das principais diferenças é que os contêineres são isolados ou desvinculados do sistema operacional e da infraestrutura em que são executados. Em termos mais simples, um contêiner inclui o código de um aplicativo e tudo que esse código precisa para ser executado corretamente.

Por isso, os contêineres oferecem muitos benefícios, incluindo:

  • Portabilidade: um dos maiores benefícios dos contêineres é que foram criados para serem executados em qualquer ambiente. Isso facilita a migração de cargas de trabalho em contêineres entre diferentes plataformas de nuvem, sem precisar reescrever grandes quantidades de código para garantir que ele seja executado corretamente, independentemente do sistema operacional subjacente ou de outros fatores. Isso também aumenta a produtividade do desenvolvedor, já que ele pode escrever código de maneira consistente sem se preocupar com a execução quando implantado em diferentes ambientes, seja uma máquina ou servidor local, ou uma nuvem pública.
  • Desenvolvimento de aplicativos: os contêineres podem acelerar o desenvolvimento e as implantações de aplicativos, incluindo alterações ou atualizações ao longo do tempo. Isso fica bem aparente com microsserviços em contêineres. Essa é uma abordagem de arquitetura de software que envolve a divisão de uma solução maior em partes menores. Esses componentes (ou microsserviços) distintos podem ser implantados, atualizados ou encerrados de forma independente, sem precisar atualizar e reimplantar o aplicativo inteiro.
  • Utilização e otimização de recursos: os contêineres são leves e efêmeros. Por isso, consomem menos recursos. Você pode executar muitos contêineres em uma única máquina, por exemplo.

O que é orquestração de contêineres do Kubernetes?

O Kubernetes é uma plataforma de código aberto popular para orquestração de contêineres. Ele facilita a criação de aplicativos e serviços em contêineres, além de permitir que os desenvolvedores dimensionem, programem e monitorem esses contêineres. Embora existam outras opções de orquestração de contêineres, como Apache Mesos ou Docker Swarm, o Kubernetes se tornou o padrão do setor. O Kubernetes fornece amplos recursos voltados a contêineres, uma comunidade de colaboradores dinâmica, o crescimento do desenvolvimento de aplicativos nativos da nuvem e a ampla disponibilidade de ferramentas comerciais e hospedadas do Kubernetes. O Kubernetes também é altamente extensível e portátil, então pode ser executado em vários ambientes e ser usado com outras tecnologias, como as redes de serviços.

Além de viabilizar a automação que a orquestração de contêineres exige, o Kubernetes é considerado altamente declarativo. Isso significa que desenvolvedores e administradores o usam para essencialmente descrever como querem que um sistema se comporte e, em seguida, o Kubernetes executa esse estado desejado de forma dinâmica.

O que é orquestração de contêineres multi-cloud?

No sentido mais básico, o termo "multi-cloud" refere-se à estratégia de TI de usar dois ou mais serviços de computação em nuvem de dois ou mais provedores. No contexto de contêineres e orquestração, multi-cloud geralmente significa executar aplicativos usando duas ou mais plataformas de infraestrutura em nuvem, incluindo nuvens públicas e privadas. Portanto, a orquestração de contêineres multi-cloud é o uso de uma ferramenta de orquestração para operar contêineres em ambientes de infraestrutura multi-cloud, em vez de um único ambiente de nuvem.

As equipes de software buscam estratégias multi-cloud por diferentes motivos, mas os benefícios podem incluir otimização de custos de infraestrutura, flexibilidade e portabilidade (incluindo redução da dependência de provedor) e dimensionamento (como o dimensionamento dinâmico de uma nuvem a partir de um ambiente local quando necessário). Ambientes e contêineres multi-cloud são muito compatíveis graças à sua natureza portátil, que permite que sejam "executados em qualquer lugar".

Diferenças entre orquestração de contêineres e Docker

O Docker é uma plataforma específica para criar contêineres, incluindo o ambiente de execução de contêineres do Docker Engine, enquanto "orquestração de contêineres" é um termo mais amplo que se refere à automação do ciclo de vida de qualquer contêiner. O Docker também inclui o Docker Swarm, que é a ferramenta de orquestração de contêineres da própria plataforma que pode iniciar automaticamente os contêineres do Docker.

Soluções e produtos relacionados

VMware Tanzu for Kubernetes Operations

A base para uma infraestrutura de contêineres moderna e multi-cloud

VMware Tanzu Application Platform

Uma melhor experiência de desenvolvedor multi-cloud no Kubernetes

VMware Tanzu Community Edition

Teste o VMware Tanzu agora mesmo