O AlloyDB Omni é implantado por uma imagem Docker, o que permite diferentes formas de personalização. Esta página mostra algumas das personalizações comuns usadas.
Para começar a usar o AlloyDB Omni rapidamente com a configuração padrão, consulte o 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 de software recomendada |
---|---|---|
Linux |
|
|
macOS |
|
|
(*) O suporte ao Arm está em Pré-lançamento. |
O AlloyDB Omni é executado em um contêiner. Instale um ambiente de execução de contêineres, como Docker ou 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, configure uma vinculação de montagem 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 a ser atribuído a esse 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 dele.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 vai publicar a própria porta 5432. Para usar a porta padrão do PostgreSQL na máquina host também, 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 dos processos para permitir que os processos críticos do PostgreSQL sejam executados com maior prioridade, 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 faz rotações de registros. Isso pode consumir muito espaço em disco e, eventualmente, levar ao esgotamento do espaço. É possível configurar o Docker para usar um driver de geração de registros diferente. Por exemplo, para registrar 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 drivers de geração de registros, consulte a documentação do Docker Configurar drivers de geração de registros.
Também é possível configurar o registro em log usando o PostgreSQL. Para mais informações, consulte a documentação do PostgreSQL Relatórios e geração de registros de erros (em inglês).
Montar um volume de memória compartilhada
Se você planeja usar o mecanismo 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 Execução de contêineres.
Por exemplo, para especificar um gigabyte, use o valor 1g
.
Recomendamos definir o tamanho da memória compartilhada como um número de megabytes igual a pelo menos o valor da flag google_job_scheduler.max_parallel_workers_per_job
do banco de dados, multiplicado por 250. Para mais informações
sobre o mecanismo colunar, consulte Configurar o mecanismo colunar no AlloyDB Omni.
Por exemplo, se a flag google_job_scheduler.max_parallel_workers_per_job
do banco de dados estiver definida como o valor padrão 2
, considere adicionar uma flag de --shm-size=500m
ou maior ao iniciar o servidor de banco de dados.
Para mais informações sobre a flag --shm-size
, consulte Executar contêineres.