スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド(UNIX(R)用)

[目次][索引][前へ][次へ]

21.2 Solarisのオペレーティングシステムパラメタの見積もり

ここでは,Solarisのオペレーティングシステムパラメタ(カーネルパラメタ)の見積もりについて説明します。オペレーティングシステムパラメタの値が小さいと,HiRDBが正しく動作しないことがあります。なお,Solaris 10 以降で資源制御によってIPC機能を制御する場合,systemプロジェクトに対して設定してください。

Solarisのオペレーティングシステムパラメタの指定値の目安を次の表に示します。

表21-2 Solarisのオペレーティングシステムパラメタの指定値の目安

オペレーティングシステムパラメタ 指定値の目安
rlim_fd_cur HiRDBが計算して設定するため,指定する必要はありません。
rlim_fd_max MAX(MAX(1024,960+ユニット数)+320,pd_max_open_fdsの値,n)以上を指定してください。
maxuprc MAX(d+e,1024)以上を指定してください。
ただし,maxusers,max_nprocなどから算出される省略値の方が大きい場合は,その値を変更しないでください。
maxusers 128以上を指定してください。
max_nprocs※1 MAX(d+20,1000)以上を指定してください。
ただし,maxusersから算出される省略値の方が大きい場合は,その値を変更しないでください。
msgsys:msginfo_msgmni
(project.max-msg-ids)※1※4
サーバマシン上で稼働する全プログラムが必要とするメッセージキュー識別子数を指定します。HiRDBが必要とするメッセージキュー識別子数については,「21.5 メッセージキュー及びセマフォ所要量の見積もり」を参照してください。そこで求めた値を加算してください。
msgsys:msginfo_msgtql
(process.max-msg-messages) ※1※4
(k×ユニット数)+

Σ{Ai+Bi}以上の値を指定してください。
i=1
N:ノード内ユニット数

A=

Σ{
i=1
サーバiに割り当てたグローバルバッファプール数※7
サーバiのシンクポイントダンプ有効化の
  スキップ回数※8×2+
 サーバiで実行するpdload,pdrorg,pdrbal,
  ログレスUAPの最大同時実行数+1
}

Bは非同期READ機能使用時(pd_max_ard_processに0以外指定時)のみ加算します。
非同期READ機能を使用しない場合は0で見積もります。
B=

