Introdução aos Complementos do Cluster

Saiba mais sobre os complementos essenciais de cluster e o crescente portfólio de complementos opcionais de cluster que você pode gerenciar usando o Kubernetes Engine (OKE).

Ao usar clusters aprimorados, você pode usar o Kubernetes Engine para gerenciar complementos essenciais e um portfólio crescente de complementos opcionais. É possível:

Extensões essenciais

Os complementos essenciais do cluster são componentes principais de um cluster do Kubernetes e são necessários para que um cluster opere corretamente. Os complementos essenciais do cluster incluem:

  • CoreDNS: O complemento CoreDNS é um servidor de DNS de autoridade para fins gerais que é modular e plugável. O Kubernetes Engine cria clusters com CoreDNS como o servidor DNS. O processo kubelet em cada nó de trabalho direciona contêineres individuais para o servidor de DNS para conversão de nomes de DNS em endereços IP.
  • kube-proxy: O add-on kube-proxy é o proxy de rede do Kubernetes que mantém regras de rede e roteia solicitações.
  • um plug-in CNI para rede de pods: Um dos seguintes complementos de plug-in CNI para implementar a conectividade de rede para pods em execução nos nós de trabalho:
    • Plug-in da CNI de Rede do Pod Nativo da VCN do OCI
    • flannel CNI plugin

    Os plug-ins CNI configuram interfaces de rede, provisionam endereços IP e mantêm a conectividade.

Complementos essenciais de cluster são implantados por padrão em novos clusters do Kubernetes. Ao usar clusters aprimorados, você pode configurar complementos essenciais de cluster usando o Kubernetes Engine.

Complementos opcionais

Complementos de cluster opcionais são componentes que você pode optar por implantar em um cluster do Kubernetes. Os complementos opcionais estendem a funcionalidade básica do Kubernetes para melhorar a capacidade de gerenciamento e o desempenho do cluster. Exemplos de complementos opcionais de cluster incluem:

  • Painel de Controle do Kubernetes: O complemento opcional do Painel de Controle do Kubernetes é uma interface de gerenciamento baseada na Web que permite implantar, editar, observar e solucionar problemas de aplicativos conteinerizados. Não recomendamos a implantação do Painel de Controle do Kubernetes em clusters de produção devido à falta de suporte de autenticação extensível. Para obter mais informações, consulte Acessando um Cluster Usando o Painel de Controle do Kubernetes.
  • Tiller (não recomendado): O complemento opcional do Tiller é a parte do servidor do Helm. Com o Tiller em execução no cluster, você pode usar o Helm para gerenciar recursos do Kubernetes. O Tiller foi removido do Helm na versão 3 (e versões posteriores) devido a riscos de segurança conhecidos. Por causa desses riscos de segurança, recomendamos que você não implante o Tiller em clusters de produção. Pelo mesmo motivo, o complemento do Tiller não é mostrado na Console. Se você decidir que deseja implantar o complemento Tiller apesar dos riscos de segurança, use a CLI ou a API do OCI.
  • Operador de Banco de Dados: O complemento opcional do Oracle Database Operator for Kubernetes estende a API do Kubernetes com recursos e controladores personalizados para automatizar o gerenciamento do ciclo de vida do Oracle Database. O Oracle Database Operator suporta uma variedade de configurações de banco de dados e operações de ciclo de vida. Para obter mais informações, consulte a documentação do Oracle Database Operator for Kubernetes em GitHub.
  • Weblogic Operator: O complemento opcional do Kubernetes Operator WebLogic suporta a execução dos domínios do WebLogic Server e Fusion Middleware Infrastructure no Kubernetes. Para obter mais informações, consulte a documentação do WebLogic Kubernetes Operator em GitHub.
  • Gerenciador de Certificados: O complemento opcional do Gerenciador de Certificados, também conhecido como gerenciador de certificados, adiciona certificados e emissores de certificados aos clusters do Kubernetes como tipos de recursos. O Gerenciador de Certificados também simplifica o processo de obtenção, uso e renovação desses certificados. Para obter mais informações, consulte a documentação docert-manager em GitHub.
  • Cluster Autoscaler: O complemento opcional Cluster Autoscaler redimensiona automaticamente os pools de nós gerenciados de um cluster com base nas demandas de carga de trabalho do aplicativo usando o Kubernetes Cluster Autoscaler. A implantação do Kubernetes Cluster Autoscaler como um complemento de cluster, em vez de como um programa independente, simplifica a configuração e a manutenção contínua e permite especificar que você deseja que a Oracle atualize o Kubernetes Cluster Autoscaler automaticamente. Para obter mais informações, consulte Trabalhando com o Cluster Autoscaler como um Complemento do Cluster.
  • Istio: O complemento opcional Istio fornece resiliência de tráfego de linha de base automatizada, coleta de métricas de serviço, rastreamento distribuído, criptografia de tráfego, atualizações de protocolo e funcionalidade de roteamento avançado para toda a comunicação serviço a serviço. Para obter mais informações, consulte Trabalhando com o Istio como um Complemento de Cluster.
  • Controlador Nativo de Entrada: O add-on opcional do controlador de entrada nativo do OCI balanceia e roteia o tráfego de entrada para pods de serviço em execução nos nós de trabalho em um cluster do Kubernetes. Para obter mais informações, consulte Trabalhando com o Controlador de Entrada Nativo do OCI como um Complemento de Cluster.
  • Kubernetes Metrics Server: O Kubernetes Metrics Server opcional é um agregador de dados de uso de recursos em todo o cluster. O Kubernetes Metrics Server coleta métricas de recursos do kubelet em execução em cada nó de trabalho e as expõe no servidor de API do Kubernetes por meio da API de Métricas do Kubernetes. Para obter mais informações, consulte Trabalhando com o Kubernetes Metrics Server como um Complemento de Cluster.

