ページの先頭行へ戻る
Symfoware Server V10.1.0 データベース二重化導入運用ガイド

4.3.3 カーネル資源の見積り

以下のカーネル資源の見積りと設定方法について説明します。

4.3.3.1 Solarisの場合

プロジェクトデータベース(/etc/projectファイル)または、カーネル構成ファイル(/etc/systemファイル)のどちらか一方に設定します。システム全体で設定するファイルを統一することを推奨します。

注意

  • Solaris 9では、プロジェクトデータベース(/etc/projectファイル)を利用することはできません。

  • プロジェクトデータベース(/etc/projectファイル)または、カーネル構成ファイル(/etc/systemファイル)に値が設定されている場合は、値を確認し、追加や変更を行ってください。プロジェクトデータベースおよび、カーネル構成ファイルに値が設定されていない場合は、OSのデフォルト値が使用されています。この場合には、OSのデフォルト値を基準にしてシステムで使用する構成ファイルへ追加や変更を行ってください。OSが使用している値は、sysdefコマンドまたはprctlコマンドにより表示できます。
    sysdefコマンドまたはprctlコマンドの詳細については、OSのmanコマンドで確認してください。

  • 各パラメタの説明で、“最大値”とあるパラメタについては、すでに設定されている値またはデフォルト値と比較して大きい方の値を設定し、“加算”とあるパラメタについては、すでに設定されている値またはデフォルト値に加算した値を設定してください。

プロジェクトデータベース(/etc/projectファイル)を使用する場合

プロジェクトデータベースを利用する場合は、system、user.rootおよび、defaultプロジェクトすべてに値を設定してください。なお、すでにユーザ定義のプロジェクトを作成している場合は、同様にユーザ定義のプロジェクトへも値を設定してください。また、プロジェクトデータベースを使用する場合は、以下を参照し、projmodコマンドを使用して値を設定してください。

project名

概要

system

OS起動時のデーモンやcronのプロセスが属するプロジェクト

user.root

rootユーザが属するプロジェクト

default

プロジェクトが未定義の一般ユーザが属するプロジェクト

参照

プロジェクトデータベース内のパラメタの詳細は、システムベンダのドキュメントを参照してください。

共用メモリ資源

共用メモリ資源の設定について説明します。

プロジェクトデータベース内のproject.max-shm-memory、project.max-shm-idsに以下の値をコマンドで設定してください。

パラメタ名

必要数

備考

project.max-shm-memory

3287800 + Symfoware/RDB必要数(注1)

加算

project.max-shm-ids

4 × 同時起動DBミラーリングシステム数(注2)

加算

注1) システム(Solarisマシン)全体の共用メモリの指定値であるため、Symfoware/RDBでの必要数を加算して設定する必要があります。
注2) 本バージョンでは“1”です。

セマフォ資源

セマフォ資源の設定について説明します。

プロジェクトデータベース内のproject.max-sem-ids、process.max-sem-nsemsに以下の値をコマンドで設定してください。

パラメタ名

必要数

備考

project.max-sem-ids

4 × 同時起動DBミラーリングシステム数(注1)

加算

process.max-sem-nsems

4 + Symfoware/RDB必要数(注2)

最大値

注1) 本バージョンでは“1”です。
注2) システム(Solarisマシン)全体のセマフォの指定値であるため、Symfoware/RDBでの必要数を加算して設定する必要があります。

注意

Symfowar/RDBのカーネル資源の以下の値を求める概算式に、“同時に実行するデータベース二重化のコマンド数”を加算してください。

  • クライアント多重度

  • クライアントプロセス多重度

同時に実行するデータベース二重化のコマンドの数は、以下の式から算出します。

同時に実行するデータベース二重化のコマンド数
    =  15  +  監査対象のデータベーススペース数
      +  利用者が同時に実行するコマンド数
設定例

以下にprojmodコマンドを使用して、user.rootプロジェクトに共用メモリの獲得方式を一括獲得方式にする場合の設定例を示します。

  1. 共用メモリ資源のパラメタproject.max-shm-memoryに2G、project.max-shm-idsに1Kを設定します。

    # projmod -s -K 'project.max-shm-memory=(privileged,2G,deny)' user.root
    # projmod -s -K 'project.max-shm-ids=(privileged,1K,deny)' user.root
  2. セマフォ資源のパラメタproject.max-sem-idsに1K、process.max-sem-nsemsに512を設定します。

    # projmod -s -K 'project.max-sem-ids=(privileged,1K,deny)' user.root
    # projmod -s -K 'process.max-sem-nsems=(privileged,512,deny)' user.root
  3. 上記で設定した値が正しいか以下のコマンドで確認してください。

    # projects -l user.root
    user.root
            projid : 1
            comment: ""
            users  : (none)
            groups : (none)
            attribs: process.max-msg-messages=(privileged,10000,deny)
                     process.max-msg-qdbytes=(privileged,65536,deny)
                     process.max-sem-nsems=(privileged,512,deny)
                     project.max-msg-ids=(privileged,1000,deny)
                     project.max-sem-ids=(privileged,1000,deny)
                     project.max-shm-ids=(privileged,1000,deny)
                     project.max-shm-memory=(privileged,2147483648,deny)
    #
  4. 上記手順1.~3.をsystemおよび、defaultプロジェクトへも実施してください。また、ユーザ定義のプロジェクトが作成されている場合は、同様に実施してください。

参照

  • Symfoware/RDBのカーネル資源については、“セットアップガイド”を参照してください。

  • プロジェクトデータベースの設定方法およびprojmodコマンドの詳細については、使用しているシステムベンダのドキュメントを参照してください。

