ここでは,AIXのオペレーティングシステムパラメタ(カーネルパラメタ)の見積もりについて説明します。オペレーティングシステムパラメタの値が小さいと,HiRDBが正しく動作しないことがあります。AIXのオペレーティングシステムパラメタの指定値の目安を次の表に示します。
表21-3 AIXのオペレーティングシステムパラメタの指定値の目安
オペレーティングシステムパラメタ |
指定値の目安 |
data_hard |
パラメタの省略値が-1(unlimit)のため,特に必要がなければ変更しないでください。 |
stack_hard |
-1(unlimit)を指定してください。 |
nofiles |
HiRDBが計算して設定するため,指定する必要はありません。 |
nofiles_hard |
パラメタの省略値が-1(unlimit)のため,特に必要がなければ変更しないでください。 |
maxuproc |
MAX(pd_max_server_processの値+e,512)以上を指定してください。
ただし,サーバマシン上で稼働するほかのプログラムが必要とする値の方が大きい場合は,その値を指定してください。 |
EXTSHM環境変数 |
32ビットモードの場合,ONを指定してください(ただし,1プロセスでアタッチする共用メモリセグメント数が11未満の場合は指定しないでください)。64ビットモードの場合,使用する機能によって設定値が変わります。 |
- e:同時実行するコマンド(ユティリティを含む)の最大数
- 注
- システムで同時にオープンできる最大ファイル数は,「maxuproc×nofiles×固定ライセンス数」で調整できます。
- システムにログインするユーザの最大数は固定ライセンス数で調整できます。
- システム全体で同時に実行するプロセスの総数の最大数は,「maxuproc×固定ライセンス数」で調整できます。
- <この節の構成>
- (1) AIX固有のパラメタ指定
(a) 環境変数の指定
AIXの場合,システム共通定義に,次に示す環境変数を指定する必要があります。
- EXTSHM
32ビットモードの場合,プロセス空間の共用メモリ領域数の制限をなくすことを示す「ON」を設定します。
64ビットモードの場合,共用メモリのページ固定機能を使用するときは,OSのページ固定機能を有効にするためputenv EXTSHM ONを指定しません(省略します)。また,64ビットモードの場合で,32ビットモードのクライアントプロセスとの間でプロセス間メモリ通信機能を使用するときには,プロセス空間の共用メモリ領域数の制限をなくすことを示すONを指定します。
アドレスモードと使用する機能の組み合わせに対するEXTSHM環境変数の指定形式を次に示します。
アドレスモード |
共用メモリのページ固定機能※1 |
32ビットモードのクライアントプロセスとの間のプロセス間メモリ通信機能 |
EXTSHM環境変数の指定形式 |
32ビットモード |
−※2 |
○ |
putenv EXTSHM ON※3 |
× |
64ビットモード |
○ |
○ |
−※4 |
× |
指定しません |
× |
○ |
putenv EXTSHM ON |
× |
−※5 |
- (凡例)
- ○:使用時
- ×:未使用時
- −:該当しません。
- 注※1
- 共用メモリのページ固定は,pd_shmpool_attributeオペランド又はpd_dbbuff_attributeオペランドにfixedを設定した場合に使用します。詳細は,マニュアル「HiRDB Version 8 システム定義」の「pd_shmpool_attributeオペランド」又は「pd_dbbuff_attributeオペランド」を参照してください。
- 注※2
- サポートしていません。
- 注※3
- 共用メモリサイズが256メガバイト未満の場合は,プロセス停止時の共用メモリデタッチ処理で,OSが4キロバイト単位の共用メモリページ解放を行います。そのため,CPU使用率が上がり,系切り替えが発生することがあります。1プロセスでアタッチする共用メモリセグメント数(pdls -d memコマンドで確認できる共用メモリセグメント数)が11未満の場合は,EXTSHM=ONの指定をしないでください。
- 注※4
- 共用メモリのページ固定機能と32ビットモードのクライアントプロセスとの間のプロセス間メモリ通信機能を同時に使用できません。
- 注※5
- 指定不要です。
- PSALLOC
メモリ確保時に必要なページスペースをすぐに確保することを示す「early」を設定します。同時にNODISCLAIMの指定も必要です。ただし,無駄なページングスペースを生む可能性があります。
- NODISCLAIM
free()に対するコールの処理方法として,nodisclaim()の発行抑止をする「true」を設定します。
- LDR_CNTRL
32ビットモードの場合,カーネルの従来の区分化より大きいデータエリアを扱うことができるようにするために指定します。「MAXDATA=0x40000000」を設定してください。64ビットモードの場合,指定不要です。
- CORE_NOSHM
プロセス障害時に出力されるcoreファイルに,共用メモリ領域を含まないようにするために「""」を指定します。詳細は「(d) coreファイルの出力情報の制限」を参照してください。
また,上記で設定した環境変数はHiRDBコマンド実行環境にも設定する必要があります。環境変数の設定値は,システム共通定義に設定した値と同じ値にしてください。環境変数の設定方法については,各シェルのマニュアルを参照してください。
(b) /etc/security/limitsファイルの指定値の注意事項
rootユーザとHiRDB管理者は,次の指定値に注意してください。
- data
プロセスのヒープ領域がこの制限値を超えるとエラーになります。この制限値を指定する必要がない場合は,-1(unlimited)を指定してください。
- fsize,fsize_hard
ファイルサイズがこの制限値を超えるとエラーになります。この制限値を指定する必要がない場合は,-1(unlimited)を指定してください。
(c) 仮想メモリマネージャ(VMM)のチューニングパラメタの指定
特定の機能を使用する場合,次のパラメタを指定します。VMMパラメタはAIXのvmoコマンド(AIX 5L V5.2以降)又はvmtuneコマンド(AIX 5L V5.1)で設定できます。vmoコマンド及びvmtuneコマンドについてはAIXのマニュアルを参照してください。
- v_pinshm
共用メモリ・セグメントのページ固定を可能にするための指定です。HiRDBが使用する共用メモリをページ固定する場合,このパラメタに1を指定してください。HiRDBが使用する共用メモリをページ固定する方法は,マニュアル「HiRDB Version 8 システム定義」の「pd_shmpool_attributeオペランド」又は「pd_dbbuff_attributeオペランド」を参照してください。
- maxpin
ページ固定する実メモリの最大パーセンテージを指定します。HiRDBが使用する共用メモリをページ固定する場合,ページ固定するHiRDBの共用メモリサイズを含む,マシン上でページ固定するすべてのメモリのサイズ合計値(OSがページ固定するメモリのサイズも含みます)を,このパラメタに指定したパーセンテージ内の実メモリサイズが上回るように,このパラメタを指定してください。HiRDBが使用する共用メモリをページ固定する方法は,マニュアル「HiRDB Version 8 システム定義」の「pd_shmpool_attributeオペランド」又は「pd_dbbuff_attributeオペランド」を参照してください。
(d) coreファイルの出力情報の制限
AIX 5L V5.2以降で,プロセス障害時に出力されるcoreファイルに,共用メモリ領域を含まないように設定します。
- 設定内容
- HiRDB管理者の環境変数(kシェルの場合)
- $ export CORE_NOSHM=
- システム共通定義
- putenv CORE_NOSHM ""
- 前提条件
- システム属性(sys0)のfullcoreパラメタがtrueの場合です。
- 注意事項
- この環境変数CORE_NOSHMが有効かどうかは,使用しているAIXのバージョンに依存します。この環境変数が利用できるかどうかは,OSのマニュアルを参照してください。
- HiRDBはOSへの登録時(pdsetupコマンド実行時)に自動的にfullcoreをtrueに設定します。
その後,OSコマンドなどによってfalseに再設定される場合があるため,現在のfullcoreパラメタがtrueであることを確認してください。
- この環境変数CORE_NOSHMの設定を/etc/environmentへ記述しないでください。
(e) JFS/JFS2ファイルシステムへのI/O高負荷によるプログラムの沈み込みについての注意事項
JFS/JFS2ファイルシステムへ大量の出力要求を出すプログラム(pdcopyや大きなサイズのファイルに対するcompress,cp,ddコマンドなど)の実行によって,システムのディスク入出力の性能が飽和状態となって,同一システム上で動作するプログラムが数秒から数十秒沈み込む場合があります。
特に,システムの応答時間を監視するHAモニタやHACMPによってクラスタシステム運用を行っている場合,系切り替え動作となる場合があります。
そのため,システムパラメタ(sys0)にOSパラメタを設定してアプリケーションプログラムからの書き込み要求の頻度を平準化できます。次に示すOSパラメタを指定することでファイルキャッシュにディスク装置への書き込みが完了していないI/O要求が大量に滞留しないように制御できます。
OSパラメタ |
指定値の目安※ |
maxpout |
33 |
minpout |
16 |
- 注※
- maxpout/minpoutパラメタの最適な設定値は,システムの構成やアプリケーションプログラムの入出力特性に依存します。
- そのため,上記の目安値を設定してアプリケーションプログラムのI/O性能への影響が少ない値となるまで増加させる方法が有効です。
- maxpout/minpoutパラメタの設定値の詳細については,OSのマニュアルを参照してください。
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.