Σ{
i=1
 サーバiに割り当てたグローバルバッファプールのpdbuffer -m指定値の合計

M:
<シングルサーバの場合>
 1
<パラレルサーバの場合>
  ユニット内のバックエンドサーバ数+
  ユニット内のディクショナリサーバ数+
  ユニット内のゲストBES数※9
semsys:seminfo_semmni
(project.max-sem-ids)※4
サーバマシン上で稼働する全プログラムが必要とするセマフォ識別子数を指定します。HiRDBが必要とするセマフォ識別子数については,「21.5 メッセージキュー及びセマフォ所要量の見積もり」を参照してください。そこで求めた値を加算してください。
推奨値は1024以上です。
semsys:seminfo_semmns※1※3 サーバマシン上で稼働する全プログラムが必要とするセマフォ数を指定します。HiRDBが必要とするセマフォ数については,「21.5 メッセージキュー及びセマフォ所要量の見積もり」を参照してください。そこで求めた値を加算してください。
推奨値は7200以上です。
semsys:seminfo_semmnu※1※3 1024以上を指定してください。
semsys:seminfo_semume※1※3 512以上を指定してください。
semsys:seminfo_semmsl※5 Max(128,pd_dfw_awt_processオペランド指定値+2)以上の値を指定してください。
semsys:seminfo_semopm(process.max-sem-ops)※4 128以上を指定してください。
semsys:seminfo_semmap※1※2※3 1024以上を指定してください。
shmsys:shminfo_shmmax※1※5 200000000以上で,MAX(p+q,r,s,t)よりも大きい値を指定してください。
グローバルバッファの動的変更機能使用時は,追加するグローバルバッファのサイズを考慮し,設定値より追加分のサイズが大きくなる可能性があれば,予想される追加分のサイズを指定してください。
ただし,プロセス間メモリ通信機能を使用する場合(クライアント環境定義でPDIPC=MEMORYを指定した場合)は,MAX(p+q,r,s,PDSENDMEMSIZEの値,PDRECVMEMSIZEの値)よりも大きい値を指定してください。
なお,HiRDBシステム定義のSHMMAXオペランドには,ここで求めたshmmaxの値以下を指定してください。
project.max-shm-memory※6 HiRDBの共用メモリのサイズに,ほかのアプリケーション及びOSプロセスが使用する共用メモリのサイズを加算した値よりも大きい値を指定してください。
HiRDBの共用メモリのサイズについては,次の箇所を参照してください。
グローバルバッファの動的変更機能使用時は,追加するグローバルバッファのサイズを考慮し,設定値より追加分のサイズが大きくなる可能性があれば,予想される追加分のサイズを指定してください。
shmsys:shminfo_shmmni
(project.max-shm-ids)※1※4
2000以上を指定してください。
  • セキュリティ監査機能使用時は1を加算してください。
  • なお,グローバルバッファの動的変更機能使用時は次の値を加算します。
    HiRDB/シングルサーバの場合
    pd_max_add_dbbuff_shm_noオペランドの値
    HiRDB/パラレルサーバの場合
    n
    Σ各サーバ定義に指定したpd_max_add_dbbuff_shm_noオペランドの値
    i=1
    n:サーバマシン内のバックエンドサーバ数+ディクショナリサーバ数
  • プロセス間メモリ通信機能を使用する場合(クライアント環境定義でPDIPC=MEMORYを指定した場合)は,次に示す計算式で求めた値を加算してください。
    A×2×1.2
    Aはプロセス間メモリ通信機能を使用するクライアントの最大同時実行数です。Aが分からない場合は,プロセス間メモリ通信機能を使用する全クライアント数又はkを代入してください。
  • インメモリデータ処理の使用時は次の値を加算します。
    HiRDB/シングルサーバの場合
    pd_max_resident_rdarea_shm_noオペランドの値
    HiRDB/パラレルサーバの場合
    pd_max_resident_rdarea_shm_noオペランドの値×バックエンドサーバ数
shmsys:shminfo_shmseg※2※3 240以上を指定してください。
  • セキュリティ監査機能使用時は1を加算してください。
  • グローバルバッファの動的変更をする場合は,各サーバ定義で指定したpd_max_add_dbbuff_shm_noオペランドの値の最大値を加算してください。
  • インメモリデータ処理をする場合は,pd_max_resident_rdarea_shm_noオペランドの値を加算してください。

d:pd_max_server_processの値

e:HiRDB管理者が同時に実行するユティリティプロセス数の最大値

k:pd_max_usersオペランドの値+pd_max_reflect_process_countオペランドの値

n:データベース作成ユティリティ,データベース再編成ユティリティ,又はリバランスユティリティで,インデクス作成方法にインデクス一括作成モード若しくはインデクス情報出力モードを指定する場合,次の計算式の値
MIN(MAX(576,システム内のHiRDBサーバ数+448)+b×c,pd_max_open_fdsオペランドの最大値)
pd_max_open_fdsオペランドの最大値については,マニュアル「HiRDB Version 8 システム定義」を参照してください。
それ以外の場合は0になります。

b:インデクスの横分割数の最大値(データベース作成ユティリティ,データベース再編成ユティリティ,又はリバランスユティリティの処理対象のインデクス)

c:インデクス数(データベース作成ユティリティ,データベース再編成ユティリティ,又はリバランスユティリティの処理対象のインデクス)

p:ユニットコントローラが使用する共用メモリの大きさ

q:シングルサーバ又は各サーバが使用する共用メモリの大きさ

r:HiRDBシステム定義のSHMMAXオペランドの指定値

s:グローバルバッファが使用する共用メモリの見積もり値
グローバルバッファが使用する共用メモリの見積もりについては,HiRDB/シングルサーバの場合は「16.1.5 グローバルバッファが使用する共用メモリの計算式」を,HiRDB/パラレルサーバの場合は「16.2.5 グローバルバッファが使用する共用メモリの計算式」を参照してください。

:セキュリティ監査情報用バッファ用共用メモリの見積もり値
セキュリティ監査情報用バッファ用共用メモリの見積もりについては,HiRDB/シングルサーバの場合は「16.1.2 メモリ所要量の計算式」を,HiRDB/パラレルサーバの場合は「16.2.2 メモリ所要量の計算式」を参照してください。

注※1
Solaris 8 の場合,このパラメタは指定不要です。

注※2
Solaris 9 の場合,このパラメタは指定不要です。

注※3
Solaris 10 の場合,このパラメタは指定不要です。

注※4
Solaris 10 の場合,Solarisの資源制御によって調整するときは( )内のパラメタを指定してください。

注※5
Solaris 10 の場合,Solarisの資源制御によって調整するときは指定不要です。

注※6
Solaris 10 の場合,Solarisの資源制御によって調整するときに指定してください。

注※7
pdbufls コマンドで表示されるバッファプール名をサーバ単位に集計することで確認できます。

注※8
pd_spd_syncpoint_skip_limitに0以外の値を指定している場合はpd_spd_syncpoint_skip_limit指定値で見積もります。pd_spd_syncpoint_skip_limitを省略しているか,0を指定している場合は,マニュアル「HiRDB Version 8 システム運用ガイド」の「UAPの状態監視(シンクポイントダンプ有効化のスキップ回数監視機能)」の「全システムログファイルの容量から計算する方法」を参照し見積もってください。

注※9
影響分散スタンバイレス型系切り替え適用ユニットの場合に加算します。