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, microsserviços empacotados com as respetivas dependências e configurações. O Kubernetes, ou resumidamente k8s, é um software de código aberto para implementar e gerir esses contentores em escala. Com o Kubernetes, pode criar, fornecer e dimensionar aplicações em contentores mais rapidamente.

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.

Também lhe confere a capacidade de orquestrar um cluster de máquinas virtuais e agendar 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, a qual pode dimensionar para o estado desejado.

O Kubernetes ajuda a gerir a deteção de serviços, incorporar o balanceamento de carga, monitorizar a alocação de recursos, dimensionar com base na utilização de computação, verificar o estado de funcionamento dos recursos individuais e permitir o restauro automático das aplicações ao reiniciar ou replicar automaticamente os contentores.

Saiba mais sobre as noções básicas do Kubernetes

Como funciona o Kubernetes

Porquê utilizar o Kubernetes?

Implemente ambientes baseados em contentores de forma portátil, dimensionável e extensível.

Portabilidade

Mova facilmente cargas de trabalho em contentores de máquinas de desenvolvimento locais para produção. Orquestre contentores de forma consistente em diferentes ambientes entre a infraestrutura no local e clouds públicas e híbridas.

Escalabilidade

Defina aplicações em contentores complexas e implemente-as globalmente num cluster de servidores, ou mesmo vários clusters, à medida que o Kubernetes otimiza os recursos de acordo com o estado desejado. Com um dimensionador automático incorporado, o Kubernetes pode facilmente dimensionar horizontalmente a sua aplicação enquanto monitoriza e mantém automaticamente o estado de funcionamento do contentor.

Extensibilidade

Aceda a uma vasta e cada vez maior coleção de extensões e plug-ins criados pelos programadores e empresas que constituem a comunidade do Kubernetes. Um serviço do Kubernetes em conformidade permite-lhe tirar o máximo partido destas ofertas da comunidade e adicionar capacidades, como segurança, monitorização e gestão.

Além do Kubernetes

As aplicações em contentores prometem maior agilidade, mas o Kubernetes por si só não consegue alcançar todos os benefícios dessa agilidade. No seu percurso da adoção do Kubernetes, considere realizar o seguinte em conjunto na sua plataforma do Kubernetes.

An enterprise-grade platform with end-to-end development, operations and security control experience can save you time on infrastructure management and roll out updates faster without compromising security and reliability.

Alcance agilidade em escala com o Kubernetes e o DevOps

À medida que os contentores, os ambientes e as equipas que trabalham com estes se multiplicam, a frequência de lançamento pode aumentar, bem como a complexidade de desenvolvimento e operacional. Seja mais ágil à escala com segurança melhorada ao aplicar o DevOps nos ambientes do Kubernetes. Pode ser mais ágil à escala com segurança melhorada.

Entregue código mais rapidamente com integração e implementação contínuas (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 promove 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

Contentores imutáveis, lançamentos frequentes e uma camada de orquestração abstrata tornam a capacidade de observação mais desafiante e ainda mais crítica. Para reduzir o tempo entre erros e correções, precisará de 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

Obtenha capacidade de observação incorporada em tempo real como parte do fluxo de trabalho do DevOps. 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

O Kubernetes pertence à comunidade

O Kubernetes foi criado por milhares de pessoas e centenas de empresas que aplicaram a sua sabedoria, código e esforço no projeto, e prospera devido a elas. Crie o sucesso do seu software com base nas suas apaixonadas contribuições contínuas.

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

Software de código aberto com compromisso empresarial

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.

FAQ – Kubernetes

  • Kubernetes and Docker work together.

    Docker provides an open standard for packaging and distributing containerized applications. Using Docker, you can build and run containers, and store and share container images.

    Kubernetes orchestrates and manages the distributed, containerized applications that Docker creates. It also provides the infrastructure needed to deploy and run those applications on a cluster of machines.

    Learn more about Kubernetes vs. Docker
  • 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.

    Veja um debate completo deste tópico
  • 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 é ú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 Azure.

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

Recursos

Estamos prontos quando quiser, experimente o Kubernetes gratuitamente no Azure