カーネル構成ファイル(/etc/systemファイル)を利用する場合

カーネル構成ファイル(/etc/systemファイル)に設定します。

注意

  • カーネル編集が完了したら、システムを再起動してください。

  • Solarisのリリースによりカーネル構成ファイル内のパラメタが廃止されたり、デフォルト値が変更されることがあります。廃止されたパラメタについては設定は不要です。
    カーネル構成ファイル内のパラメタの詳細については、使用しているシステムベンダのドキュメントを参照してください。

  • non-global zoneでカーネル構成ファイル(/etc/systemファイル)を使用する場合は、各non-global zoneの値を加算し、その合計値をglobal zoneのカーネル構成ファイルに設定してください。
    以下のような構成の場合は、non-global zone A,B,C の合計値をglobal zoneのカーネル構成ファイルへ加算してください。

共用メモリ資源

共用メモリ資源の設定について説明します。

カーネル構成ファイル内のshminfo_shmmax、shminfo_shmmniに以下の値を設定してください。

パラメタ名

必要数

備考

shmsys:shminfo_shmmax

3287800 + Symfoware/RDB必要数(注1)

最大値

shmsys:shminfo_shmmni

4 × 同時起動DBミラーリングシステム数(注2)

加算

注1) システム(Solarisマシン)全体の共用メモリの指定値であるため、Symfoware/RDBでの必要数を加算して設定する必要があります。
注2) 本バージョンでは“1”です。

セマフォ資源

セマフォ資源の設定について説明します。

カーネル構成ファイル内のseminfo_semmni、seminfo_semmns、seminfo_semmnu、seminfo_semmslおよびseminfo_semumeに以下の値を設定してください。

パラメタ名

必要数

備考

semsys:seminfo_semmni

4 × 同時起動DBミラーリングシステム数(注1)

加算

semsys:seminfo_semmns

13 × 同時起動DBミラーリングシステム数(注1)

加算

semsys:seminfo_semmnu

26

加算

semsys:seminfo_semmsl

4 + Symfoware/RDB必要数(注2)

最大値

semsys:seminfo_semume

13

最大値

注1) 本バージョンでは“1”です。
注2) システム(Solarisマシン)全体のセマフォの指定値であるため、Symfoware/RDBでの必要数を加算して設定する必要があります。

注意

Symfowar/RDBのカーネル資源の以下の値を求める概算式に、“同時に実行するデータベース二重化のコマンド数”を加算してください。

  • クライアント多重度

  • クライアントプロセス多重度

同時に実行するデータベース二重化のコマンドの数は、以下の式から算出します。

同時に実行するデータベース二重化のコマンド数
    =  15  +  監査対象のデータベーススペース数
      +  利用者が同時に実行するコマンド数

参照

  • Symfoware/RDBのカーネル資源につては、“セットアップガイド”を参照してください。

  • カーネル資源の設定方法についての詳細は、使用しているシステムベンダのドキュメントを参照してください。

4.3.3.2 Linuxの場合

カーネル資源は、カーネル構成ファイル(/etc/sysctl.confファイル)に設定します。
変更後は、“sysctl -p /etc/sysctl.conf”を実行するか、システムを再起動してください。

下表を参照し、各パラメタの説明で“最大値”とあるパラメタについては、すでに設定されている値またはデフォルト値と比較して大きい方の値を設定し、“加算”とあるパラメタについては、すでにカーネル構成ファイルに設定されている値、またはデフォルト値に加算した値を設定してください。

なお、カーネル資源設定の見積り値については、Symfoware/RDBでの必要分は含まれていません。

共用メモリ資源

表4.6 共用メモリ資源

パラメタ名

必要数

備考

kernel.shmmax

3287800 + Symfoware/RDB必要数(注1)

最大値

kernel.shmmni

4 × 同時起動DBミラーリングシステム数(注2)

加算

kernel.shmall

kernel.shmmax / メモリのページ長(注3)

加算

注1) システム(Linuxマシン)全体の共用メモリの指定値であるため、Symfoware/RDBでの必要数を加算して設定する必要があります。
注2) 本バージョンでは“1”です。
注3) メモリのページ長は、x86版およびIntel64版では4キロバイトです。

セマフォ資源

/etc/sysctl.confファイル内のkernel.semパラメタに以下の形式で指定します。

kernel.sem = para1 para2 para3 para4

para1、para2、para3、para4に以下の値を設定してください。

表4.7 セマフォ資源

パラメタ名

必要数

備考

para1

4 + Symfoware/RDB必要数(注1)

最大値

para2

13 × 同時起動DBミラーリングシステム数(注2)

加算

para3

すでに設定されている値(注3)

  

para4

4 × 同時起動DBミラーリングシステム数(注2)

加算

注1) システム(Linuxマシン)全体のセマフォの指定値であるため、Symfoware/RDBでの必要数を加算して設定する必要があります。
注2) 本バージョンでは“1”です。
注3) 値が設定されていない場合は、OSのデフォルト値を設定してください。

注意

Symfoware/RDBのカーネル資源の以下の値を求める概算式に、“同時に実行するデータベース二重化のコマンド数”を加算してください。

  • クライアント多重度

  • クライアントプロセス多重度

同時に実行するデータベース二重化のコマンドの数は、以下の式から算出します。

同時に実行するデータベース二重化のコマンド数
    =  15  +  監査対象のデータベーススペース数
      +  利用者が同時に実行するコマンド数

参照

  • Symfoware/RDBのカーネル資源につては、“セットアップガイド”を参照してください。

  • カーネル資源の設定方法についての詳細は、使用しているシステムベンダのドキュメントを参照してください。