Infraestrutura de Clusters OKE - Produção NOXTEC¶
Introdução¶
O cluster OKE-NOX-PRD é dedicado ao ambiente de produção da vertical NOXTEC, onde as aplicações são executadas para atender os usuários finais. Este ambiente é projetado para oferecer alta disponibilidade, escalabilidade e performance em nível de produção, garantindo a continuidade dos serviços críticos de negócio para as soluções NOXTEC.
Cluster OKE-NOX-PRD – Arquitetura e Configuração¶
A seguir, está representada a arquitetura do cluster OKE-NOX-PRD, implantado na região sa-saopaulo-1 da OCI. A infraestrutura foi desenhada para garantir alta disponibilidade e resiliência, aproveitando múltiplos domínios de falha (Fault Domains) dentro da região.
Figura 1: Arquitetura Cluster OKE-NOX-PRD
Infraestrutura e Rede¶
O cluster OKE-NOX-PRD está implantado na região sa-saopaulo-1 da OCI, utilizando a VCN VCN-OKE-NOXTEC-STH (10.151.21.0/24). A arquitetura foi projetada seguindo as melhores práticas da OCI para Kubernetes, com recursos distribuídos entre três domínios de falha (FD1, FD2, FD3) para garantir alta disponibilidade e tolerância a falhas.
Subnets do Cluster OKE-NOX-PRD¶
| Subnet | CIDR | Propósito |
|---|---|---|
| workers-STH-NOX | 10.151.21.0/26 |
Nós de trabalho Kubernetes (worker nodes) |
| ilb-STH-NOX | 10.151.21.64/28 |
Load balancer interno |
| operator-STH-NOX | 10.151.21.88/30 |
Operações de gestão do cluster |
| bastion-STH-NOX | 10.151.21.96/29 |
Acesso seguro ao cluster via bastion host |
| cp-STH-NOX | 10.151.21.104/29 |
Kubernetes Control Plane |
| fss-STH-NOX | 10.151.21.112/28 |
File Storage Service |
Especificações do Kubernetes¶
- Versão do Kubernetes: v1.34.1
- Endpoint API privado: 10.151.21.108:6443
- Plugin de Rede (CNI): FLANNEL_OVERLAY
Capacidade Computacional¶
O cluster OKE-NOX-PRD possui dois node pools com as seguintes especificações:
Node Pool - workers¶
- Tipo de instância:
VM.Standard.E5.Flex - Capacidade computacional: 2 OCPUs (4 vCPUs)
- Memória RAM: 8 GB por nó
- Volume de boot: 100 GB
- Sistema Operacional: Oracle Linux 8
- Auto-scaling:
- Habilitado
- Tamanho inicial: 2 nós
- Tamanho mínimo: 2 nós
- Tamanho máximo: 5 nós
Node Pool - autoscaler¶
- Tipo de instância:
VM.Standard.E5.Flex - Capacidade computacional: 2 OCPUs (4 vCPUs)
- Memória RAM: 16 GB por nó
- Tamanho: 1 nó
- Propósito: Dedicado para o Cluster Autoscaler
Acesso ao Cluster¶
O endpoint da API do Kubernetes é privado e só pode ser acessado através de: - Um host bastion configurado - Uma estação de trabalho autorizada com acesso à subnet do endpoint da API
Configuração do acesso ao Cluster¶
Pré-requisitos¶
Para acessar o cluster OKE-NOX-PRD, é necessário atender aos seguintes requisitos:
-
Ferramentas necessárias
- Oracle Cloud Infrastructure CLI (versão 2.24.0 ou superior)
- Kubectl - ferramenta de linha de comando para Kubernetes
-
Acessos e permissões
- Conexão VPN estabelecida com a rede corporativa
- Credenciais OCI com permissões IAM adequadas para o cluster
- Acesso de rede liberado para a subnet do Kubernetes API endpoint
-
Verificações
- Confirme a versão do OCI CLI com o comando:
oci -v - Verifique se sua máquina consegue resolver o endpoint privado do cluster
- Confirme a versão do OCI CLI com o comando:
Geração do kubeconfig¶
```bash # Criar diretório para o arquivo kubeconfig mkdir -p $HOME/.kube
# Gerar e baixar o arquivo kubeconfig
oci ce cluster create-kubeconfig \
--cluster-id
# Configurar variável de ambiente export KUBECONFIG=$HOME/.kube/config ```
Observação: Para encontrar o OCI ID do cluster, acesse o Console OCI, navegue até "Developer Services" > "Kubernetes Clusters (OKE)", selecione o cluster desejado e o ID será exibido nos detalhes do cluster como "Cluster Id" ou copiável através do botão "Copy" ao lado do identificador.
Figura 2: Console OCI - Detalhes do Cluster NOX-PRD
Componentes de Infraestrutura Avançada¶
O ambiente de produção NOXTEC é equipado com componentes avançados de infraestrutura que garantem alta disponibilidade, segurança e monitoramento contínuo:
Service Mesh com Istio¶
O Istio no cluster NOXTEC fornece uma camada avançada de rede com:
- Balanceamento de carga inteligente: Distribuição otimizada de tráfego entre instâncias de serviço
- Políticas de segurança zero-trust: Comunicação autenticada e criptografada entre todos os serviços
- Deployment progressivo: Estratégias de implantação gradual como blue-green e canary
- Controle de tráfego baseado em regras: Capacidade de redirecionar requisições com base em múltiplos parâmetros
Os detalhes de instalação, Gateway API, wildcard TLS e papel do lb_publlic_ip estão centralizados em Networking & Service Mesh.
Visualização e Gerenciamento com Kiali¶
O Kiali oferece uma interface visual completa para o service mesh:
- Dashboard de serviços: Visão consolidada do estado de todos os serviços
- Gráficos de comunicação: Visualização de dependências e fluxos de dados
- Análise de performance: Identificação de latências e gargalos na comunicação
- Configuração simplificada: Interface para ajuste de políticas do Istio sem necessidade de editar YAML manualmente
O fluxo de publicação, URL, Ingress e autenticação OIDC do Kiali está documentado na página dedicada da nova seção de networking.
Kubernetes Gateway API¶
O cluster implementa o Gateway API, a próxima geração de APIs de roteamento do Kubernetes que substitui o Ingress tradicional, oferecendo maior flexibilidade e expressividade.
A implementação utiliza os seguintes recursos:
- GatewayClass: Define o tipo de implementação do controlador de Gateway usado
- Gateway: Expõe um ou mais listeners para tráfego de entrada
- HTTPRoute: Define regras de roteamento para tráfego HTTP
O comportamento real do Gateway compartilhado e da integração com ExternalDNS foi movido para a documentação central de networking para evitar duplicação entre HML e NOX.
External Secrets Operator (ESO)¶
O ESO sincroniza segredos de provedores externos para Kubernetes:
- Integração com Vault: Obtenção segura de credenciais e chaves do HashiCorp Vault
- Rotação automática: Atualização de segredos sem necessidade de redeploy
- Centralização: Gerenciamento de segredos em um local central, distribuído para todos os namespaces necessários
Cluster Autoscaler¶
O Cluster Autoscaler (versão 9.46.3) gerencia o escalonamento automático de nós do cluster:
- Escalonamento automático: Adiciona ou remove nós baseado na demanda de recursos dos pods
- Node pool dedicado: Executa em um node pool específico (
autoscaler) comallow_autoscaler = true - Integração OKE: Utiliza a API do OCI para gerenciar os node pools do cluster
O ambiente de produção NOXTEC opera sob políticas rigorosas de segurança e disponibilidade:
- Alta disponibilidade: Aplicações configuradas com redundância e replicação
- Monitoramento contínuo: Integração com ferramentas de observabilidade do cluster TOOLS
- Escalabilidade automática: Pods e nós escalados automaticamente conforme a demanda
- Políticas de atualização: Atualizações planejadas com janelas de manutenção específicas
- Backup e recuperação: Políticas de backup regulares para dados aplicacionais
- Segurança reforçada: Implementação de políticas de segurança específicas para as aplicações NOXTEC
Conclusão¶
A arquitetura do cluster OKE-NOX-PRD fornece uma base sólida e confiável para as aplicações de produção da vertical NOXTEC. Com recursos de auto-scaling, distribuição entre domínios de falha e políticas de segurança rigorosas, o ambiente garante a continuidade dos serviços mesmo em situações de alta demanda ou falhas parciais na infraestrutura.