Operadores e o Red Hat OpenShift Container Platform
Os operadores do Red Hat® OpenShift automatizam a criação, a configuração e o gerenciamento de instâncias de aplicações nativas em Kubernetes. Os operadores viabilizam a automação em todos os níveis do stack, desde o gerenciamento dos componentes da plataforma até as aplicações que oferecidas como serviços gerenciados.
O Red Hat OpenShift usa o poder dos operadores 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. Além das vantagens da automação dos operadores para gerenciar a plataforma, o Red Hat OpenShift facilita a localização, a instalação e o gerenciamento dos operadores que estão em execução em seus clusters.
O OperatorHub, um registro de operadores certificados de fornecedores de software e projetos open source, já está incorporado ao Red Hat OpenShift. Nele, é possível procurar e instalar bibliotecas de operadores que foram verificados para funcionar com o Red Hat OpenShift e empacotados para facilitar o gerenciamento do ciclo de vida.
O que é um operador Kubernetes?
Ebook
O’Reilly – Operadores Kubernetes: automação da plataforma de orquestração de containers
Veja exemplos de como os operadores e funcionam e como criá-los com o Operator Framework e o SDK.
Operator Framework
O Operator Framework é um projeto open source que oferece a desenvolvedores e administradores de clusters ferramentas para acelerar o desenvolvimento e a implantação de um operador.
O projeto inclui o kit de desenvolvimento de software (SDK) do operador para a criação de aplicações de Kubernetes, um framework de gerenciamento para estender o Kubernetes com operadores e um catálogo de operadores existentes da comunidade Kubernetes.
Operadores prontos para uso
Operadores da comunidade
Com acesso aos Operadores da comunidade, desenvolvedores e administradores de clusters podem testar operadores em vários níveis de maturidade que funcionam com qualquer Kubernetes. Confira os Operadores da comunidade em OperatorHub.io.
Operadores certificados
Com os operadores certificados do Red Hat OpenShift encontrados no OperatorHub, desenvolvedores e administradores de clusters têm acesso a uma biblioteca de cargas de trabalho "como serviço" verificadas no Red Hat OpenShift e com suporte da Red Hat e seus parceiros.
Comece a criar com o SDK do operador
O kit de desenvolvimento de software (SDK) do operador oferece ferramentas para criar, testar e empacotar operadores. O SDK remove boa parte do código padrão que costuma ser necessário para a integração com a API do Kubernetes. Ele também oferece um mecanismo de scaffolding para que os desenvolvedores possam se concentrar em adicionar lógica de negócios (por exemplo, como escalar, fazer upgrade ou backup da aplicação que gerencia). As principais práticas e padrões de código compartilhados entre os operadores estão incluídos no SDK para ajudar a evitar eventuais retrabalhos. O SDK também estimula o desenvolvimento iterativo e ciclos de testes rápidos com ferramentas que viabilizam a validação básica do operador e o empacotamento automatizado para implantação com o uso do Operator Lifecycle Manager.
Empacote com o Operator Lifecycle Manager
O Operator Lifecycle Manager (OLM) é o circuito que facilita o gerenciamento dos operadores em um cluster do Kubernetes. Os operadores que oferecem aplicações como serviço populares serão cargas de trabalho de longa duração, possivelmente com muitas permissões no cluster.
Com o OLM, os administradores controlam quais operadores estão disponíveis em quais namespaces e quem pode interagir com os operadores em execução. As permissões de um operador são configuradas automaticamente e com precisão para seguir uma abordagem de privilégio mínimo. O OLM gerencia o ciclo de vida geral dos operadores e seus recursos, por exemplo, resolvendo dependências de outros operadores, disparando atualizações para um operador e a aplicação que ele gerencia ou concedendo a uma equipe acesso a um operador para sua parte do cluster.
Aplicações simples e stateless podem usar os recursos de gerenciamento do ciclo de vida do Operator Framework sem escrever qualquer código, por meio de operador genérico (por exemplo, o Operador Helm). No entanto, é nas aplicações complexas e stateful que um operador pode ser extremamente útil. As funcionalidades de serviço gerenciado inseridas no código do operador podem proporcionar uma experiência de usuário avançada com automação de recursos como atualizações, backups e escala.
Meça com o Operator Metering
Com as extensões de medição, as equipes de TI podem ter mais controle sobre seus orçamentos, enquanto os fornecedores de software podem rastrear mais facilmente o uso de sua solução comercial. O Operator Metering foi desenvolvido para vincular os relatórios de CPU e memória do cluster, além de calcular o custo de IaaS e métricas personalizadas, como licenciamento.