Cette page présente les paramètres courants lorsque vous utilisez AlloyDB Omni pour des charges de travail de production.
Activer les pages de grande taille
Tout comme PostgreSQL, AlloyDB Omni permet d'utiliser des pages énormes. Pour ce faire, vous devez activer les pages énormes sur votre machine et un paramètre de base de données huge_pages
.
Exécutez le script fourni pour activer les pages énormes sur votre machine:
Docker
docker run --rm --privileged google/alloydbomni setup-host
Podman
podman run --rm --privileged google/alloydbomni setup-host
Ajoutez la ligne suivante à votre fichier
postgresql.conf
pour activer les pages énormes:huge_pages=on
Activer le swap
Le swap dans le système d'exploitation permet d'étendre la mémoire physique disponible en déplaçant les pages de mémoire inactives entre la mémoire vive (RAM) et le disque dur afin de libérer de l'espace RAM pour les processus actifs. AlloyDB Omni utilise l'échange lorsqu'il est soumis à une charge élevée et qu'il a besoin de mémoire supplémentaire.
Pour vérifier la quantité d'espace d'échange activé sur votre système, exécutez la commande suivante:
cat /proc/meminfo | grep SwapTotal
La sortie ressemble à ceci :
SwapTotal: 165748732 kB
Pour activer le swap sur votre système d'exploitation si la valeur de sortie est 0
, consultez les informations suivantes:
Activer les fichiers de vidage de mémoire
Si AlloyDB Omni rencontre une erreur irrécupérable et plante, il est utile de disposer d'un dump de mémoire vive pour l'analyse. Un dump de mémoire est un instantané de la mémoire du processus AlloyDB Omni au moment de son plantage.
Pour configurer les vidages de mémoire, configurez kernel.core_pattern
comme suit:
- Utilisez la commande
sysctl
pour configurer les paramètres du kernel au moment de l'exécution. Pour définir
kernel.core_pattern
immédiatement, utilisez:sysctl -w kernel.core_pattern="CORE_PATTERN"
Remplacez
CORE_PATTERN
par un modèle de nom de fichier de noyau, tel que "%e-%t.core".Pour en savoir plus sur les modèles de noms de fichiers de base, consultez Définir les noms de fichiers de base de processus.
Le gestionnaire systemd-coredump permet de configurer davantage vos paramètres de coredump. L'outil est installé par défaut dans RHEL. Sur les systèmes Debian et Ubuntu, exécutez
sudo apt install coredumpctl
pour installer l'outil.Lorsque vous démarrez AlloyDB Omni, assurez-vous de transmettre l'argument
--ulimit=core:-1:-1
dans la commandedocker run
:Docker
docker run --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ --ulimit=core:-1:-1 \ -p HOST_PORT:5432 -d google/alloydbomni
Remplacez les éléments suivants :
CONTAINER_NAME
: nom d'un nouveau conteneur AlloyDB Omni (par exemple,my-omni-1
).NEW_PASSWORD
: mot de passe attribué à l'utilisateurpostgres
du nouveau conteneur après la création du mot de passe.
Podman
podman run --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ --ulimit=core:-1:-1 \ -p HOST_PORT:5432 -d google/alloydbomni
Remplacez les éléments suivants :
CONTAINER_NAME
: nom d'un nouveau conteneur AlloyDB Omni (par exemple,my-omni-1
).NEW_PASSWORD
: mot de passe attribué à l'utilisateurpostgres
du nouveau conteneur après la création du mot de passe.
Configurer des unités systemd pour exécuter des opérations automatiquement
Si vous exécutez AlloyDB Omni sur un serveur dédié, vous pouvez configurer certaines opérations pour qu'elles démarrent automatiquement au démarrage du serveur. Pour ce faire, vous pouvez utiliser des unités systemd
.
Par exemple, les étapes suivantes configurent systemd
afin que les pages énormes soient activées automatiquement à chaque démarrage du serveur.
Créez un fichier dans
/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
Activez le service comme suit:
sudo systemctl enable alloydb-setup-env.service