Complementos de cluster opcionais não são implantados por padrão. Ao usar clusters aprimorados, você pode optar por implantar e configurar um número crescente de complementos de cluster opcionais usando o Kubernetes Engine.

Atualizando versões da extensão

Ao ativar um complemento de cluster, você pode especificar que deseja que a Oracle atualize o complemento automaticamente quando novas versões estiverem disponíveis ou que deseja escolher uma versão específica do complemento a ser implantado.

  • Se você especificar que deseja que o complemento seja atualizado automaticamente (comportamento padrão), a Oracle implantará a versão mais recente do complemento que suporta a versão do Kubernetes especificada para o cluster. Se uma nova versão do complemento for lançada posteriormente, a Oracle atualizará automaticamente o complemento, desde que o complemento atualizado seja compatível com as versões do Kubernetes atualmente suportadas pelo Kubernetes Engine.

    Se você configurar um complemento usando um ou mais dos argumentos de configuração do par chave/valor aprovados (consulte Argumentos de Configuração do Complemento do Cluster), a configuração será retida quando o complemento for atualizado automaticamente. No entanto, observe que qualquer outra personalização que você possa ter feito para a extensão será descartada quando a extensão for atualizada automaticamente.

    Lembre-se de que é sua responsabilidade fazer upgrade de clusters para executar versões do Kubernetes suportadas pelo Kubernetes Engine. Para aproveitar as atualizações automáticas de complementos, recomendamos que você faça upgrade dos clusters em tempo hábil para garantir que os clusters estejam sempre executando versões suportadas do Kubernetes. Se um cluster estiver executando uma versão mais antiga do Kubernetes que o Kubernetes Engine não suporta mais, os complementos do cluster poderão não ser atualizados automaticamente.

  • Se você especificar que deseja escolher a versão do complemento a ser implantado, a Oracle implanta a versão do complemento que você escolher. É sua responsabilidade verificar se a versão do complemento é compatível com a versão do Kubernetes em execução no cluster.

    Lembre-se de que é sua responsabilidade fazer upgrade de clusters para executar versões do Kubernetes suportadas pelo Kubernetes Engine. Quando a Oracle anunciar que o Kubernetes Engine deve interromper o suporte para uma versão mais antiga do Kubernetes, é sua responsabilidade fazer upgrade de qualquer cluster em execução nessa versão mais antiga do Kubernetes e também (se necessário) atualizar o complemento para uma versão compatível com a versão mais recente do Kubernetes.

Tendo ativado um complemento de cluster e especificado que você deseja que a Oracle atualize o complemento automaticamente, você poderá especificar subsequentemente, em vez disso, que deseja implantar uma versão específica do complemento. Da mesma forma, se você especificou que deseja escolher a versão do complemento a ser implantado, poderá especificar subsequentemente que você deseja que a Oracle atualize o complemento automaticamente.

Observe que, no caso do complemento do plug-in OCI VCN-Native Pod Networking CNI, independentemente de você optar por fazer com que a Oracle atualize o complemento automaticamente ou de você optar por atualizá-lo você mesmo, as atualizações só serão aplicadas na próxima vez que os nós de trabalho forem reinicializados. Consulte Updating the OCI VCN-Native Pod Networking CNI plugin.

Notas sobre complementos de cluster

Observe o seguinte ao configurar complementos do cluster:

  • Ao criar um cluster, você não pode desativar complementos essenciais do cluster. No entanto, ao editar um cluster existente, você pode optar por desativar um complemento essencial. Se desativar um complemento essencial de cluster, você será responsável por implantar e configurar um complemento alternativo para fornecer funcionalidade equivalente.
  • Ao criar um cluster, complementos essenciais de cluster são configurados para atualização automática. No entanto, você pode optar por não ter uma extensão essencial atualizada automaticamente. Se você fizer isso, você está assumindo a responsabilidade por manter o complemento atualizado.
  • Quando você ativa um add-on de cluster, pode configurar o add-on especificando um ou mais pares de chave/valor para passar como argumentos para o add-on de cluster. Por exemplo, para o Painel de Controle do Kubernetes, você especifica um valor de 3 para a chave numOfReplicas.
  • Quando você desativa um add-on de cluster usando a Console, o add-on não é removido do cluster, mas simplesmente não é usado. Para remover completamente o complemento, use a CLI ou a API.
  • O Kubernetes Engine reconcilia regularmente a configuração de complementos de cluster essenciais implantados em clusters básicos e aprimorados com as configurações de complemento de cluster padrão correspondentes. Se você configurar um complemento de cluster essencial implantado em um cluster aprimorado usando um ou mais argumentos de configuração de par de chave/valor aprovados (consulte Argumentos de Configuração de Complemento de Cluster), o Kubernetes Engine mesclará suas personalizações com a configuração padrão. No entanto, o Kubernetes Engine descarta todas as outras personalizações feitas em configurações essenciais de complemento de cluster e restaura as configurações padrão.

    No caso de clusters básicos, observe que não é garantido que as personalizações para complementos essenciais do cluster persistam. Se você fizer uma personalização em um complemento essencial de cluster que cause um conflito durante o processo de reconciliação, a personalização será revertida. Para manter personalizações essenciais de complementos de cluster, atualize clusters básicos para clusters aprimorados.