Kubernetes na AWS

Gerenciamento e orquestração de contêineres de código aberto

O Kubernetes é um software de código aberto que permite implantar e gerenciar aplicações conteinerizadas em grande escala. O Kubernetes gerencia clusters de instâncias de computação do Amazon Elastic Compute Cloud (EC2) e executa, nessas instâncias, contêineres com processos de implantação, manutenção e escalabilidade. Com o Kubernetes, é possível executar qualquer tipo de aplicação conteinerizada usando o mesmo conjunto de ferramentas on-premises e na nuvem.

A AWS facilita a execução do Kubernetes na nuvem com uma infraestrutura de máquinas virtuais escalável e altamente disponível, integrações de serviços com o respaldo da comunidade e o Amazon Elastic Kubernetes Service (EKS), um serviço de Kubernetes gerenciado e com conformidade certificada.

Kubernetes

COMO O KUBERNETES FUNCIONA

O Kubernetes funciona gerenciando um cluster de instâncias de computação e programando contêineres para execução no cluster de acordo com os recursos computacionais disponíveis e os requisitos de recursos de cada contêiner. Os contêineres são executados em agrupamentos lógicos denominados pods. Você pode executar e escalar um ou vários contêineres ao mesmo tempo como um pod.

O software do plano de controle do Kubernetes decide quando e onde executar os pods, gerencia o roteamento do tráfego e escala os pods de acordo com a utilização ou outras métricas definidas. O Kubernetes inicia automaticamente os pods no cluster de acordo com seus requisitos de recursos. Além disso, reinicia automaticamente os pods em caso de falha neles ou nas instâncias em que são executados. Cada pod recebe um endereço IP e um nome de DNS único, que é usado pelo Kubernetes para conectar seus serviços entre si e o tráfego externo.

POR QUE USAR O KUBERNETES

Como o Kubernetes é um projeto de código aberto, é possível usá-lo para executar aplicações conteinerizadas em qualquer lugar, sem necessidade de alterar as ferramentas operacionais. Uma grande comunidade de voluntários mantém o Kubernetes e o aprimora constantemente. Além disso, muitos outros projetos e fornecedores de código aberto constroem e mantêm softwares compatíveis com o Kubernetes que você pode usar para aprimorar e ampliar sua arquitetura de aplicações.

Execute aplicações em grande escala

EXECUTE APLICAÇÕES EM GRANDE ESCALA

O Kubernetes permite definir aplicações conteinerizadas complexas e executá-las em grande escala em um cluster de servidores.

Transfira aplicações sem interrupções

TRANSFIRA APLICAÇÕES SEM INTERRUPÇÕES

Com o Kubernetes, as aplicações conteinerizadas podem ser movimentadas sem interrupções de máquinas locais de desenvolvimento para implantações de produção na nuvem, usando as mesmas ferramentas operacionais.

Execute em qualquer lugar

EXECUTE EM QUALQUER LUGAR

Execute clusters Kubernetes altamente disponíveis e escaláveis na AWS, mantendo compatibilidade total com as implantações do Kubernetes on-premises.

Adicione novas funcionalidades

ADICIONE NOVAS FUNCIONALIDADES

Como um projeto de código aberto, é fácil adicionar novas funcionalidades ao Kubernetes. Uma grande comunidade de desenvolvedores e empresas constrói extensões, integrações e plugins que ajudam os usuários do Kubernetes a fazer mais.

EXECUTE KUBERNETES NA AWS

A AWS facilita a execução do Kubernetes. Você pode optar por gerenciar a infraestrutura do Kubernetes com o Amazon EC2 ou obter um ambiente de gerenciamento do Kubernettes automaticamente provisionado e gerenciado com o Amazon EKS. De qualquer forma, você obtém integrações avançadas e respaldadas pela comunidade com serviços da AWS, como o Amazon Virtual Private Cloud (VPC), o AWS Identity and Access Management (IAM) e descoberta de serviços, além da segurança, da escalabilidade e da alta disponibilidade da AWS.

