ページの先頭行へ戻る
Systemwalker Centric Manager V17.0.1 導入手引書

4.4 システムパラメタのチューニング【Solaris版/Linux版】

部門管理サーバおよび業務サーバでは、システムパラメタのチューニングを行う必要があります。チューニングが必要なシステムパラメタとその値については、以下の表を参照してください。

パラメタにより、すでに設定されている値(初期値)に加算する場合と、すでに設定されている値と比較し大きい方の値(最大)を設定する場合があります。加算で見積もった値がシステムの上限値より大きくなる場合は、システムの上限値を設定します。

各パラメタがどちらにあたるかは、表の「種別」を参照してください。

詳細についてはOSのマニュアル等を参照してください。

Solaris

Solaris 9の場合

システムパラメタのチューニング値

共有メモリ

パラメタ

説明

種別

shmsys:shminfo_shmmax

共有メモリセグメントの最大サイズ

286720

最大

shmsys:shminfo_shmmni

システム全体で作成できる共有メモリセグメントの最大数

5

加算

メッセージキュー

パラメタ

説明

種別

msgsys:msginfo_msgmax

メッセージの最大サイズ

4096

最大

msgsys:msginfo_msgmnb

待ち行列上の最大バイト数

16384または
式1の大きい方の値

最大

msgsys:msginfo_msgmni

メッセージ待ち識別子の数

7

加算

msgsys:msginfo_msgtql

メッセージのヘッダ数
(注2)

式2

加算

セマフォ

パラメタ

説明

種別

semsys:seminfo_semmni

セマフォ識別子の数

9

加算

semsys:seminfo_semmns

システム内のセマフォ数

9

加算

semsys:seminfo_semmnu

システム内のundo構造体の数

14

加算

入出力

パラメタ

説明

種別

rlim_fd_max

ファイル記述子数限度

1024

最大

rlim_fd_cur

ファイル記述子数

1024

最大

注1)

式1の詳細は、以下のとおりです。

式1=(サーバ間通信の接続数×2+クライアント間通信の接続数+コマンド実行数)×208

以下の接続数とコマンド実行数について、同時に実行される数を基準に計算式に当てはめてください。

サーバ間通信の接続数

サーバ間通信は資源配付サーバとの間で通信が発生する処理です。

配下のサーバからの通知や資源の配付、上位サーバへの通知など、同時に通信する接続数になります。

クライアント間通信の接続数

クライアント間通信は、資源配付クライアントとの間で通信が発生する処理です。

クライアントへの資源の配付やクライアントからの通知など、同時に通信する接続数になります。

コマンド実行数

同時に実行する資源配付コマンドの数になります。

2)

式2の詳細は、以下のとおりです。

式2=資源配付の通信あて先数+20+msgmnbのチューニング値/100

システムパラメタを編集するには、/etc/systemファイルにチューニングのためのレコードを以下のように追加します。

なお、表にあるパラメタがすでに設定されている場合、Solarisの各バージョンのマニュアルを参照し、チューニングを行ってください。

チューニング作業手順

  1. 以下のコマンドを使用して現在システムに設定されている上記表に該当するパラメタの設定値を確認します。

    #/usr/sbin/sysdef
  2. 上記の表(システムパラメタのチューニング値)を参照し、現在の設定値と比較を行い、パラメタごとに最大、加算の種別を考慮して、適切な設定値を算出します。

  3. /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
  4. システムパラメタを変更した後は、システムの再起動が必要です。再起動のコマンドを以下に示します。

    # cd /
    # /usr/sbin/shutdown -y -i6 -g0
  5. システム再起動後、設定したシステムパラメタが反映されていることを、以下のコマンドの出力から確認します。

    # /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は、以下のプロジェクト配下で動作します。

systemプロジェクト

OS初期設定状態で存在するデーモンなどが動作するプロジェクト

user.rootプロジェクト

OS初期設定状態で、root権限で動作するプロセスが所属するプロジェクト

システムパラメタのチューニング値

パラメタ

説明

種別

特権

project.max-msg-ids

メッセージ待ち識別子の数

7

加算

特権レベル

process.max-file-descriptor

プロセスで使用できる最大のファイル記述子インデックス

1024

最大

特権レベル

process.max-msg-qbytes

待ち行列上の最大バイト数
(注3)

16384
または 式3 の大きい方の値

最大

特権レベル

project.max-sem-ids

セマフォ識別子の数

9

加算

特権レベル

project.max-shm-memory

共有メモリセグメントの最大サイズ

286720

加算

特権レベル

備考)

特権レベルは、/etc/projectに「privileged」を指定し、基本レベルは、「basic」を指定します。

3)

式3の詳細は、以下のとおりです。

式3=(サーバ間通信の接続数×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

システムパラメタのチューニング値

共有メモリ

メッセージキュー

パラメタ

説明

種別

kernel.msgmax

メッセージの最大サイズ

4095

最大

kernel.msgmnb

1つのメッセージキューに保持できるメッセージの最大値
(注4)

16384または
式4 の大きい方の値

最大

kernel.msgmni

メッセージキューIDの最大値

7

加算

注4)

式4の詳細は、以下のとおりです。

式4=(サーバ間通信の接続数×2+クライアント間通信の接続数+コマンド実行数)×224

以下の接続数とコマンド実行数について、同時に実行される数を基準に計算式に当てはめてください。

サーバ間通信の接続数

サーバ間通信は資源配付サーバとの間で通信が発生する処理です。

配下のサーバからの通知や資源の配付、上位サーバへの通知など、同時に通信する接続数になります。

クライアント間通信の接続数

クライアント間通信は、資源配付クライアントとの間で通信が発生する処理です。

クライアントへの資源の配付やクライアントからの通知など、同時に通信する接続数になります。

コマンド実行数

同時に実行する資源配付コマンドの数になります。

セマフォ

セマフォの設定値は、各パラメタ値を以下の形式で指定します。

kernel.sem = para1 para2 para3 para4

パラメタ

説明

種別

para1

セマフォ識別子あたりの最大セマフォ数

2

最大

para2

システム全体のセマフォ数

9

加算

para3

セマフォコールあたりの最大演算子数

5

最大

para4

システム全体のセマフォ識別子数

9

加算

注意

システムパラメタのチューニングについての注意事項

  • システムパラメタを変更した後は、システムの再起動が必要です。再起動のコマンドを以下に示します。

    # cd /
    # /sbin/shutdown  -r now
  • システムパラメタの編集方法およびシステムパラメタの確認方法は、 “システムパラメタのチューニング【Solaris版/Linux版】”を参照してください。