O que é o Kubernetes?

O Kubernetes é um software de orquestração de código aberto para implementar, gerir e dimensionar contentores

O Kubernetes explicado

As aplicações modernas são cada vez mais criadas através de contentores, que são microsserviços empacotados com as respetivas dependências e configurações. O Kubernetes (pronuncia-se "koo-ber-net-ees") é um software open-source para implementar e gerir esses contentores em escala e é também a palavra grega para timoneiros de um navio ou piloto. Crie, entregue e dimensione aplicações em contentores mais rapidamente com o Kubernetes, por vezes referido como "k8s" ou "k-eights".

Explore o Kubernetes com este percurso de aprendizagem simples

Como funciona o Kubernetes

À medida que as aplicações crescem e ocupam múltiplos contentores implementados em vários servidores, operá-las torna-se mais complexo. Para gerir esta complexidade, o Kubernetes fornece uma API de código aberto que controla como e onde serão executados esses contentores.

O Kubernetes orquestra clusters de máquinas virtuais e agenda a execução de contentores nessas máquinas virtuais com base nos recursos de computação disponíveis e nos requisitos de recursos de cada contentor. Os contentores são agrupados em pods, a unidade de operações básica do Kubernetes, os quais são dimensionados para o estado desejado.

O Kubernetes também gere automaticamente a deteção de serviços, incorpora o balanceamento de carga, monitoriza a alocação de recursos e dimensiona com base na utilização de computação. Além disso, verifica o estado de funcionamento dos recursos individuais e permite o restauro automático das aplicações ao reiniciar ou replicar automaticamente os contentores.

Ver mais vídeos sobre as noções básicas do Kubernetes

Porquê utilizar o Kubernetes?

Manter as aplicações em contentores a funcionar pode ser complexo, pois muitas vezes envolve a implementação de muitos contentores em diferentes computadores. O Kubernetes fornece uma forma de agendar e implementar esses contentores, além de dimensioná-los para o estado desejado e gerir os respetivos ciclos de vida. Utilize o Kubernetes para implementar as suas aplicações baseadas em contentores de forma portátil, dimensionável e extensível.

Torne as cargas de trabalho portáteis

Como as aplicações de contentor estão separadas da respetiva infraestrutura, tornam-se portáteis quando são executadas no Kubernetes. Mova-as dos computadores locais para produção entre ambientes no local, híbridos e de várias clouds ao manter a consistência em todos os ambientes.

Dimensione contentores facilmente

Defina aplicações em contentores complexas e implemente-as num cluster de servidores, ou mesmo vários clusters, com o Kubernetes. À medida que o Kubernetes dimensiona as aplicações de acordo com o estado desejado, monitoriza e mantém automaticamente o estado de funcionamento dos contentores.

Crie aplicações mais extensíveis

Uma grande comunidade open-source de programadores e empresas cria ativamente extensões e plug-ins que adicionam capacidades como segurança, monitorização e gestão ao Kubernetes. Além disso, o Programa de Conformidade Certificado do Kubernetes requer que todas as versões do Kubernetes suportem APIs que facilitam a utilização dessas ofertas da comunidade.

Introdução ao Kubernetes

Veja como implementar e gerir aplicações em contentores.

Acompanhe o percurso de aprendizagem

Obtenha experiência prática com os componentes, capacidades e soluções do Kubernetes.

criar uma plataforma completa do Kubernetes

Embora o próprio Kubernetes ofereça portabilidade, escalabilidade e extensibilidade, a adição de desenvolvimento, operações e controlo de segurança completos permite-lhe implementar atualizações mais rapidamente, sem comprometer a segurança ou a fiabilidade, bem como poupar tempo na gestão da infraestrutura. À medida que adotar o Kubernetes, considere implementar também:

  1. Automatização da infraestrutura ou Kubernetes sem servidor para eliminar tarefas de rotina como o aprovisionamento, o patching e a atualização.

    Ver exemplos
  2. Ferramentas para o desenvolvimento de aplicações em contentores e fluxos de trabalho de integração e implementação contínuas (CI/CD).

    Ver exemplos
  3. Serviços para gerir a segurança, a governação, a identidade e o acesso.

    Ver exemplos

Tire partido do Kubernetes com práticas de DevOps

À medida que uma aplicação do Kubernetes cresce, ao adicionar contentores, ambientes e equipas, a frequência de lançamento pode aumentar, bem como a complexidade de desenvolvimento e operacional. A utilização de práticas de DevOps em ambientes do Kubernetes permite-lhe migrar rapidamente em escala com segurança melhorada.

Fornecer código mais rapidamente com CI/CD

Embora os contentores forneçam um formato de empacotamento de aplicações consistente que facilita a colaboração entre as equipas de desenvolvimento e operações, o CI/CD pode acelerar a migração do código para o contentor e o cluster do Kubernetes em minutos através da automatização dessas tarefas.

Configurar o CI/CD para o Kubernetes

Gerir recursos eficazmente com infraestrutura como código

A infraestrutura como código estabelece a consistência e a visibilidade dos recursos de computação entre as equipas, o que permite reduzir a probabilidade de erro humano. Esta prática é utilizada em conjunto com a natureza declarativa das aplicações do Kubernetes com tecnologia Helm. Combinar ambas permite-lhe definir aplicações, recursos e configurações de forma fiável, controlável e repetível.

