Hitachi

Hitachi Advanced Data Binder システム構築・運用ガイド


3.3.1 カーネルパラメタの設定および確認をする

次に示すファイルに対して,カーネルパラメタを設定します。

カーネルパラメタの設定はスーパユーザで行います。HADB管理者(adbmanager)でログインしている場合は,いったんログアウトして,スーパユーザでログインし直してください。

メモ

ここではviコマンドを使用して,各ファイルにカーネルパラメタを設定する方法について説明します。なお,テキストエディタで各ファイルを開いて編集することもできます。

〈この項の構成〉

(1) sysctl.confファイルにカーネルパラメタを設定する

カーネルパラメタをsysctl.confファイルに設定します。sysctl.confファイルの格納先を次に示します。

  1. sysctl.confファイルを開きます。

    スーパユーザで次に示すOSのコマンドを入力して,[Enter]キーを押してください。viコマンドを実行することで,sysctl.confファイルを編集できるようになります。

    vi /etc/sysctl.conf
  2. カーネルパラメタを設定します。

    [I]キーを押して,編集モードに移行させてください。編集モードに移行させたら,カーソルキーを押して,カーネルパラメタを入力する位置にカーソルを移動させてください。カーソルを移動させたら,次に示すカーネルパラメタを入力します。

    net.core.rmem_default = 33554432
    net.core.rmem_max = 33554432
    net.core.wmem_default = 33554432
    net.core.wmem_max = 33554432
    fs.aio-max-nr = 65536
    メモ

    sysctl.confファイルに,すでに上記のカーネルパラメタが指定されている場合は,元に戻せるようにするため,変更前の指定値をコメントとして残しておいてください。行の先頭に「#」を入力すると,その行はコメントとして扱われます。

    #net.core.rmem_default = 10000」はコメントとして扱われ,指定値は無視されます。

    #net.core.rmem_default = 10000

    net.core.rmem_default = 33554432

    入力するカーネルパラメタの詳細を次の表に示します。

    表3‒3 sysctl.confファイルに指定するカーネルパラメタの一覧

    項番

    カーネルパラメタ

    説明

    1

    net.core.rmem_default

    受信用ウィンドウサイズのデフォルト値を指定します。33,554,432を指定してください。

    2

    net.core.rmem_max

    受信用ウィンドウサイズの上限値を指定します。33,554,432を指定してください。

    3

    net.core.wmem_default

    送信用ウィンドウサイズのデフォルト値を指定します。33,554,432を指定してください。

    4

    net.core.wmem_max

    送信用ウィンドウサイズの上限値を指定します。33,554,432を指定してください。

    5

    fs.aio-max-nr

    65,536を指定してください。

  3. カーネルパラメタの設定を終了します。

    編集モードで必要なカーネルパラメタを入力したら,[Esc]キーを押してコマンドモードに移行させてください。コマンドモードに移行させたら,次に示すコマンドを入力して,[Enter]キーを押してください。

    :wq

    編集モードで設定した内容が保存されます。これで,sysctl.confファイルにカーネルパラメタが設定されます。

(2) sysctl.confファイルに設定したカーネルパラメタを確認する

カーネルパラメタがsysctl.confファイルに設定されているかどうかを確認するため,次に示すコマンドを入力して,[Enter]キーを押してください。sysctl.confファイルに設定したカーネルパラメタを確認できます。

sysctl -p

sysctl -pコマンドを実行することで,sysctl.confファイルに設定されているカーネルパラメタの一覧が表示されます。表示されるカーネルパラメタの一覧は情報量が多いため,抜粋したものを実行結果の例として次に示します。

■実行結果の例
          :
net.core.rmem_default = 33554432
net.core.rmem_max = 33554432
net.core.wmem_default = 33554432
net.core.wmem_max = 33554432
fs.aio-max-nr = 65536
          :

(3) limits.confファイルにカーネルパラメタを設定する

