Continuamos vendo o uso crescente do padrão Kubernetes Operator para outras finalidades além do gerenciamento de aplicativos implantados no cluster. O uso do padrão Operador para recursos não clusterizados se beneficia das definições de recursos personalizadas e do mecanismo de agendamento orientado a eventos implementado no plano de controle do Kubernetes para gerenciar atividades relacionadas ainda fora do cluster. Essa técnica se baseia na ideia dos serviços em nuvem gerenciados por Kube e a estende a outras atividades, como implantação contínua ou reação a mudanças em repositórios externos. Uma vantagem dessa técnica em relação a uma ferramenta específica é a ampla gama de ferramentas que vêm com o Kubernetes ou fazem parte de um ecossistema mais amplo. Você pode usar comandos como diff, dry-run ou apply para interagir com os recursos personalizados do operador. O mecanismo de agendamento do Kube facilita o desenvolvimento eliminando a necessidade de orquestrar as atividades na ordem correta. Ferramentas de código aberto como Crossplane, Flux e Argo CD se beneficiam desta técnica, e esperamos ver mais opções surgirem ao longo do tempo. Embora essas ferramentas tenham seus casos de uso, também estamos começando a ver o inevitável mau uso, ou uso excessivo dessa técnica, e precisamos repetir algumas recomendações antigas: só porque você pode fazer algo com uma ferramenta não significa que você deva fazer. Certifique-se de descartar abordagens convencionais mais simples antes de criar uma definição de recurso personalizada e se comprometer com a complexidade que acompanha essa abordagem.
Temos observado o uso crescente do padrão Operador do Kubernetes para outros fins além do gerenciamento de aplicativos implantados no cluster. O uso do Padrão Operador para recursos não clusterizados se beneficia das vantagens oferecidas pelas definições personalizadas de recursos e o mecanismo de agendamento orientado a eventos implementado no plano de controle do Kubernetes para gerenciar atividades relacionadas ainda fora do cluster. Esta técnica se baseia na ideia de serviços em nuvem gerenciados por Kube e a estende para outras atividades, como implantação contínua ou reação a mudanças em repositórios externos. Uma vantagem dessa técnica em relação a uma ferramenta criada para um fim específico é que ela abre uma ampla gama de ferramentas que vêm com Kubernetes ou fazem parte de um ecossistema mais amplo. Você pode usar comandos como diff, dry-run ou apply para interagir com os recursos personalizados do operador. O mecanismo de agendamento do Kube torna o desenvolvimento mais fácil, eliminando a necessidade de orquestrar as atividades na ordem adequada. Ferramentas de código aberto como Crossplane, Flux e ArgoCD usam essa técnica e esperamos ver outras surgindo com o tempo.