Ativar páginas enormes
O AlloyDB Omni, assim como o PostgreSQL, oferece suporte ao uso de páginas enormes. Isso exige que as páginas enormes estejam ativadas na sua máquina, e você também precisa ativar uma configuração de banco de dados huge_pages.
Execute o script fornecido para ativar páginas enormes na sua máquina:
Docker
docker run --rm --privileged google/alloydbomni setup-host
Docker
docker run --rm --privileged google/alloydbomni setup-host
Podman
podman run --rm --privileged google/alloydbomni setup-host
Podman
podman run --rm --privileged google/alloydbomni setup-host
Adicione a seguinte linha ao seu
postgresql.confpara ativar 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 carga alta e exige memória extra.
Para verificar quanto espaço de troca está ativado no seu sistema, execute o seguinte:
cat /proc/meminfo | grep SwapTotalA saída será assim:
SwapTotal: 165748732 kB
Para ativar a troca no sistema operacional se o valor de saída for 0, consulte o seguinte:
Ativar despejos de memória
Se o AlloyDB Omni encontrar um erro irrecuperável e falhar, é útil ter um despejo de memória para análise. Um despejo de memória é um snapshot da memória do processo do AlloyDB Omni no momento da falha.
Para configurar despejos de memória, configure kernel.core_pattern da seguinte maneira:
- Use o comando
sysctlpara configurar parâmetros do kernel de execução. Para definir o
kernel.core_patternimediatamente, use:sysctl -w kernel.core_pattern="CORE_PATTERN"Substitua
CORE_PATTERNpor um padrão de nome de arquivo principal, como "%e-%t.core".Para mais informações sobre padrões de nome de arquivo principal, consulte Como definir nomes de arquivos principais de processos para mais detalhes.
O gerenciador systemd-coredump permite mais configurações das configurações de despejo de memória. A ferramenta é instalada por padrão no RHEL. Em sistemas Debian e Ubuntu, execute
sudo apt install coredumpctlpara instalar a ferramenta.Ao iniciar o AlloyDB Omni, verifique se você transmitiu o argumento
--ulimit=core:-1:-1no comandodocker run:Docker
docker run --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ --ulimit=core:-1:-1 \ -p HOST_PORT:5432 -d google/alloydbomni
Docker
docker run --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ --ulimit=core:-1:-1 \ -p HOST_PORT:5432 -d google/alloydbomni
Podman
podman run --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ --ulimit=core:-1:-1 \ -p HOST_PORT:5432 -d google/alloydbomni
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.NEW_PASSWORD: a senha atribuída ao novo usuáriopostgresdo contêiner após a criação da senha.
Ativar a geração de registros internos
O AlloyDB Omni fornece mais mensagens além dos registros normais do PostgreSQL. Essas mensagens são destinadas ao suporte do AlloyDB para PostgreSQL devido à natureza técnica delas. No entanto, informações adicionais podem ajudar na depuração de problemas do banco de dados.
Para ativar a geração de registros internos, siga estas etapas:
Defina o parâmetro de banco de dados
enable_alloydb_internal_logcomoon:ALTER SYSTEM SET enable_alloydb_internal_log=on;Para mais informações sobre como modificar as configurações do AlloyDB Omni, consulte Configurar parâmetros do banco de dados do AlloyDB Omni.
Reinicie para implementar as mudanças:
Docker
docker restart CONTAINER_NAME
Docker
docker restart CONTAINER_NAME
Podman
podman restart CONTAINER_NAME
Podman
podman restart CONTAINER_NAME
Para personalizar a geração de registros internos, como configurar nomes de arquivos de registro e políticas de rotação, use parâmetros do PostgreSQL.
Por exemplo, o parâmetro log_directory especifica o diretório em que um arquivo de registro é salvo, e o parâmetro log_filename define o nome do arquivo de registro individual.
O AlloyDB Omni combina os parâmetros log_directory e log_filename e salva registros internos da seguinte maneira:
LOG_DIRECTORY/LOG_FILENAME.internal
Configurar unidades systemd para executar operações automaticamente
Se você executar o AlloyDB Omni em um servidor dedicado, talvez seja necessário configurar determinadas 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 o systemd para que as 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.targetAtive o serviço da seguinte maneira:
sudo systemctl enable alloydb-setup-env.service