Planejar a instalação do AlloyDB Omni em uma VM

Selecione uma versão da documentação:

Neste documento, descrevemos como se preparar para executar o AlloyDB Omni em qualquer ambiente Linux que seja compatível com ambientes de execução de contêineres.

Para uma visão geral do AlloyDB Omni, consulte Visão geral do AlloyDB Omni.

Tamanho e capacidade

O tamanho e a capacidade afetam diretamente o desempenho, a confiabilidade e a relação custo-benefício da instância do AlloyDB Omni. Ao migrar um banco de dados, os recursos de CPU e memória necessários são semelhantes aos requisitos do sistema de banco de dados de origem.

Planeje começar com uma implantação que use recursos de CPU, RAM e disco correspondentes e use a configuração do sistema de origem como a configuração de referência do AlloyDB Omni. É possível reduzir o consumo de recursos depois de realizar testes suficientes na instância do AlloyDB Omni.

O dimensionamento de um ambiente do AlloyDB Omni inclui as seguintes etapas:

  1. Defina sua carga de trabalho.

    • Volume de dados: estime a quantidade total de dados que você vai armazenar no AlloyDB Omni. Considere os dados atuais e o crescimento projetado ao longo do tempo.

    • Taxa de transação: determine o número esperado de transações por segundo (TPS, na sigla em inglês), incluindo leituras, gravações, atualizações e exclusões.

    • Simultaneidade: estime o número de usuários ou conexões simultâneos que acessam o banco de dados.

    • Requisitos de desempenho: defina os tempos de resposta aceitáveis para diferentes tipos de consultas e operações.

  2. Verifique se o hardware é compatível com os requisitos de dimensionamento.

    • CPU: o AlloyDB Omni se beneficia de sistemas com vários núcleos de CPU e é escalonado de forma linear, dependendo da carga de trabalho. No entanto, o PostgreSQL de código aberto geralmente não se beneficia de mais de 16 vCPUs. Considere o seguinte:

      • O número de núcleos com base na simultaneidade da carga de trabalho e nas necessidades de computação.
      • Quaisquer ganhos que possam estar presentes devido a uma mudança na geração ou plataforma da CPU.
    • Memória: aloque RAM suficiente para os buffers compartilhados do AlloyDB Omni para armazenar dados em cache e memória de trabalho para processamento de consultas. O requisito exato depende da carga de trabalho. Comece com 8 GB de RAM por vCPU.

    • Armazenamento

      • Tipo: com base nas suas necessidades, escolha entre o armazenamento NVMe local para desempenho ou o armazenamento SAN para escalonabilidade e compartilhamento de dados pessoais.

      • Capacidade: garanta armazenamento suficiente para o volume de dados, índices, registro prévio de escrita (WAL), backups e crescimento futuro.

      • IOPS: estime as operações de entrada/saída por segundo (IOPS) necessárias com base nos padrões de leitura e gravação da carga de trabalho. Ao executar o AlloyDB Omni em uma nuvem pública, considere as características de desempenho do tipo de armazenamento para entender se é necessário aumentar a capacidade de armazenamento para atingir uma meta de IOPS específica.

Pré-requisitos para executar o AlloyDB Omni

Antes de executar o AlloyDB Omni, verifique se você atende aos requisitos de hardware e software a seguir.

Requisitos de hardware

SO/plataforma Hardware mínimo Hardware recomendado
Linux
  • CPU: x86-64 ou ARM com suporte a AVX2
  • RAM: 2GB
  • Espaço em disco1: 10 GB
  • CPU: x86-64 ou ARM com suporte a AVX2
  • RAM: 8 GB por vCPU alocada ao AlloyDB Omni
  • Espaço em disco1: mais de 20 GB
macOS
  • CPU: CPU Intel com suporte a AVX2 ou chip M
  • RAM: 2GB
  • Espaço em disco1: 10 GB
  • CPU: CPU Intel com suporte a AVX2 ou chip M
  • RAM: 8 GB por vCPU alocada ao AlloyDB Omni
  • Espaço em disco1: mais de 20 GB
  1. Recomendamos que você use um dispositivo de armazenamento de unidade de estado sólido (SSD) dedicado para armazenar seus dados. Se você usar um dispositivo físico para essa finalidade, recomendamos que ele seja conectado diretamente à máquina host.

Requisitos de software

