O AlloyDB Omni é implantado usando uma imagem do Docker, o que permite diferentes formas de personalização. Esta página mostra algumas personalizações comuns que são usadas.
Para começar rapidamente a usar o AlloyDB Omni com a configuração padrão, consulte Guia de início rápido: AlloyDB Omni.
Antes de começar
A tabela a seguir lista a configuração recomendada de hardware e software para o AlloyDB Omni.
SO/plataforma | Configuração de hardware recomendada | Configuração recomendada do software |
---|---|---|
Linux |
|
|
macOS |
|
|
(*) O suporte a Arm está em Pré-lançamento. |
O AlloyDB Omni é executado em um contêiner. Instale um ambiente de execução de contêineres, como o Docker ou o Podman, na sua máquina antes de instalar o AlloyDB Omni.
Servidor único
Montar um diretório de dados externo
Por padrão, o comando no Guia de início rápido: instalar o AlloyDB Omni armazena os dados do banco de dados em uma área gerenciada pelo Docker. Isso é conveniente para começar, mas dificulta a localização e o uso do diretório de dados. Em vez disso, você pode configurar um bind mount para mapear o diretório de dados para um local conhecido no disco.
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v DATA_DIR:/var/lib/postgresql/data \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.4
Substitua:
CONTAINER_NAME
: o nome para atribuir a este novo contêiner do AlloyDB Omni no registro de contêineres da máquina host, por exemplo,my-omni
.NEW_PASSWORD
: a senha atribuída ao usuáriopostgres
do novo contêiner após a criação.DATA_DIR
: o caminho do sistema de arquivos que você quer que o AlloyDB Omni use para o diretório de dados.HOST_PORT
: a porta TCP na máquina host em que o contêiner precisa publicar a própria porta 5432. Para usar a porta padrão do PostgreSQL na máquina host, especifique5432
.
Ativar ulimits
Os parâmetros ulimit especificam vários limites de processo que o contêiner do Docker pode usar. Para um desempenho ideal, o AlloyDB Omni ajusta as prioridades de processo para permitir que os processos críticos do PostgreSQL sejam executados com prioridade mais alta, ou seja, eles recebem uma alocação maior de CPUs disponíveis. Para permitir isso, especifique -20:-20
, que remove as limitações do contêiner do AlloyDB Omni.
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--ulimit=nice=-20:-20 \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.4
Especificar um driver de registro
Por padrão, o Docker não executa rotações de registro. Isso pode usar muito espaço em disco e, eventualmente, levar ao esgotamento do espaço em disco. É possível configurar o Docker para usar um driver de registro diferente. Por exemplo, para fazer login no journald:
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--log-driver=journald \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.4
Para mais informações sobre o Docker e os drivers de geração de registros, consulte a documentação do Docker Configurar drivers de geração de registros.
Também é possível configurar a geração de registros usando o PostgreSQL. Para mais informações, consulte a documentação do PostgreSQL Relatórios e geração de registros de erros.
Montar um volume de memória compartilhada
Se você planeja usar o motor colunar do AlloyDB com o AlloyDB Omni, recomendamos disponibilizar a memória compartilhada para o contêiner do AlloyDB Omni. O método para fazer isso varia de acordo com o sistema operacional do host, conforme mostrado nos exemplos a seguir.
Linux
Para disponibilizar a memória compartilhada ao contêiner, monte /dev/shm
:
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-p HOST_PORT:5432 \
-v /dev/shm:/dev/shm \
-d google/alloydbomni:15.5.4
macOS
Para disponibilizar a memória compartilhada ao contêiner, inclua a flag --shm-size
:
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-p HOST_PORT:5432 \
--shm-size=SHARED_MEMORY_SIZE \
-d google/alloydbomni:15.5.4
Substitua SHARED_MEMORY_SIZE
pelo tamanho a ser definido para /dev/shm
no
contêiner, no formato descrito em Como executar contêineres.
Por exemplo, para especificar um gigabyte, use o valor 1g
.
Recomendamos definir o tamanho da memória compartilhada para um número de megabytes igual ou
superior ao valor do banco de dados da flag
google_job_scheduler.max_parallel_workers_per_job
, multiplicado por 250. Para mais informações
sobre o mecanismo de colunas, consulte Configurar o mecanismo de colunas no AlloyDB Omni.
Por exemplo, se a flag do banco de dados google_job_scheduler.max_parallel_workers_per_job
estiver definida como o valor padrão 2
, considere adicionar uma flag de --shm-size=500m
ou mais ao iniciar o servidor de banco de dados.
Para mais informações sobre a flag --shm-size
, consulte Como executar contêineres.