カーネルパラメタをlimits.confファイルに設定します。limits.confファイルの格納先を次に示します。

  1. limits.confファイルを開きます。

    次に示すOSのコマンドを入力して,[Enter]キーを押してください。viコマンドを実行することで,limits.confファイルを編集できるようになります。

    vi /etc/security/limits.conf
  2. カーネルパラメタを設定します。

    [I]キーを押して,編集モードに移行させてください。編集モードに移行させたら,カーソルキーを押して,カーネルパラメタを入力する位置にカーソルを移動させてください。カーソルを移動させたら,次に示すカーネルパラメタを入力します。

    adbmanager   soft   nofile    6400
    adbmanager   hard   nofile    6400
    adbmanager   soft   memlock   unlimited
    adbmanager   hard   memlock   unlimited
    メモ

    limits.confファイルに,すでに上記のカーネルパラメタが指定されている場合は,元に戻せるようにするため,変更前の指定値をコメントとして残しておいてください。行の先頭に「#」を入力すると,その行はコメントとして扱われます。

    #adbmanager soft nofile 1000

    adbmanager soft nofile 6400

    入力するカーネルパラメタの詳細を次の表に示します。

    表3‒4 limits.confファイルに指定するカーネルパラメタの一覧

    項番

    カーネルパラメタ

    説明

    1

    soft nofile

    openできるファイルディスクリプタ数を指定します。HADB管理者(adbmanager)に対して,soft nofileを指定してください。soft nofileには,6400を指定してください。

    2

    hard nofile

    openできるファイルディスクリプタ数を指定します。HADB管理者(adbmanager)に対して,hard nofileを指定してください。hard nofileには,6400を指定してください。

    3

    soft memlock

    共有メモリのメモリロックの上限値を指定します。HADB管理者(adbmanager)に対して,soft memlockを指定してください。soft memlockには,unlimitedを指定してください。

    4

    hard memlock

    共有メモリのメモリロックの上限値を指定します。HADB管理者(adbmanager)に対して,hard memlockを指定してください。hard memlockには,unlimitedを指定してください。

    重要

    soft nofileおよびhard nofileに指定する6400は,体験環境を構築するための値です。体験環境ではなく,実際の業務で使用する環境を構築する場合は,「6.2 カーネルパラメタの見積もり」を参照して,必要な値を見積もった上で指定してください。

    また,実際の業務で使用する環境を構築する場合,この章でsysctl.confファイルおよびlimits.confファイルに設定したカーネルパラメタ以外にも,指定が必要なものがあります。

  3. カーネルパラメタの設定を終了します。

    編集モードで必要なカーネルパラメタを入力したら,[Esc]キーを押してコマンドモードに移行させてください。コマンドモードに移行させたら,次に示すコマンドを入力して,[Enter]キーを押してください。

    :wq

    編集モードで設定した内容が保存されます。これで,limits.confファイルにカーネルパラメタが設定されます。

(4) limits.confファイルに設定したカーネルパラメタを確認する

カーネルパラメタがlimits.confファイルに設定されているかどうかを確認するため,次に示すOSのコマンドを入力して,[Enter]キーを押してください。スーパユーザからHADB管理者(adbmanager)に切り替えることで,limits.confファイルに設定したカーネルパラメタを確認できます。

su adbmanager

一時的に,HADB管理者(adbmanager)に切り替わります。続いて,次に示すOSのコマンドを入力して,[Enter]キーを押してください。

ulimit -a

ulimit -aコマンドを実行することで,HADB管理者(adbmanager)に設定したカーネルパラメタの一覧が表示されます。表示されるカーネルパラメタの一覧は情報量が多いため,抜粋したものを実行結果の例として次に示します。

■実行結果の例
            :
max locked memory      (kbytes, -l) unlimited
open files                     (-n) 6400
            :

実行結果の例の内容を確認したら,HADB管理者(adbmanager)からスーパユーザに切り替えます。次に示すOSのコマンドを入力して,[Enter]キーを押してください。

exit

(5) 設定したカーネルパラメタを有効にする

sysctl.confファイル,およびlimits.confファイルに設定したカーネルパラメタを有効にするために,OSを再起動します。次に示すOSのコマンドを入力して,[Enter]キーを押してください。

reboot

(6) 関連項目

6.2 カーネルパラメタの見積もり