Escolha a Arquitetura MySQL Certa na OCI
À medida que as organizações que dependem de bancos de dados de código-fonte aberto, como o Oracle HeatWave MySQL, migram de soluções on-premises autogerenciadas para serviços de banco de dados em nuvem gerenciados (como banco de dados MySQL) para reduzir custos e melhorar a eficiência operacional, é importante aprender a escolher a arquitetura MySQL certa na Oracle Cloud Infrastructure (OCI).
O Oracle HeatWave MySQL é um serviço de banco de dados gerenciado na OCI que visa fornecer um serviço de banco de dados altamente escalável e disponível sem a necessidade de planejar e executar tarefas operacionais tediosas do dia a dia, como provisionamento, backup, patches e atualizações de banco de dados. Se você adotar o Oracle HeatWave MySQL para suas cargas de trabalho na OCI, não estará apenas reduzindo o custo operacional atual de seus bancos de dados autogerenciados, mas também podendo se concentrar em trabalhos de alto valor e inovação. Para obter os benefícios máximos da execução de suas cargas de trabalho no Oracle HeatWave MySQL e na OCI, você precisará entender o Oracle HeatWave MySQL e a OCI para projetar uma arquitetura de nuvem flexível e escalável que permita crescer e expandir seu uso da nuvem com base em suas necessidades e requisitos de negócios.
Arquitetura
Essa arquitetura de referência tem o objetivo de fornecer informações técnicas relevantes para ajudar você a projetar e otimizar uma arquitetura MySQL flexível e escalável na OCI para oferecer suporte aos requisitos de carga de trabalho.
O escopo desta arquitetura de referência pressupõe os seguintes requisitos e especificações não funcionais:
Domínios | Requisitos | Descrições |
---|---|---|
Disponibilidade | R1 | A arquitetura deve estar altamente disponível para suportar a operação 24 horas por dia, 7 dias por semana, com tempo de atividade de serviço de pelo menos 99,95% |
R2 |
|
|
Escalabilidade | R3 | A arquitetura deve ser flexível e escalável para suportar as cargas de trabalho |
Segurança | R4 | A arquitetura deve ser altamente protegida com mecanismos de controle de acesso e autorização |
Com base nesses requisitos, o modelo de Alta Disponibilidade do Oracle HeatWave MySQL é selecionado junto com outros serviços da OCI para criar a arquitetura para suas cargas de trabalho.
Esta arquitetura de referência é ilustrada em três pontos de vista diferentes para abordar as preocupações dos arquitetos de infraestrutura, arquitetos de informação, engenheiros DevOps e engenheiros de operação.
View de infraestrutura
mysql-oci-architecture-infrastructure-oracle.zip
Nesta visão de arquitetura, uma rede virtual na nuvem regional é provisionada com sub-redes públicas e privadas em uma única região da OCI que compreende três domínios de disponibilidade (ADs). O modelo de Alta Disponibilidade do Oracle HeatWave MySQL implantará três instâncias de banco de dados MySQL redundantes entre os três ADs em uma região OCI com vários ADs ou três domínios de falha em uma região OCI com um único AD.
Esta view de arquitetura ilustra as opções de implantação de aplicativos e as opções de conectividade de rede para o Oracle HeatWave MySQL:
- O Oracle HeatWave MySQL é implantado na sub-rede privada protegida sem qualquer acesso público pela internet.
- Opções de conectividade para acessar o Oracle HeatWave MySQL:
- Pela Internet usando o Oracle Cloud Infrastructure Load Balancing.
- Por meio de uma VPN entre seus data centers e regiões do OCI usando o Gateway de Roteamento Dinâmico do OCI:
- VPN site a site do OCI
- Oracle Cloud Infrastructure FastConnect
- Geralmente, há três padrões de implantação de aplicativos para acessar o Oracle HeatWave MySQL na OCI:
- Aplicativos implantados em instâncias do Oracle Cloud Infrastructure Compute ou instâncias do Oracle Cloud Infrastructure Kubernetes Engine (o padrão mais preferido com o aplicativo e o MySQL Database colocados na mesma região de nuvem do OCI).
- Aplicativos hospedados em seu data center.
- Aplicativos hospedados em nuvem não OCI (como Amazon Web Services, Microsoft Azure e outros).
View de infraestrutura (escalabilidade/redundância)
mysql-oci-architecture-scalability-oracle.zip
Nesta visão de arquitetura, a principal região da OCI com o modelo de Alta Disponibilidade do Oracle HeatWave MySQL está interconectada com outra região da OCI por meio do Gateway de Roteamento Dinâmico da OCI. Esta view de arquitetura ilustra a escalabilidade do MySQL na mesma região do OCI, bem como a redundância em outra região do OCI:
- As instâncias principais do banco de dados MySQL podem ser dimensionadas facilmente implantando as instâncias "Réplica de Leitura Gerenciada" na mesma região do OCI para dimensionar suas transações de leitura (consulte Explorar Mais).
- As instâncias MySQL principais podem ser replicadas para uma réplica MySQL implantada em outra região do OCI para fornecer redundância para suas cargas de trabalho (consulte Explorar Mais).
Visualização de acesso ao banco de dados
Esta view de arquitetura ilustra as opções de ferramentas para trabalhar com o Oracle HeatWave MySQL para administradores e desenvolvedores de bancos de dados:
- As ferramentas do OCI, como o OCI Database Tools (SQL Worksheet) e o Oracle Cloud Infrastructure Cloud Shell com a ferramenta pré-instalada com o MySQL Shell, podem ser acessadas usando navegadores Web pela internet pública para trabalhar com o MySQL.
- O Oracle Cloud Infrastructure Bastion pode ser usado para conectar suas ferramentas com o Oracle HeatWave MySQL pela Internet.
- O serviço Oracle Cloud Infrastructure Bastion pode ser usado para conectar suas ferramentas ao Oracle MySQL Database Service pela internet.
- O Visual Studio Code com a versão para visualização do plug-in MySQL Shell também pode ser usado com configuração mínima para estabelecer conexão com o Oracle HeatWave MySQL.
mysql-oci-architecture-database-access-oracle.zip
Exibição de operação
Esta view de arquitetura ilustra os aspectos de monitoramento do Oracle HeatWave MySQL usando os serviços do Oracle Cloud Observability and Management Platform:
- Crie limites relevantes na console do Oracle HeatWave MySQL para acionar alarmes para ação de suporte à operação.
- Monitoramento orientado a eventos usando o OCI Events para rastrear eventos MySQL específicos (por exemplo, reinicialização do banco de dados).
- Monitoramento em tempo real usando o OCI Dashboard para criar personalizar o OCI Dashboard em instâncias MySQL específicas.
mysql-oci-architecture-operation-oracle.zip
- Região
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.
- 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 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.
- Lista de segurança
Para cada sub-rede, você pode criar regras de segurança que especifiquem a origem, o destino e o tipo de tráfego que deve ser permitido dentro e fora da sub-rede.
- Computação
Com o Oracle Cloud Infrastructure Compute, você pode provisionar e gerenciar hosts de computação na nuvem. Você pode iniciar instâncias de computação com formas que atendam aos seus requisitos de recursos para CPU, memória, largura de banda de rede e armazenamento. Depois de criar uma instância de computação, você pode acessá-la com segurança, reiniciá-la, anexar e desconectar volumes e encerrá-la quando não precisar mais dela.
- Eventos
Os serviços do Oracle Cloud Infrastructure emitem eventos, que são mensagens estruturadas que descrevem as alterações nos recursos. Os eventos são emitidos para operações de criação, leitura, atualização ou exclusão (CRUD), alterações no estado do ciclo de vida do recurso e eventos do sistema que afetam os recursos da nuvem.
- Notifications
O serviço Oracle Cloud Infrastructure Notifications transmite mensagens a componentes distribuídos por meio de um padrão publicar-assinar, entregando mensagens seguras, altamente confiáveis, de baixa latência e duráveis para aplicativos hospedados no Oracle Cloud Infrastructure.
- Serviço Bastion
O Oracle Cloud Infrastructure Bastion fornece acesso seguro restrito e limitado por tempo a recursos que não têm pontos finais públicos e que exigem controles rígidos de acesso a recursos, como bare metal e máquinas virtuais, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Cloud Infrastructure Kubernetes Engine (OKE) e qualquer outro recurso que permita acesso ao Secure Shell Protocol (SSH). Com o serviço OCI Bastion, você pode permitir o acesso a hosts privados sem implantar e manter um jump host. Além disso, você ganha uma postura de segurança aprimorada com permissões baseadas em identidade e uma sessão SSH centralizada, auditada e limitada por tempo. O OCI Bastion elimina a necessidade de um IP público para acesso ao bastion, eliminando o aborrecimento e a potencial superfície de ataque ao fornecer acesso remoto.
- FastConnect
O Oracle Cloud Infrastructure FastConnect fornece uma maneira fácil de criar uma conexão privada dedicada entre o seu data center e o Oracle Cloud Infrastructure. O FastConnect oferece opções de largura de banda maior e uma experiência de rede mais confiável quando comparado com conexões baseadas na internet.
- MySQL HeatWave
O Oracle MySQL Database Service é um serviço de banco de dados totalmente gerenciado que permite aos desenvolvedores desenvolverem e implantarem rapidamente aplicativos seguros e nativos da nuvem usando o banco de dados de código aberto mais popular do mundo. O Oracle HeatWave MySQL é um acelerador de consultas na memória novo, integrado e de alto desempenho para o Oracle MySQL Database Service que acelera o desempenho do MySQL para análises e consultas transacionais.
Recomendações
Use as recomendações a seguir como ponto de partida para projetar a arquitetura OCI de acordo com seus requisitos de carga de trabalho.
- VCN
- Use sub-redes regionais para fins de flexibilidade.
- 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:
10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255
- Selecione blocos CIDR que não se sobreponham a nenhuma outra rede (no OCI, 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. O Oracle MySQL Database Service sempre vive em uma sub-rede privada.
- Segurança
- Para recursos que exigem segurança máxima, a Oracle recomenda o uso de zonas de segurança. Uma zona de segurança é um compartimento associado a uma receita de políticas de segurança definida pela Oracle baseada nas melhores práticas. Por exemplo, os recursos de uma zona de segurança não devem ser acessíveis por meio da internet pública e devem ser criptografados usando chaves gerenciadas pelo cliente. Quando você criar e atualizar recursos em uma zona de segurança, o OCI validará as operações de acordo com as políticas na receita da zona de segurança e negará operações que violem quaisquer políticas.
- Cloud Guard
- Clone e personalize as receitas padrão fornecidas pela Oracle para criar receitas personalizadas de detector e respondedor. Essas receitas permitem que você especifique 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 Oracle Cloud Infrastructure Object Storage com visibilidade pública.
- 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 de sub-rede da VCN dos requisitos de segurança do seu aplicativo.
Considerações
Ao padronizar e operacionalizar o Oracle HeatWave MySQL como seu principal serviço de banco de dados em nuvem, considere essas outras configurações de serviço em nuvem para facilitar a operação e a flexibilidade.
- Conectividade de rede
- Esteja ciente do limite flexível de vários limites de VCN ao projetar sua rede na nuvem, por exemplo, limite de 50 VCN por tenancy do OCI. Esses limites podem ser alterados enviando uma solicitação de serviço ao suporte do OCI.
- O Oracle HeatWave MySQL requer um conjunto mínimo de endereços IP privados para fins de manutenção:
- MySQL Standalone requer três endereços IP privados
- MySQL A Alta Disponibilidade requer sete endereços IP privados
- O serviço Oracle Cloud Infrastructure Bastion é limitado a um uso máximo de três horas; portanto, se você precisar de um serviço bastion altamente disponível para seus aplicativos ou fins de desenvolvimento, será melhor usar uma instância dedicada do Oracle Cloud Infrastructure Compute como o bastion host para estabelecer conexão com instâncias do MySQL.
- Operabilidade
Certifique-se de que o Painel de Controle do OCI crie um painel de controle personalizado para sua frota de instâncias do MySQL para sua operação de serviço.
- Disponibilidade
Se você estiver planejando criar uma réplica MySQL como backup em outra região, considere a latência de rede entre a região principal e a região de backup. O OCI fornece informações de latência de rede entre regiões para ajudá-lo a decidir qual região será usada como sua região de backup para sua região principal. O outro fator de consideração para a réplica MySQL é a duração de tempo (binlog_expire_logs_seconds) para manter os logs de transações binárias antes que os logs sejam excluídos. A duração padrão para manter o log de transações binárias é de 3.600 segundos ou 60 minutos. Se você estiver tendo latência de rede severa entre suas regiões principal e de backup, talvez queira aumentar esse parâmetro para que os logs de transação sejam mantidos por mais tempo para que possam ser transmitidos e aplicados na réplica MySQL na região de backup.
- Portabilidade e flexibilidade
- Faça uso do DNS (Domain Name Service) do OCI para resolver o nome de host MySQL para portabilidade. Designe um nome de host personalizado com base na sua convenção de nomenclatura à instância MySQL durante a criação para que o nome do host possa ser resolvido pelo DNS do OCI como resolvedor de VCN.
- Use o nome do host DNS do Oracle Cloud Infrastructure Load Balancing para instâncias de réplica de leitura MySQL gerenciadas para minimizar as alterações no código do aplicativo para fins de flexibilidade. Você pode descobrir o nome do host DNS designado deste Oracle Cloud Infrastructure Load Balancing na console de serviços DNS do OCI.
Explorar Mais
Saiba mais sobre o Oracle HeatWave MySQL.
Revise estes recursos adicionais:
- Cursos de treinamento MySQL gratuitos
- Migre do AWS RDS para o MySQL HeatWave na OCI
- Migre do MySQL local para o MySQL HeatWave na OCI
- Migre do AWS RedShift para o MySQL HeatWave na OCI
- Estrutura de melhores práticas do Oracle Cloud Infrastructure
- Réplicas de Leitura e Balanceador de Carga
- Replicação de Saída
- Limites de Serviço
- Criando uma Rede Virtual na Nuvem
- Latência entre Regiões