SE VOCÊ DESEJA...
AVALIE A POSSIBILIDADE DE USAR O
Gerenciar integralmente as implantações do Kubernetes. Provisionar e executar o Kubernetes em sua escolha de tipos de instância avançados. Amazon EC2
Executar o Kubernetes sem necessidade de provisionar ou gerenciar instâncias mestre e o etcd.
Amazon EKS
Armazenar, criptografar e gerenciar imagens de contêiner para agilizar a implantação.
Amazon ECR

 

Colaborações do Kubernetes para a comunidade AWS

A AWS trabalha ativamente em conjunto com a comunidade do Kubernetes e colabora com a base de código do Kubernetes, o que ajuda os usuários do Kubernetes a aproveitarem os serviços e os recursos da AWS.

Plugin CNI

Plugin CNI

Redes de pods em Kubernetes usando interfaces de rede elásticas na AWS.

CDK8S

CDK8s

O Cdk8s permite definir aplicativos Kubernetes usando código.

DNS externo

DNS externo

Configure a descoberta de serviços do Route 53 para ingressos e serviços do Kubernetes.

Karpenter

Karpenter

Nós just-in-time para qualquer cluster Kubernetes.

Kubernetes

SIG AWS

Grupo de interesse especial, liderado pela comunidade e dedicado a integrações da AWS com a API do Kubernetes

TorchServe

TorchServe

Um modelo PyTorch que serve a estrutura de trabalho para implantar modelos ML treinados.

PERGUNTAS FREQUENTES SOBRE O KUBERNETES

P: O que é um cluster do Kubernetes?

Um cluster do Kubernetes é um agrupamento lógico de instâncias de computação do EC2 que executam contêineres. Um cluster consiste no plano de controle (as instâncias que controlam como, quando e onde os contêineres são executados) e no plano de dados (as instâncias em que os contêineres são executados). Você precisa definir um cluster antes de executar contêineres ou serviços com o Kubernetes.

P: O que é um nó do Kubernetes?

Um nó do Kubernetes é uma única instância de computação (máquina virtual) que faz parte de um cluster do Kubernetes. Há dois tipos de instâncias: mestre e operador. Os mestres hospedam o servidor da API do Kubernetes e controlam como, quando e onde os contêineres são executados. Os operadores são as instâncias de computação em que os contêineres realmente são executados e processam dados.

P: O que é um pod do Kubernetes?

Um pod do Kubernetes é a forma como o Kubernetes executa contêineres em uma instância de computação. O pod inclui contêineres e especificações sobre sua execução, redes e armazenamento. Um pod pode ser um único contêiner ou vários contêineres que são sempre executados em conjunto. Se você costuma executar contêineres únicos, pode pensar em um pod como um contêiner em execução.

P: O que é o etcd?

O etcd é um armazenamento distribuído de chave-valor que permite armazenar e compartilhar dados em um cluster de máquinas distribuído. O Kubernetes usa o etcd para armazenar dados sobre o cluster e compartilhá-los no plano de controle do Kubernetes.

P: A AWS oferece suporte ao Kubernetes?

A AWS facilita a execução do Kubernetes. Na verdade, a AWS conta com o maior número de clientes executando Kubernetes na nuvem. A maioria das implantações do Kubernetes são executadas na AWS, de acordo com a Cloud Native Computing Federation (CNCF). A AWS colabora e contribui ativamente com a comunidade do Kubernetes para que os clientes possam executar facilmente Kubernetes na AWS.

A AWS oferece o Amazon Elastic Kubernetes Service (EKS), um serviço gerenciado que facilita a execução do Kubernetes na AWS, sem necessidade de instalar e operar o plano de controle do Kubernetes.

P: Como faço para usar o Kubernetes na AWS?

Existem duas maneiras principais de usar o Kubernetes na AWS: executá-lo você mesmo em instâncias de máquinas virtuais do Amazon EC2 ou usar o serviço Amazon EKS. Saiba mais sobre como executar você mesmo o Kubernetes no EC2 em nosso workshop do GitHub. Para saber mais sobre como usar o Amazon EKS, consulte a página do produto.

Saiba mais sobre o Kubernetes na AWS

Acesse a página do Amazon Elastic Kubernetes Service

Saiba mais sobre contêineres na AWS

Acesse a página de contêineres
Pronto para criar?
Crie uma conta da AWS
Mais dúvidas?
Entre em contato conosco