Implementar um cluster do Kubernetes com o Terraform

Acelere o ciclo de comentários através de monitorização constante

Reduza o tempo entre erros e correções com uma vista completa dos seus recursos, clusters, APIs do Kubernetes, contentores e código, desde a monitorização do estado de funcionamento dos contentores ao registo centralizado. Essa vista ajuda-o a evitar estrangulamentos de recursos, rastrear pedidos maliciosos e manter o bom estado de funcionamento das aplicações do Kubernetes.

Veja como funcionam as informações dos contentores em tempo real

Equilibre a velocidade e a segurança com o DevOps

Traga a observabilidade em tempo real para o seu fluxo de trabalho de DevOps sem sacrificar a velocidade. Aplique verificações de conformidade e reconfigurações automaticamente para proteger o pipeline de compilação e versão, e consequentemente a sua aplicação do Kubernetes.

Veja a segurança contínua em ação

Fluxo de trabalho do DevOps de exemplo com o Kubernetes

  1. 1Itere, teste e depure rapidamente diferentes partes de uma aplicação no mesmo cluster do Kubernetes.
  2. 2Intercale e verifique o código num repositório do GitHub para integração contínua. Em seguida, execute compilações e testes automatizados como parte de entrega contínua.
  3. 3Verifique a origem e a integridade das imagens de contentor. As imagens são mantidas em quarentena até passarem na análise.
  4. 4Aprovisione clusters do Kubernetes com ferramentas como o Terraform. Os gráficos Helm instalados pelo Terraform definem o estado desejado dos recursos e configurações das aplicações.
  5. 5Aplique políticas para governar as implementações no cluster do Kubernetes.
  6. 6O pipeline de versão executa automaticamente uma estratégia de implementação predefinida com cada código.
  7. 7Adicione auditoria e remediação automática de políticas ao pipeline CI/CD. Por exemplo, apenas o pipeline de versão tem permissão para criar novos pods no ambiente do Kubernetes.
  8. 8Ative a telemetria de aplicações, a monitorização do estado de funcionamento dos contentores e a análise de registos em tempo real.
  9. 9Resolva problemas com informações e indique os planos para o próximo sprint.

Crie com base nas vantagens do Kubernetes com o Azure

Automatize o aprovisionamento, a atualização, a monitorização e o dimensionamento com o Microsoft Azure Kubernetes Service (AKS) totalmente gerido. Obtenha uma experiência de desenvolvimento até à produção do Kubernetes sem servidor mais simples, além de segurança e governação de nível empresarial.

Saiba mais sobre o AKS

Crie inspiração e inovação a partir da comunidade do Kubernetes

O Kubernetes foi criado por milhares de pessoas e centenas de organizações que aplicaram a sua sabedoria, código e suporte contínuo às pessoas que o utilizam. Crie o sucesso do seu software com base nas suas apaixonadas contribuições.

35,000
Contribuidores
180,000
Consolidações
Principal projeto
no GitHub

Contribuições da Microsoft para o Kubernetes

Trazer engenho de código open-source para as empresas

Para tornar o Kubernetes mais fácil de adotar para as empresas, e mais fácil de utilizar para os programadores, a Microsoft triplicou o número de funcionários a participar no projeto em código aberto no espaço de apenas três anos. Sendo agora a terceira maior colaboradora empresarial, a Microsoft trabalha para tornar o Kubernetes mais próximo e acessível para as empresas ao levar as mais recentes descobertas e melhores práticas de trabalho com variados clientes para a comunidade do Kubernetes.

FAQs – Kubernetes

  • Siga este percurso organizado para começar a aprender a utilizar o Kubernetes.

  • O Kubernetes é útil em cenários desde mover aplicações para a cloud a simplificar os desafios de aprendizagem automática e IA.

    Os principais casos de utilização incluem:

  • Veja as melhores práticas e os padrões de arquitetura criados pelos milhares de profissionais técnicos e parceiros que utilizam o Kubernetes.

  • Uma implementação do Kubernetes permite-lhe descrever o seu estado de implementação de aplicações desejado. O agendador do Kubernetes assegura que o estado real corresponde ao estado desejado e mantém esse estado em caso de falha de um ou mais pods. As implementações do Kubernetes também lhe permitem atualizar consistentemente as suas aplicações sem tempo de inatividade.

    Ver as estratégias de implementação do Kubernetes
  • A implementação no Kubernetes através do DevOps envolve normalmente um repositório, como o Git, para gestão de versões. O repositório serve de ponto de partida da linha CI/CD. Consoante a abordagem que utilizar, as alterações no repositório acionam atividades de integração, compilação, entrega e implementação.

    Veja como o AKS funciona com o Azure DevOps detalhadamente
  • O Kubernetes e o Docker trabalham em conjunto.

    O Docker fornece uma norma aberta para empacotar e distribuir aplicações em contentores. Através do Docker, pode criar e executar contentores, bem como armazenar e partilhar imagens de contentor.

    O Kubernetes orquestra e gere as aplicações em contentores distribuídas criadas pelo Docker. Fornece ainda a infraestrutura necessária para implementar e executar essas aplicações num cluster de máquinas.

    Saiba mais sobre o Kubernetes vs. o Docker

Recursos

Estamos prontos quando quiser, experimente o Kubernetes gratuitamente no Azure