Jump to section

O que é um operador Kubernetes?

Copiar URL

O operador do Kubernetes é um método de empacotar, implantar e gerenciar aplicações do Kubernetes. Uma aplicação Kubernetes é implantada e gerenciada no Kubernetes usando a interface de programação de aplicações (API) do Kubernetes e o conjunto de ferramentas kubectl.

Um operador Kubernetes é um controlador específico para aplicações que amplia as funcionalidades da API do Kubernetes a fim de criar, configurar e gerenciar instâncias de aplicações complexas para um usuário do Kubernetes.

Ele se apoia sobre os conceitos básicos de controlador e recursos do Kubernetes, mas inclui o conhecimento específico de uma aplicação ou domínio para automatizar o ciclo de vida inteiro do software que gerencia. 

No Kubernetes, os controladores do painel de controle implementam loops que repetidamente comparam o estado desejado com o estado atual do cluster. Se o estado atual não coincidir com o desejado, o controlador realiza ações para corrigir o problema. 

Um operador é um controlador Kubernetes sob medida que usa recursos personalizados (CR) para gerenciar aplicações e seus respectivos componentes. O usuário define as configurações de alto nível em um CR. O operador Kubernetes traduz as diretivas de alto nível em ações de baixo nível com base nas práticas recomendadas incorporadas na lógica do próprio operador.

Um recurso personalizado é o mecanismo de extensão da API no Kubernetes. A definição do recurso personalizado (CRD) estipula um CR e lista toda a configuração disponível para os usuários do operador. 

O operador Kubernetes inspeciona o tipo de CR e realiza ações específicas para a aplicação. Dessa forma, o estado atual pode coincidir com o estado desejado no recurso em questão.

Os operadores Kubernetes introduzem novos tipos de objetos por meio de definições de recurso personalizado. As definições de recurso personalizado podem ser processadas pela API do Kubernetes da mesma forma que os objetos incorporados, incluindo interação via kubectl e inclusão em políticas de controle de acesso baseado em função (RBAC).

Um operador Kubernetes continua a monitorar a aplicação enquanto ela é executada, podendo automaticamente fazer o backup de dados, recuperar a aplicação após falhas e fazer o upgrade dela com o passar do tempo. 

As ações realizadas por um operador Kubernetes podem incluir praticamente qualquer coisa: escalonamento de uma aplicação complexa, upgrades de versão ou até mesmo o gerenciamento de módulos do kernel para nós em um cluster computacional com hardware especializado.

Saiba mais como os operadores Kubernetes funcionam, inclusive com exemplos reais, e aprenda a criá-los com o Operator Framework e o kit de desenvolvimento de software.

O Operator Framework é um projeto open source que fornece ferramentas de desenvolvedor e de ambiente de execução do Kubernetes, a fim de acelerar o desenvolvimento de um operador.

O Operator Framework inclui:

  • Operator SDK: permite que desenvolvedores criem operadores com base em seu próprio conhecimento especializado, sem a necessidade de entender as complexidades da API do Kubernetes.
  • Operator Lifecycle Management: supervisiona a instalação, as atualizações e o gerenciamento do ciclo de vida de todos os operadores em execução em um cluster do Kubernetes.
  • Operator Metering: permite a geração de relatórios para operadores que fornecem serviços especializados.

O Red Hat® OpenShift® é uma plataforma de containers Kubernetes para gerenciar implantações de nuvem híbrida e multicloud voltada a empresas com operações automatizadas em todo o stack.

O Red Hat OpenShift usa operadores Kubernetes para executar a plataforma inteira de maneira autônoma e expor a configuração de modo nativo por meio de objetos Kubernetes, o que permite acelerar a instalação e realizar atualizações robustas e frequentes. 

O OperatorHub, um registro de operadores certificados de fornecedores de software e projetos open source, já está incorporado ao Red Hat OpenShift. No OperatorHub, é possível procurar e instalar bibliotecas de operadores verificados para funcionar com o Red Hat OpenShift e que foram empacotados para facilitar o gerenciamento do ciclo de vida.

Leitura recomendada

ARTIGO

Containers x máquinas virtuais

Os containers Linux e as máquinas virtuais são ambientes de computação empacotados que combinam vários componentes de TI e os isolam do restante do sistema.

ARTIGO

O que é orquestração de containers?

A orquestração automatiza a implantação, o gerenciamento, a escala e a rede dos containers.

ARTIGO

O que é um container Linux?

Um container Linux é um conjunto de processos isolados do sistema. Esses processos são executados a partir de uma imagem distinta que oferece todos os arquivos necessários a eles.

Leia mais sobre containers

Soluções Red Hat

Uma plataforma de aplicações para empresas que oferece serviços testados para lançar aplicações na infraestrutura de sua escolha.

Conteúdo adicional

Datasheet

Red Hat OpenShift: tecnologia de container para nuvem híbrida

O Red Hat® OpenShift® é uma plataforma empresarial de containers Kubernetes que ajuda organizações em todo o mundo a criar, implantar, executar, gerenciar e proteger aplicações inovadoras em nuvens híbridas.

Datasheet

Red Hat OpenShift Kubernetes Engine

O Red Hat OpenShift Kubernetes Engine consiste em vários componentes essenciais e totalmente integrados para criação, implantação e gerenciamento de aplicações em containers.

Ebook

Transforme suas aplicações

Conheça as tendências atuais para a transformação de aplicações e como modernizar sua TI usando serviços em nuvem e plataformas de aplicações em nuvem híbrida.

Treinamentos Red Hat

Treinamento gratuito

Running Containers with Red Hat Technical Overview

Treinamento gratuito

Containers, Kubernetes and Red Hat OpenShift Technical Overview

Treinamento gratuito

Developing Cloud-Native Applications with Microservices Architectures