Implemente o OCI Kubernetes Engine com o Autonomous Transaction Processing no Oracle Cloud
Implemente o OCI Kubernetes Engine (OKE) com o banco de dados Oracle Autonomous Transaction Processing (ATP) para criar, implementar e gerenciar de forma confiável aplicativos nativos da nuvem usando a tecnologia de banco de dados Oracle no Oracle Cloud Infrastructure.
Arquitetura
Implemente o Oracle Cloud Infrastructure Kubernetes Engine (OKE) com o banco de dados Oracle Autonomous Transaction Processing (ATP) para criar, implementar e gerenciar de forma confiável aplicativos nativos da nuvem usando a tecnologia de banco de dados Oracle no Oracle Cloud Infrastructure.
O diagrama a seguir ilustra a arquitetura.
A arquitetura tem os seguintes componentes:
- Regiões
Região do Oracle Cloud Infrastructure é uma área geográfica localizada que contém um ou mais data centers, denominada domínios de disponibilidade. As regiões são independentes de outras regiões, e grandes distâncias podem separá-las (entre países ou até mesmo continentes).
- Domínios de disponibilidade
Domínios de disponibilidade são data centers stand-alone e independentes dentro de uma região. Os recursos físicos de cada domínio de disponibilidade são isolados dos recursos de outros domínios de disponibilidade, o que oferece tolerância a falhas. Os domínios de disponibilidade não compartilham infraestrutura como energia ou refrigeração ou a rede interna do domínio de disponibilidade. Portanto, uma falha em um domínio de disponibilidade não deve afetar os outros domínios de disponibilidade na região.
- Domínios de falha
Um domínio de falha é um agrupamento de hardware e infraestrutura dentro de um domínio de disponibilidade. Cada domínio de disponibilidade tem três domínios de falha com energia e hardware independentes. O OCI Kubernetes Engine trata a distribuição dos nós no cluster em vários domínios de falha. Portanto, seu aplicativo conteinerizado é protegido contra falha física do servidor, manutenção do sistema e falha de energia em um domínio de falha.
- Rede virtual na nuvem (VCN) e sub-redes
Uma VCN é uma rede personalizável definida por software que você configura em uma região do Oracle Cloud Infrastructure. Como as redes tradicionais de data center, as VCNs oferecem controle sobre seu ambiente de rede. Uma VCN pode ter vários blocos CIDR não sobrepostos que você pode alterar após a criação da VCN. Você pode segmentar uma VCN em sub-redes, com escopo definido para uma região ou para um domínio de disponibilidade. Cada sub-rede consiste em um intervalo contíguo de endereços que não se sobrepõem a outras sub-redes da VCN. Você pode alterar o tamanho de uma sub-rede após a criação. Uma sub-rede pode ser pública ou privada.
- Balanceador de carga
O balanceador de carga fornecido pelo OCI Kubernetes Engine (OKE) fornece distribuição automatizada de tráfego de um único ponto de entrada para recursos no cluster.
- Autonomous Transaction Processing
O Oracle Autonomous Transaction Processing é um banco de dados independente, autoprotegido e autorreparável otimizado para cargas de trabalho de processamento de transações. Você não precisa configurar nem gerenciar nenhum hardware, nem instalar nenhum software. O Oracle Cloud Infrastructure trata da criação do banco de dados, bem como do backup, da aplicação de patches, do upgrade e do ajuste do banco de dados.
- Mecanismo do Kubernetes do OCI
O Oracle Cloud Infrastructure Kubernetes Engine (Kubernetes Engine ou OKE) é um serviço totalmente gerenciado, escalável e altamente disponível que você pode usar para implantar seus aplicativos em contêineres na nuvem. Você especifica os recursos de computação necessários, e o serviço Kubernetes Engine os provisiona no Oracle Cloud Infrastructure em uma tenancy existente. O OKE usa o Kubernetes para automatizar a implantação, o dimensionamento e o gerenciamento de aplicativos em contêineres entre clusters de hosts.
Recomendações
Use as recomendações a seguir como ponto de partida. Seus requisitos podem ser diferentes da arquitetura descrita aqui.
- VCN
Ao criar uma VCN, determine o número de blocos CIDR necessários e o tamanho de cada bloco com base no número de recursos que você planeja anexar a sub-redes na VCN. Use blocos CIDR que estejam dentro do espaço de endereço IP privado padrão.
Selecione blocos CIDR que não se sobreponham a nenhuma outra rede (no Oracle Cloud Infrastructure, em seu data center local ou em outro provedor de nuvem) para a qual você pretende configurar conexões privadas.
Depois de criar uma VCN, você poderá alterar, adicionar e remover seus blocos CIDR.
Ao projetar as sub-redes, considere seus requisitos de fluxo de tráfego e segurança. Anexe todos os recursos dentro de uma camada ou atribuição específica à mesma sub-rede, que pode servir como um limite de segurança.
Usar sub-redes regionais.
Para simplificar, essa arquitetura usa uma sub-rede pública para hospedar o Oracle Cloud Infrastructure Kubernetes Engine(OKE). Você também pode usar uma sub-rede privada. Nesse caso, use um gateway NAT para permitir o acesso à internet pública do cluster.
- Mecanismo do Kubernetes do OCI
Nessa arquitetura, os nós de trabalho no cluster do Kubernetes usam a forma VM.Standard2.1 e são executados no Oracle Linux. Você pode criar até 1000 nós em um cluster.
- Banco de dados autônomo
Nesta arquitetura, a aplicação armazena os dados relacionais em um banco de dados Oracle Autonomous Transaction Processing. Recomendamos o uso da versão mais recente.
Considerações
Ao implementar essa arquitetura, considere seus requisitos para os seguintes parâmetros:
- Escalabilidade do banco de dados autônomo
Você pode dimensionar manualmente o número base de núcleos de CPU do banco de dados para mais ou para menos a qualquer momento. A funcionalidade de dimensionamento automático do Autonomous Transaction Processing permite que o seu banco de dados use até três vezes o número base atual de núcleos de CPU a qualquer momento. À medida que a demanda aumenta, o dimensionamento automático aumenta automaticamente o número de núcleos em uso. O Autonomous Transaction Processing permite dimensionar a capacidade de armazenamento do banco de dados a qualquer momento, sem afetar a disponibilidade ou o desempenho.
- Backups de bancos de dados autônomos
O Oracle Cloud Infrastructure faz backup automaticamente de seus bancos de dados autônomos e retém esses backups por 60 dias. Você pode restaurar e recuperar o banco de dados a qualquer momento nesse período de retenção. Você também pode criar backups manuais para complementar seus backups automáticos. Os backups manuais são armazenados em um bucket que você cria do Oracle Cloud Infrastructure Object Storage e são retidos por 60 dias.
- Escalabilidade do Kubernetes
Você pode expandir seu aplicativo atualizando o número de nós de trabalho no cluster do Kubernetes, dependendo da carga. Da mesma forma, você pode ampliar reduzindo o número de nós de trabalho no cluster. Ao criar um serviço no cluster do Kubernetes, você pode criar um balanceador de carga para distribuir o tráfego de serviço entre os nós designados para esse serviço.
- Disponibilidade do aplicativo
Os domínios de falha fornecem a melhor resiliência dentro de um único domínio de disponibilidade. Você também pode implantar instâncias ou nós que executam as mesmas tarefas em vários domínios de disponibilidade. Esse design remove um único ponto de falha introduzindo redundância.
- Segurança
Use políticas que restrinjam quem pode acessar quais recursos do Oracle Cloud Infrastructure e como eles podem acessá-los.
O OCI Kubernetes Engine é integrado ao Oracle Cloud Infrastructure Identity and Access Management (IAM). O serviço IAM fornece autenticação fácil com funcionalidade nativa de identidade do Oracle Cloud Infrastructure.
Implante
O código necessário para implantar essa arquitetura de referência está disponível em GitHub. Você pode extrair o código para o Oracle Cloud Infrastructure Resource Manager com um único clique, criar a pilha e implantá-la. Como alternativa, faça download do código de GitHub para seu computador, personalize o código e implante a arquitetura usando a interface de linha de comando do Terraform.
- Implante usando o Oracle Cloud Infrastructure Resource Manager:
- Clique
Se você ainda não tiver acessado, informe a tenancy e as credenciais do usuário.
- Revise e aceite os termos e condições.
- Selecione a região na qual você deseja implantar a pilha.
- Siga os prompts na tela e as instruções para criar a pilha.
- Após criar a pilha, clique em Ações do Terraform e selecione Planejar.
- Aguarde a conclusão do job e revise o plano.
Para fazer qualquer alteração, retorne à página Detalhes da Pilha, clique em Editar Pilha e faça as alterações necessárias. Em seguida, execute a ação Planejar novamente.
- Se nenhuma alteração adicional for necessária, retorne à página Detalhes da Pilha, clique em Ações do Terraform e selecione Aplicar.
- Clique
- Implante usando a interface de linha de comando do Terraform:
- Vá para GitHub.
- Faça download ou clone o código no seu computador local.
- Siga as instruções em
deploy/complete/README.md
.
Explorar Mais
Saiba mais sobre a implantação de aplicativos baseados em microsserviços em contêineres em clusters do Kubernetes na nuvem.