Esta página mostra as configurações comuns ao usar o AlloyDB Omni para cargas de trabalho de produção.
Servidor único
Ativar páginas enormes
O AlloyDB Omni, assim como o PostgreSQL, oferece suporte ao uso de páginas enormes. Para isso, é necessário que a máquina tenha páginas enormes ativadas e que você também ative uma configuração de banco de dados huge_pages
.
Execute o script fornecido para ativar as páginas enormes na sua máquina:
Docker
docker run --rm --privileged google/alloydbomni setup-host
Podman
podman run --rm --privileged google/alloydbomni setup-host
Adicione a seguinte linha ao
postgresql.conf
para ativar as páginas enormes:huge_pages=on
Ativar a troca
A troca no sistema operacional permite estender a memória física disponível movendo páginas de memória inativas entre a memória de acesso aleatório (RAM) e o disco rígido para liberar espaço na RAM para processos ativos. O AlloyDB Omni usa a troca quando está sob alta carga e requer mais memória.
Para verificar quanto espaço de troca está ativado no sistema, execute o seguinte:
cat /proc/meminfo | grep SwapTotal
A saída será assim:
SwapTotal: 165748732 kB
Para ativar a troca no sistema operacional, se o valor de saída for 0
, consulte:
- Debian (em inglês)
- Ubuntu
- Red Hat Enterprise Linux 9
Ativar dumps de núcleo
Se o AlloyDB Omni encontrar um erro irrecuperável e falhar, é útil ter um dump de núcleo para análise. Um despejo de núcleo é um snapshot da memória do processo do AlloyDB Omni no momento da falha.
Para configurar os despejos de núcleo, configure kernel.core_pattern
da seguinte maneira:
- Use o comando
sysctl
para configurar os parâmetros do kernel no tempo de execução. Para definir o
kernel.core_pattern
imediatamente, use:sysctl -w kernel.core_pattern="CORE_PATTERN"
Substitua
CORE_PATTERN
por um padrão de nome de arquivo principal, como "%e-%t.core".Para mais informações sobre os padrões de nome de arquivo principal, consulte Como definir nomes de arquivos principais do processo.
O gerenciador systemd-coredump permite mais configurações das configurações de coredump. A ferramenta é instalada por padrão no RHEL. Em sistemas Debian e Ubuntu, execute
sudo apt install coredumpctl
para instalar a ferramenta.Ao iniciar o AlloyDB Omni, transmita o argumento
--ulimit=core:-1:-1
no comandodocker run
:Docker
docker run --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ --ulimit=core:-1:-1 \ -p HOST_PORT:5432 -d google/alloydbomni
Substitua:
CONTAINER_NAME
: o nome de um novo contêiner do AlloyDB Omni, por exemplo,my-omni-1
.<code>NEW_PASSWORD
: a senha atribuída ao usuáriopostgres
do novo contêiner após a criação.
Podman
podman run --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ --ulimit=core:-1:-1 \ -p HOST_PORT:5432 -d google/alloydbomni
Substitua:
CONTAINER_NAME
: o nome de um novo contêiner do AlloyDB Omni, por exemplo,my-omni-1
.<code>NEW_PASSWORD
: a senha atribuída ao usuáriopostgres
do novo contêiner após a criação.
Configurar unidades systemd para executar operações automaticamente
Se você executar o AlloyDB Omni em um servidor dedicado, configure algumas operações para serem iniciadas automaticamente quando o servidor for inicializado. Uma maneira de fazer isso é usando unidades systemd
.
Por exemplo, as etapas a seguir configuram systemd
para que páginas enormes sejam ativadas automaticamente sempre que o servidor for inicializado.
Crie um arquivo em
/etc/systemd/system/alloydb-setup-env.service
:[Unit] Description=Setup huge pages for AlloyDB Omni [Service] Type=oneshot ExecStart=/usr/bin/docker run --rm --privileged google/alloydbomni setup-host [Install] WantedBy=multi-user.target
Ative o serviço da seguinte maneira:
sudo systemctl enable alloydb-setup-env.service