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. Além disso, 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 arquivo
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, transmita 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 usuáriopostgresdo novo 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 será 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 queira 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