O que é um cluster do Kubernetes?

Autor

Sai Vennam

Technical Offering Manager

Clusters do Kubernetes definidos

Um cluster do Kubernetes é um conjunto de nós de computação (máquinas virtuais ou físicas) que executa aplicações conteinerizadas gerenciadas com a plataforma de orquestração de contêineres do Kubernetes.

A nuvem oferece inúmeros benefícios para a empresa, incluindo flexibilidade, agilidade, portabilidade e controle de custos. Com esses benefícios, no entanto, vem a complexidade de gerenciar a nuvem e fornecer os aplicativos que nela existem. O Kubernetes é uma plataforma de orquestração de contêineres que pode ajudar a aliviar essas complexidades.

Os clusters fornecem a base arquitetônica para o Kubernetes. Pense nos clusters como blocos de construção que possibilitam a entrega rápida e controlada de aplicativos na nuvem. Um cluster do Kubernetes é um conjunto de máquinas conectadas que trabalham juntas como uma única unidade. São compostos por nós de trabalho, que representam um host de computação no qual é possível implementar, executar e gerenciar aplicativos conteinerizados. Os nós do trabalhador são gerenciados por nós principais, que agendam contêineres nos nós do trabalhador escolhendo onde implementá-los com base na capacidade disponível e na configuração definida pelo usuário.

Os scripts especificam a configuração de contêineres e quais recursos são necessários para executar o aplicativo, como armazenamento persistente, serviços e assim por diante. No Kubernetes, os pods são as menores unidades implementáveis em um cluster e agrupam contêineres, que devem ser tratados como uma única unidade. O Kubernetes cria pods para hospedar instâncias de aplicações. Os pods armazenam um ou mais contêineres de aplicativos e compartilham recursos, como armazenamento ou informações de rede.

As mais recentes notícias de tecnologia, corroboradas por insights de especialistas.

Mantenha-se atualizado sobre as tendências mais importantes (e intrigantes) do setor em IA, automação, dados e muito mais com o boletim informativo Think. Consulte a Declaração de privacidade da IBM.

Agradecemos sua inscrição!

Sua assinatura será entregue em inglês. Você pode encontrar um link para cancelar a assinatura em todos os boletins informativos. Você pode gerenciar suas inscrições ou cancelar a inscrição aqui. Consulte nossa Declaração de privacidade da IBM para obter mais informações.

A evolução para a orquestração do Kubernetes

O surgimento dos contêineres ajudou a simplificar computação em nuvem. Os contêineres agrupam o código e todas as suas dependências, permitindo que uma stack de software seja executada independentemente do ambiente em que se encontre. Embora os contêineres ofereçam pacotes discretos, eles também complicam as questões de gerenciamento. O desafio era encontrar uma maneira de fazer esses pacotes eficientes e leves trabalharem juntos. A orquestração foi a próxima evolução na simplificação de ambientes multinuvem.

Para saber mais sobre a conteinerização, assista ao nosso vídeo "Containerization Explained".

Para obter mais informações sobre orquestração de contêineres, veja nosso vídeo “Container Orchestration Explained.” (link externo a ibm.com)

O Kubernetes fornece uma plataforma de código aberto para gerenciar cargas de trabalho conteinerizadas e microsserviços (link externo a ibm.com). Isso permite que os desenvolvedores superem as diferenças nos provedores de nuvem aplicando normas e consistência em todos os aspectos para aplicações baseadas em contêineres. A plataforma é centrada em contêineres e orquestra armazenamento, rede e computação para atender às cargas de trabalho dos usuários.

Com o Kubernetes, os usuários podem se concentrar na funcionalidade que desejam de seus aplicativos em nuvem em vez de desenvolver recursos específicos da plataforma. A arquitetura do Kubernetes subjacente é o que alimenta essa capacidade.

Para uma análise mais detalhada dos recursos de orquestração de contêineres do Kubernetes, consulte “Kubernetes vs. Docker: It’s Not an Either/Or Question”:

 

Arquitetura de clusters do Kubernetes

Os clusters do Kubernetes são os alicerces do Kubernetes e fornecem a base arquitetônica da plataforma. A modularidade dessa estrutura de blocos de construção permite disponibilidade, escalabilidade e facilidade de implementação.