SO/plataforma Software mínimo Software recomendado
Linux1
  • Um dos seguintes sistemas operacionais:
    • Ubuntu 22.04+
    • Debian 11
    • RHEL 8.10
  • Kernel do Linux versão 4.18+
  • Cgroups v1 ou v2 ativados
  • Docker Engine 20.10+ ou Podman 4.2.0+
  • Um dos seguintes sistemas operacionais:
    • Ubuntu 22.04+
    • Debian 11 ou 12
    • RHEL 9
  • Versão do kernel do Linux 6.1 ou mais recente ou qualquer versão do kernel do Linux anterior à 5.3 que seja compatível com as diretivas MADV_COLLAPSE e MADV_POPULATE_WRITE
  • Cgroupsv2 ativado
  • Docker Engine 25.0.0+ ou Podman 5.0.0+
macOS
  • Docker Desktop 4.20+
  • Docker Desktop 4.30+
  1. O AlloyDB Omni pressupõe que o SELinux, quando presente, está configurado no host para permitir que o contêiner seja executado, incluindo o acesso ao sistema de arquivos (ou o SELinux está definido como permissivo).

Tipos de armazenamento compatíveis

O AlloyDB Omni é compatível com sistemas de arquivos em volumes de armazenamento em blocos em instâncias de banco de dados. Para sistemas de desenvolvimento ou teste menores, use o sistema de arquivos local do host em que o contêiner está em execução. Para cargas de trabalho empresariais, use o armazenamento reservado para instâncias do AlloyDB Omni. Dependendo das demandas definidas pela carga de trabalho do banco de dados, configure os dispositivos de armazenamento em uma configuração singleton com um dispositivo de disco para cada contêiner ou em uma configuração consolidada em que vários contêineres leem e gravam no mesmo dispositivo de disco.

Armazenamento NVMe ou SAN local

O armazenamento local de memória não volátil expressa (NVMe) e o armazenamento de rede de área de armazenamento (SAN) oferecem vantagens distintas. A escolha da solução certa depende dos requisitos específicos da carga de trabalho, do orçamento e das necessidades futuras de escalonabilidade.

Para determinar a melhor opção de armazenamento, considere o seguinte:

  • Para priorizar o desempenho absoluto, escolha o NVMe local.
  • Se você precisar de armazenamento compartilhado em grande escala, escolha a SAN.
  • Se você precisar equilibrar desempenho e compartilhamento, considere a SAN com NVMe over Fabrics para um acesso mais rápido.

Armazenamento NVMe local

O NVMe é um protocolo de alto desempenho projetado para unidades de estado sólido (SSDs). Para aplicativos que precisam de acesso rápido aos dados, o armazenamento NVMe local oferece os seguintes benefícios:

  • Os SSDs NVMe se conectam diretamente ao barramento PCIe (Peripheral Component Interconnect Express) para oferecer velocidades rápidas de leitura e gravação.
  • O armazenamento NVMe local oferece a menor latência.
  • O armazenamento NVMe local oferece a maior capacidade de processamento.

Para escalonar o armazenamento NVMe local, é necessário adicionar mais unidades aos servidores individuais. No entanto, adicionar mais unidades a servidores individuais leva a pools de armazenamento fragmentados e possíveis complexidades de gerenciamento. O armazenamento NVMe local não foi projetado para compartilhamento de dados entre vários servidores. Como o armazenamento NVMe local é local, os administradores de servidor precisam se proteger contra falhas de disco usando Redundant Array of Inexpensive Disks (RAID) de hardware ou software. Caso contrário, a falha de um único dispositivo NVMe vai resultar em perda de dados.

Armazenamento SAN

A SAN é uma rede de armazenamento dedicada que conecta vários servidores a um pool compartilhado de dispositivos de armazenamento, geralmente SSDs ou armazenamento NVMe centralizado. Embora a SAN não seja tão rápida quanto o NVMe local, as SANs modernas, especialmente aquelas que usam NVMe sobre Fabrics, ainda oferecem excelente desempenho para a maioria das cargas de trabalho corporativas.

  • As SANs são altamente escalonáveis. Para adicionar mais capacidade de armazenamento ou desempenho, adicione novas matrizes de armazenamento ou faça upgrade das atuais. As SANs oferecem redundância na camada de armazenamento, protegendo contra falhas de mídia de armazenamento.

  • As SANs são excelentes para o compartilhamento de dados. Para ambientes corporativos que exigem alta disponibilidade, vários servidores podem acessar e compartilhar dados armazenados na SAN. Em caso de falha no servidor, é possível apresentar o armazenamento SAN a outro servidor no data center, o que permite uma recuperação mais rápida.

A seguir