部門管理サーバおよび業務サーバでは、システムパラメタのチューニングを行う必要があります。チューニングが必要なシステムパラメタとその値については、以下の表を参照してください。
パラメタにより、すでに設定されている値(初期値)に加算する場合と、すでに設定されている値と比較し大きい方の値(最大)を設定する場合があります(加算の場合、設定のシステム上限値も確認してください)。
各パラメタがどちらにあたるかは、表の「種別」を参照してください。
詳細についてはOSのマニュアル等を参照してください。
【Solaris版】
Solaris 9の場合
システムパラメタのチューニング値
共有メモリ
パラメタ | 説明 | 値 | 種別 |
---|---|---|---|
shmsys:shminfo_shmmax | 共有メモリセグメントの最大サイズ | 286720 | 最大 |
shmsys:shminfo_shmmni | システム全体で作成できる共有メモリセグメントの最大数 | 5 | 加算 |
メッセージキュー
パラメタ | 説明 | 値 | 種別 |
---|---|---|---|
msgsys:msginfo_msgmax | メッセージの最大サイズ | 4096 | 最大 |
msgsys:msginfo_msgmnb | 待ち行列上の最大バイト数 | 16384 | 最大 |
msgsys:msginfo_msgmni | メッセージ待ち識別子の数 | 7 | 加算 |
msgsys:msginfo_msgtql | メッセージのヘッダ数 | 式1 | 加算 |
セマフォ
パラメタ | 説明 | 値 | 種別 |
---|---|---|---|
semsys:seminfo_semmni | セマフォ識別子の数 | 9 | 加算 |
semsys:seminfo_semmns | システム内のセマフォ数 | 9 | 加算 |
semsys:seminfo_semmnu | システム内のundo構造体の数 | 14 | 加算 |
入出力
パラメタ | 説明 | 値 | 種別 |
---|---|---|---|
rlim_fd_max | ファイル記述子数限度 | 1024 | 最大 |
rlim_fd_cur | ファイル記述子数 | 1024 | 最大 |
式1の詳細は、以下のとおりです。
式1=資源配付の通信あて先数+20+msgmnbのチューニング値/100 |
システムパラメタを編集するには、/etc/systemファイルにチューニングのためのレコードを以下のように追加します。
なお、表にあるパラメタがすでに設定されている場合、Solarisの各バージョンのマニュアルを参照し、チューニングを行ってください。
チューニング作業手順
以下のコマンドを使用して現在システムに設定されている上記表に該当するパラメタの設定値を確認します。
#/usr/sbin/sysdef
上記の表(システムパラメタのチューニング値)を参照し、現在の設定値と比較を行い、パラメタごとに最大、加算の種別を考慮して、適切な設定値を算出します。
/etc/systemを編集します。
システムパラメタをチューニングするために、/etc/systemファイルにチューニングのためのレコードを、以下の例のように編集します。
例)
Solaris 9上に部門管理サーバだけを導入し、資源配付の通信あて先数が128の場合
set shmsys:shminfo_shmmni = 105 set msgsys:msginfo_msgmax = 4096 set msgsys:msginfo_msgmnb = 16384 set msgsys:msginfo_msgmni = 57 set msgsys:msginfo_msgtql = 352 set semsys:seminfo_semmni = 19 set semsys:seminfo_semmns = 69 set semsys:seminfo_semmnu = 44 set rlim_fd_max = 1024 set rlim_fd_cur = 1024
システムパラメタを変更した後は、システムの再起動が必要です。再起動のコマンドを以下に示します。
# cd / # /usr/sbin/shutdown -y -i6 -g0
システム再起動後、設定したシステムパラメタが反映されていることを、以下のコマンドの出力から確認します。
# /usr/sbin/sysdef
表示例)
#/usr/sbin/sysdef ・ ・ (省略) ・ ・ * * IPC Messages * 4096 max message size (MSGMAX) 16384 max bytes on queue (MSGMNB) 57 message queue identifiers (MSGMNI) 352 system message headers (MSGTQL) * * IPC Semaphores * 19 semaphore identifiers (SEMMNI) 69 semaphores in system (SEMMNS) 44 undo structures in system (SEMMNU) 25 max semaphores per id (SEMMSL) 10 max operations per semop call (SEMOPM) 10 max undo entries per process (SEMUME) 32767 semaphore maximum value (SEMVMX) 16384 adjust on exit max value (SEMAEM) * * IPC Shared Memory * 8388608 max shared memory segment size (SHMMAX) 1 min shared memory segment size (SHMMIN) 105 shared memory identifiers (SHMMNI) 6 max attached shm segments per process (SHMSEG) ・ ・ (省略) ・ ・
Solaris 10/Solaris 11の場合
Systemwalker Centric Managerは、以下のプロジェクト配下で動作します。
OS初期設定状態で存在するデーモンなどが動作するプロジェクト
OS初期設定状態で、root権限で動作するプロセスが所属するプロジェクト
システムパラメタのチューニング値
パラメタ | 説明 | 値 | 種別 | 特権 |
---|---|---|---|---|
project.max-msg-ids | メッセージ待ち識別子の数 | 7 | 加算 | 特権レベル |
process.max-file-descriptor | プロセスで使用できる最大のファイル記述子インデックス | 1024 | 最大 | 特権レベル |
process.max-msg-qbytes | 待ち行列上の最大バイト数 | 16384 | 最大 | 特権レベル |
project.max-sem-ids | セマフォ識別子の数 | 9 | 加算 | 特権レベル |
project.max-shm-memory | 共有メモリセグメントの最大サイズ | 286720 | 加算 | 特権レベル |
特権レベルは、/etc/projectに「privileged」を指定し、基本レベルは、「basic」を指定します。
式2の詳細は、以下のとおりです。
式2=(サーバ間通信の接続数×2+クライアント間通信の接続数+コマンド実行数)×208 |
以下の接続数とコマンド実行数について、同時に実行される数を基準に計算式に当てはめてください。
サーバ間通信の接続数
サーバ間通信は資源配付サーバとの間で通信が発生する処理です。
配下サーバからの通知や資源の配付、上位サーバへの通知など、同時に通信する接続数になります。
クライアント間通信の接続数
クライアント間通信は、資源配付クライアントとの間で通信が発生する処理です。
クライアントへの資源の配付やクライアントからの通知など、同時に通信する接続数になります。
コマンド実行数
同時に実行する資源配付コマンドの数になります。
システムパラメタの設定
システムパラメタを編集するには、/etc/projectファイルを編集します。
システムパラメタを設定する際には、システムの初期値および、設定可能な値の上限を確認した後、値を確認してください。確認方法の例は“システムパラメタのチューニング【Solaris版/Linux版】”を参照してください。
/etc/projectファイル編集例)
/etc/projectファイルの編集例を以下に示します。
なお、systemプロジェクトとuser.rootプロジェクトの設定を編集する場合は、各プロジェクトの設定内容が1行となるように記載してください。
system:0:System account:::project.max-msg-ids=(privileged,135,deny); process.max-file-descriptor=(privileged,2048,deny);process.max-msg-qbytes= (privileged,65536,deny);project.max-sem-ids=(privileged,137,deny); project.max-shm-memory=(privileged,875847680,deny) user.root:1:root user:root:root: project.max-msg-ids=(privileged,135,deny); process.max-file-descriptor=(privileged,2048,deny);process.max-msg-qbytes= (privileged,65536,deny);project.max-sem-ids=(privileged,137,deny); project.max-shm-memory=(privileged,875847680,deny)
システムパラメタの確認
上記設定をした後、以下のコマンドにより設定情報を確認できます。
# projects -l
確認コマンド実行例
# projects -l system projid : 0 comment: "System account" users : (none) groups : (none) attribs: project.max-msg-ids=(privileged,135,deny) process.max-file-descriptor=(privileged,2048,deny) process.max-msg-qbytes=(privileged,65536,deny) project.max-sem-ids=(privileged,137,deny) project.max-shm-memory=(privileged,875847680,deny) user.root projid : 1 comment: "root user" users : root groups : root attribs: project.max-msg-ids=(privileged,135,deny) process.max-file-descriptor=(privileged,2048,deny) process.max-msg-qbytes=(privileged,65536,deny) project.max-sem-ids=(privileged,137,deny) project.max-shm-memory=(privileged,875847680,deny) noproject projid : 2 comment: "" users : (none) groups : (none) attribs: default projid : 3 comment: "Default project setting" users : (none) groups : (none) attribs:
【Linux版】
システムパラメタのチューニング値
共有メモリ
Linux for x86の場合
パラメタ | 説明 | 値 | 種別 |
---|---|---|---|
kernel.shmmax | 共有メモリの最大セグメントサイズ | 286720 | 最大 |
kernel.shmmni | 共有メモリセグメントの最大数 | 5 | 加算 |
Linux for Intel64の場合
パラメタ | 説明 | 値 | 種別 |
---|---|---|---|
kernel.shmmax | 共有メモリの最大セグメントサイズ | 308736 | 最大 |
kernel.shmmni | 共有メモリセグメントの最大数 | 5 | 加算 |
メッセージキュー
パラメタ | 説明 | 値 | 種別 |
---|---|---|---|
kernel.msgmax | メッセージの最大サイズ | 4095 | 最大 |
kernel.msgmnb | 1つのメッセージキューに保持できるメッセージの最大値 | 16384 | 最大 |
kernel.msgmni | メッセージキューIDの最大値 | 7 | 加算 |
セマフォ
セマフォの設定値は、各パラメタ値を以下の形式で指定します。
kernel.sem = para1 para2 para3 para4 |
パラメタ | 説明 | 値 | 種別 |
---|---|---|---|
para1 | セマフォ識別子あたりの最大セマフォ数 | 2 | 最大 |
para2 | システム全体のセマフォ数 | 9 | 加算 |
para3 | セマフォコールあたりの最大演算子数 | 5 | 最大 |
para4 | システム全体のセマフォ識別子数 | 9 | 加算 |
注意
システムパラメタのチューニングについての注意事項
システムパラメタを変更した後は、システムの再起動が必要です。再起動のコマンドを以下に示します。
# cd / # /sbin/shutdown -r now
システムパラメタの編集方法およびシステムパラメタの確認方法は、 “システムパラメタのチューニング【Solaris版/Linux版】”を参照してください。