Implantar um Aplicativo Oracle Autonomous Database e Oracle APEX pronto para Produção Segura
Use o Oracle APEX para criar aplicativos empresariais escaláveis e seguros, com recursos de classe mundial, que você pode implantar em qualquer lugar. O Oracle APEX é uma plataforma de desenvolvimento com pouco código. Quando o aplicativo estiver ativo e em execução, você poderá usar o Terraform para automatizar a implantação em um ambiente do Oracle Cloud Infrastructure.
Arquitetura
Essa arquitetura aproveita o balanceador de carga para isolar um banco de dados Oracle Autonomous Transaction Processing em uma sub-rede privada separada. A zona de destino do Oracle Cloud Infrastructure (OCI) automatizada pelo Terraform fornece uma infraestrutura segura para executar o aplicativo Oracle APEX em cima do Oracle Autonomous Database compartilhado exposto pelo ponto final privado.
O diagrama a seguir ilustra essa arquitetura de referência.

Descrição da ilustração apex-app-adb.png
A arquitetura tem os seguintes componentes:
- Locação
Uma tenancy é uma partição segura e isolada que a Oracle configura no Oracle Cloud quando você acessa o Oracle Cloud Infrastructure. Você pode criar, organizar e administrar seus recursos no Oracle Cloud em sua tenancy. Uma tenancy é sinônimo de uma empresa ou organização. Normalmente, uma empresa terá uma única locação e refletirá sua estrutura organizacional nessa locação. Em geral, uma única tenancy está associada a uma única assinatura e uma única assinatura geralmente só tem uma tenancy.
- Região
Uma região do Oracle Cloud Infrastructure é uma área geográfica localizada que contém um ou mais data centers, denominados domínios de disponibilidade. As regiões são independentes das outras regiões, e grandes distâncias podem se separar (em países ou até mesmo continentes).
- Compartimento
Os compartimentos são partições lógicas entre regiões em uma tenancy do Oracle Cloud Infrastructure. Use compartimentos para organizar seus recursos no Oracle Cloud, controlar o acesso aos recursos e definir cotas de uso. Para controlar o acesso aos recursos em um determinado compartimento, você define políticas que especificam quem pode acessar os recursos e quais ações eles podem executar.
- Domínios de disponibilidade
Os domínios de disponibilidade são data centers independentes 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, que oferecem tolerância a falhas. Os domínios de disponibilidade não compartilham infraestrutura como energia ou resfriamento ou rede interna. Portanto, é pouco provável que uma falha em um domínio de disponibilidade afete os outros domínios
- 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 de data center tradicionais, as VCNs dão a você total controle sobre seu ambiente de rede. Uma VCN pode ter vários blocos CIDR não sobrepostos que você pode alterar após criar a VCN. Você pode segmentar uma VCN em sub-redes, que podem ter escopo em uma região ou em um domínio de disponibilidade. Cada sub-rede consiste em um intervalo contínuo de endereços que não se sobrepõem com as 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 serviço Oracle Cloud Infrastructure Load Balancing fornece distribuição automatizada de tráfego de um único ponto de entrada para vários servidores no back-end.
- Grupo de segurança de rede (NSG)
Os NSGs atuam como firewalls virtuais para seus recursos de nuvem. Com o modelo de segurança de confiança zero do Oracle Cloud Infrastructure, todo o tráfego é negado e você pode controlar o tráfego de rede dentro de uma VCN. Um NSG consiste em um conjunto de regras de segurança de entrada e saída que se aplicam somente a um conjunto especificado de VNICs em uma única VCN.
- Gateway NAT (Network address translation)
Um gateway NAT permite que recursos privados em uma VCN acessem hosts na internet, sem expor esses recursos a conexões provenientes da internet.
- Gateway de serviço
O gateway de serviço fornece acesso de uma VCN a outros serviços, como o Oracle Cloud Infrastructure Object Storage. O tráfego da VCN para o serviço Oracle percorre a malha da rede Oracle e nunca atravessa a internet.
- Gateway de internet
O gateway de internet permite o tráfego entre as sub-redes públicas em uma VCN e a internet pública.
- Banco de dados autônomo
Os bancos de dados autônomos do Oracle Cloud Infrastructure são ambientes de banco de dados totalmente gerenciados e pré-configurados que você pode usar para cargas de trabalho de processamento de transações e data warehousing. Não é necessário configurar ou gerenciar nenhum hardware ou instalar qualquer software. O Oracle Cloud Infrastructure controla a criação do banco de dados, bem como o backup, a aplicação de patches, o upgrade e o ajuste do banco de dados.
- Autonomous Transaction Processing
O Oracle Autonomous Transaction Processing é um serviço de banco de dados autônomo, com segurança automática e autorreparo otimizado para cargas de trabalho de processamento de transações.
- Serviço Bastion
O Bastion do Oracle Cloud Infrastructure fornece acesso seguro restrito e limitado por tempo a recursos que não têm pontos finais públicos e que exigem controles rigorosos de acesso a recursos, como bare metal e máquinas virtuais, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Container Engine for Kubernetes (OKE), e qualquer outro recurso que permita acesso SSH (Secure Shell Protocol). Com o serviço Bastion do Oracle Cloud Infrastructure, você pode ativar o acesso a hosts privados sem implantar e manter um jump host. Além disso, você obtém postura de segurança aprimorada com permissões baseadas em identidade e uma sessão SSH centralizada, auditada e limitada por tempo. O Bastion do Oracle Cloud Infrastructure elimina a necessidade de um IP público para acesso ao bastion, eliminando o aborrecimento e a possível superfície de ataque ao fornecer acesso remoto.
Recomendações
- VCN
Uma VCN é implantada pela solução terraform, mas essa solução é modular e você pode usar uma VCN existente.
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 às sub-redes na VCN. Use blocos CIDR que estão dentro do espaço de endereço IP privado padrão.
Selecione os blocos CIDR que não se sobrepõem 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 seu fluxo de tráfego e os requisitos de segurança. Anexe todos os recursos dentro de uma camada ou atribuição específica à mesma sub-rede, que pode servir como limite de segurança.
- Grupos de Segurança de Rede (NSGs)
Você pode usar NSGs para definir um conjunto de regras de entrada e saída que se aplicam a VNICs específicas. Recomendamos o uso de NSGs em vez de listas de segurança, porque os NSGs permitem que você separe a arquitetura da sub-rede da VCN dos requisitos de segurança do seu aplicativo.
- Cloud Guard
Clone e personalize as receitas padrão fornecidas pela Oracle para criar receitas personalizadas do detector e do respondedor. Essas receitas permitem especificar que tipo de violações de segurança geram um aviso e quais ações podem ser executadas nelas. Por exemplo, talvez você queira detectar buckets do Object Storage que tenham visibilidade definida como pública.
Aplique o Cloud Guard no nível da tenancy para abranger o escopo mais amplo e reduzir a carga administrativa de manter várias configurações.
Você também pode usar o recurso Lista Gerenciada para aplicar determinadas configurações aos detectores.
- Largura de banda do balanceador de carga
Ao criar o balanceador de carga, você pode selecionar uma forma predefinida que forneça uma largura de banda fixa ou especificar uma forma personalizada (flexível) na qual você define uma faixa de largura de banda e permite que o serviço dimensione a largura de banda automaticamente com base nos padrões de tráfego. Com qualquer uma das abordagens, você pode alterar a configuração a qualquer momento após criar o balanceador de carga.
Considerações
Considere os seguintes pontos ao implantar esta arquitetura de referência:
- Desempenho
A solução Terraform provisiona em minutos e tem o aplicativo Oracle APEX ativo e em execução em um novo banco de dados autônomo.
- Segurança
A instância de computação e o banco de dados autônomo devem estar em uma sub-rede privada e protegidos com grupos de segurança de rede.
- Disponibilidade
Para planejar a alta disponibilidade de suas instâncias de computação, as principais estratégias de design que você deve considerar são:
- Elimine pontos únicos de falha, aproveitando adequadamente os três domínios de falha de um domínio de disponibilidade ou implantando instâncias em vários domínios de disponibilidade.
- Usar endereços IP flutuantes.
- Certifique-se de que seu design protege a disponibilidade e a integridade dos dados das suas instâncias do Compute.