huge page を有効にする
AlloyDB Omni は、PostgreSQL と同様に、huge page の使用をサポートしています。これを行うには、マシンで huge page を有効にする必要があります。また、データベース設定 huge_pages も有効にする必要があります。
Linux マシンで huge page を有効にするには、次のコマンドを実行します。
sudo /usr/lib/postgresql/MAJOR_VERSION/bin/alloydbomniMAJOR_VERSION-setup-hostpostgresql.conf に次の行を追加します。
huge_pages=onスワッピングを有効にする
オペレーティング システムでを行うと、アクティブでないメモリページをランダムアクセス メモリ(RAM)とハードディスク間で移動し、アクティブなプロセス用の RAM スペースを解放することで、使用可能な物理メモリを拡張できます。AlloyDB Omni は、負荷が高く、追加のメモリが必要な場合にを使用します。
システムで有効になっているスワップ領域の量を確認するには、次のコマンドを実行します。
cat /proc/meminfo | grep SwapTotal出力は次のようになります。
SwapTotal: 165748732 kB
出力値が0の場合にオペレーティングシステムでスワップを有効にするには、以下を参照してください。
コアダンプを有効にする
AlloyDB Omni で回復不能エラーが発生してクラッシュした場合は、分析用のコアダンプを取得すると役に立ちます。コアダンプは、クラッシュした時点での AlloyDB Omni プロセスのメモリのスナップショットです。
コアダンプを設定するには、次のように kernel.core_pattern を設定します。
sysctlコマンドを使用して、ランタイム カーネル パラメータを構成します。kernel.core_patternを直ちに設定するには、次のコードを使用します。sysctl -w kernel.core_pattern="CORE_PATTERN"CORE_PATTERNは、コアファイル名のパターン(%e-%t.core など)に置き換えます。コアファイル名のパターンの詳細については、プロセスのコアファイル名を設定する方法をご覧ください。
systemd-coredump ハンドラを使用すると、coredump 設定をさらに構成できます。このツールは RHEL にデフォルトでインストールされています。
AlloyDB Omni プロセスがサイズ制限なしで完全なコアダンプを生成できるようにするには、alloydbomniMAJOR_VERSION.service ファイルの [Service] セクションに LimitCORE=infinity を追加して、systemd サービスを構成します。
/etc/systemd/system/alloydbomniMAJOR_VERSION.service.d/override.confにalloydbomniMAJOR_VERSION.serviceのオーバーライド ファイルを作成します。override.confファイルに以下を追加します。[Service] LimitCORE=infinitysystemd デーモンを再読み込みして、変更を適用します。
sudo systemctl daemon-reloadAlloyDB Omni サービスを再起動します。
sudo systemctl restart alloydb-omniMAJOR_VERSION
内部ロギングを有効にする
AlloyDB Omni は、通常の PostgreSQL ログに加えて、より多くのメッセージを提供します。これらのメッセージは技術的な性質のものであるため、AlloyDB for PostgreSQL サポートを対象としています。ただし、追加情報はデータベースの問題のデバッグに役立ちます。
内部ロギングを有効にするには、次の操作を行います。
データベース パラメータ
enable_alloydb_internal_logをonに設定します。ALTER SYSTEM SET enable_alloydb_internal_log=on;AlloyDB Omni の設定変更の詳細については、AlloyDB Omni データベース パラメータを構成するをご覧ください。
AlloyDB Omni サービスを再起動します。
sudo systemctl restart alloydb-omniMAJOR_VERSIONログファイル名やローテーション ポリシーの構成など、内部ロギングをさらにカスタマイズするには、PostgreSQL パラメータを使用します。
たとえば、log_directory パラメータはログファイルを保存するディレクトリを指定し、log_filename パラメータは個々のログファイルの名前を定義します。
AlloyDB Omni は、log_directory パラメータと log_filename パラメータを組み合わせて、内部ログを次のように保存します。
LOG_DIRECTORY/LOG_FILENAME.internal
オペレーションを自動的に実行するように systemd ユニットを設定する
AlloyDB Omni を専用サーバーで実行する場合は、サーバーの起動時に特定のオペレーションを自動的に開始するように構成できます。これを行う方法の一つとして、systemd ユニットを使用する方法があります。
たとえば、次の手順では、サーバーが起動するたびに huge page が自動的に有効になるように systemd を構成します。
/etc/systemd/system/alloydb-setup-env.service にファイルを作成します。
[Unit]
Description=Setup huge pages for AlloyDB Omni
[Service]
Type=oneshot
ExecStart=/usr/lib/postgresql/MAJOR_VERSION/bin/alloydbomniMAJOR_VERSION-setup-host
[Install]
WantedBy=multi-user.target
次のようにサービスを有効にします。
sudo systemctl enable alloydb-setup-env.service