As cargas de trabalho atuais exigem alta disponibilidade tanto no nível das aplicações quanto na infraestrutura. Ao criar uma camada de abstração entre os aplicativos e sua infraestrutura subjacente, o Kubernetes distribui a carga de trabalho de forma eficiente entre os recursos disponíveis. O Kubernetes protege contra falhas dos aplicativos com verificações constantes de integridade de nós e contêineres. Se um contêiner ficar inativo, a autocorreção e a replicação resolvem a falha. Os balanceadores de carga integrados distribuem a carga de trabalho sobre recursos abertos para reduzir o impacto de picos de tráfego, picos ou interrupções.

Esse mesmo uso eficiente de recursos desempenha um papel no escalonamento. Adicionar e remover novos servidores é simplificado, permitindo uma escalabilidade horizontal perfeita. O auto-scaling automatizado aumenta a execução de contêineres com base em métrica específica. Os controles de replicação encerram o excesso de pods se muitos estiverem em execução ou iniciam os pods se houver poucos.

Para conhecer melhor a arquitetura do Kubernetes, confira o vídeo a seguir — “Kubernetes Explained":

Assista ao vídeo

A velocidade é essencial para os desenvolvedores. O Kubernetes foi projetado para acomodar a rápida criação, teste e lançamento de software. Versões novas ou atualizadas são propagadas por meio de implementação automatizada. Também funciona bem com lançamentos de canários, permitindo que as implementações de novas versões sejam executadas paralelamente às versões anteriores, verificando a confiabilidade da nova versão antes de colocá-la em produção total.

Monitoramento de clusters do Kubernetes via Prometheus

Conforme os aplicativos conteinerizados se tornam mais granulares e independentes, o monitoramento se torna um desafio. Esse desafio se estende ao monitoramento dos clusters do Kubernetes. O monitoramento tradicional indica se um programa, serviço ou ferramenta está ativo (em execução) ou inativo (não em execução). Para microsserviços, a abordagem de aumento/redução é muito difícil, pois um microsserviço de função única pode estar inativo sem causar impacto nos negócios. As ferramentas de monitoramento modernas devem oferecer distinções mais refinadas e se integrar melhor com diversas plataformas e aplicativos mutáveis.

O Prometheus, uma ferramenta de registro, monitoramento e alerta de código aberto, foi projetado para a portabilidade e mutações dos ambientes multinuvem e supera as limitações tradicionais do monitoramento. Ele deriva métricas ricas de clusters do Kubernetes, nós de trabalho e implementações. O Prometheus usa pares de valores-chaves, que funcionam bem com a forma como o Kubernetes organiza os metadados. O Prometheus coleta regularmente e descobre automaticamente os destinos de dados, o que o torna uma boa opção para cargas de trabalho efêmeras.

IBM Cloud

Red Hat OpenShift AI on IBM Cloud: implemente cargas de trabalho de IA

Utilize recursos de IA com o Red Hat OpenShift on IBM Cloud. Este vídeo explora como criar, implementar e gerenciar cargas de trabalho de IA com eficiência com uma plataforma de operações escalável de aprendizado de máquina.

Soluções relacionadas
IBM Red Hat OpenShift

O Red Hat OpenShift on IBM Cloud é uma plataforma de contêineres OpenShift (OCP) totalmente gerenciada.

Explore o Red Hat OpenShift
Soluções de contêiner

As soluções de contêiner executam e expandem cargas de trabalho conteinerizadas com segurança, inovação em código aberto e implementação ágil.

Explore contêineres
Serviços de consultoria em nuvem 

Libere novos recursos e aumente a agilidade dos negócios com os serviços de consultoria em nuvem da IBM. Descubra como cocriar soluções, acelerar a transformação digital e otimizar o desempenho por meio de estratégias de nuvem híbrida e parcerias especializadas.

Serviço de nuvem
Dê o próximo passo

O IBM® Instana Observability oferece observabilidade automatizada de Kubernetes e recursos de APM projetados para monitorar todo o seu stack a de aplicações em Kubernetes — desde nós e pods até contêineres e aplicações — para todas as distribuições de Kubernetes.

Conheça o IBM Instana Observability Descubra o Instana