システムパラメーターの設定値を確認し、システムパラメーターをチューニングします。
設定値の算出方法
設定値の算出方法は、以下の2つがあります。
現在のシステムに設定されている値に加算します。
加算する場合は、設定のシステム上限値も確認します。
現在のシステムに設定されている値と比較し、大きい方の値(最大)を設定します。
使用しているパラメーターの設定値算出方法が、加算と最大のどちらに該当するかは、以下の共有メモリの表とセマフォの表に記載されている種別を参照してください。
システムパラメーターのチューニング値
チューニングが必要なシステムパラメーターと値は以下のとおりです。
パラメーター | 説明 | 値 | 種別 |
---|---|---|---|
kernel.shmmax | 共有メモリの最大セグメントサイズ | 2684354560 | 最大 |
kernel.shmall | システム上で一度に使用可能な共有メモリの合計 | 655360 | 加算 |
kernel.shmmni | 共有メモリセグメントの最大数 | 1 | 加算 |
vm.max_map_count | プロセスが使用可能なメモリマップ領域の最大数 | 393216 | 最大 |
セマフォの設定値は以下の形式で指定します。
kernel.sem = para1 para2 para3 para4
パラメーターの詳細を説明します。
パラメーター | 説明 | 値 | 種別 |
---|---|---|---|
para1 | セマフォ識別子当たりの最大セマフォ数 | 17 | 最大 |
para2 | システム全体のセマフォ数 | 2142 | 加算 |
para3 | セマフォコール当たりの最大演算子数 | 1 | 最大 |
para4 | システム全体のセマフォ識別子数 | 126 | 加算 |
チューニング手順
以下のコマンドを実行して、現在のシステムに設定されているパラメーターの設定値を確認します。
# /sbin/sysctl -a
例)
# /sbin/sysctl -a ・ (省略) ・ kernel.sem = 250 32000 32 128 kernel.shmall = 268435456 kernel.shmmax = 4294967295 kernel.shmmni = 4096 vm.max_map_count = 65530 ・ (省略) ・
システムパラメーターのチューニング値を参照し、パラメーターごとに最大、加算の種別を考慮して、設定値を算出します。
システムパラメーターをチューニングするために、/etc/sysctl.confファイルを編集します。
例)
kernel.sem = 250 34142 32 254 kernel.shmall = 269090816 kernel.shmmax = 4294967295 kernel.shmmni = 4097 vm.max_map_count = 393216
以下のコマンドを実行して、/etc/sysctl.confファイルへの編集内容が反映されていることを確認します。
# /bin/cat /etc/sysctl.conf
以下のどちらかの方法で、システムパラメーターの設定をシステムへ反映します。
以下のコマンドを実行してシステムを再起動する
# cd / # /sbin/shutdown -r now
以下のコマンドを実行して設定を反映する
この方法の場合、システムの再起動は不要です。
# /sbin/sysctl -p /etc/sysctl.conf
以下のコマンドを実行し、設定したシステムパラメーターが反映されていることを確認します。
# /sbin/sysctl -a
例)
# /sbin/sysctl -a ・ (省略) ・ kernel.sem = 250 34142 32 254 kernel.shmall = 269090816 kernel.shmmax = 4294967295 kernel.shmmni = 4097 vm.max_map_count = 393216 ・ (省略) ・