• 検索結果がありません。

NFS での PNFS SCSI レイアウトの有効化

ントに発行する前に、SCSI デバイスを予約して、登録したクライアントのみがデバイスにアクセスで きるようにします。クライアントが、その SCSI デバイスに対してコマンドを実行できても、そのデバ イスに登録されていない場合は、クライアントからの多くの操作が、そのデバイス上で失敗します。た とえば、サーバーが、そのデバイスのレイアウトをクライアントに送信していないと、クライアントの blkid コマンドは、XFS ファイルシステムの UUID を表示できません。

サーバーは、独自の永続予約を削除しません。これにより、クライアントやサーバーの再起動時に、デ バイスのファイルシステム内のデータが保護されます。SCSI デバイスを他の目的で使用するには、

NFS サーバーで、手動で永続予約を削除する必要があります。

6.3. PNFS と互換性がある SCSI デバイスの確認

この手順では、SCSI デバイスが pNFS SCSI レイアウトに対応しているかどうかを確認します。

前提条件 前提条件

以下のコマンドで、sg3-utils パッケージがインストールされている。

# yum install sg3_utils

手順 手順

サーバーおよびクライアントの両方で、適切な SCSI デバイスサポートを確認します。

# sg_persist --in --report-capabilities --verbose path-to-scsi-device

Persist Through Power Loss Active (PTPL_A) ビットが設定されるようにします。

例6.1 pNFS SCSI をサポートするをサポートする SCSI デバイスデバイス

以下は、pNFS SCSI に対応する SCSI デバイスにおける sg_persist 出力の例になります。

PTPL _A ビットが 1 を報告します。

inquiry cdb: 12 00 00 00 24 00

Persistent Reservation In cmd: 5e 02 00 00 00 00 00 20 00 00 LIO-ORG block11 4.0

Peripheral device type: disk Report capabilities response:

Compatible Reservation Handling(CRH): 1 Specify Initiator Ports Capable(SIP_C): 1 All Target Ports Capable(ATP_C): 1

Persist Through Power Loss Capable(PTPL_C): 1 Type Mask Valid(TMV): 1

Allow Commands: 1

Persist Through Power Loss Active(PTPL_A): 1 Support indicated in Type mask:

Write Exclusive, all registrants: 1 Exclusive Access, registrants only: 1 Write Exclusive, registrants only: 1 Exclusive Access: 1

Write Exclusive: 1

Exclusive Access, all registrants: 1

関連情報 関連情報

man ページの sg_persist(8)

6.4. サーバーで PNFS SCSI の設定

この手順では、NFS サーバーが pNFS SCSI レイアウトをエクスポートするように設定します。

手順 手順

1. サーバーで、SCSI デバイスで作成した XFS ファイルシステムをマウントします。

2. NFS バージョン 4.1 以降をエクスポートするように NFS サーバーを設定します。/etc/nfs.conf ファイルの [nfsd] セクションに、以下のオプションを設定します。

[nfsd]

vers4.1=y

3. pnfs オプションを指定して、NFS で XFS ファイルシステムをエクスポートするように NFS サーバーを設定します。

例6.2 pNFS SCSI をエクスポートするをエクスポートする /etc/exports のエントリーのエントリー

/etc/exports 設定ファイルの以下のエントリーにより、/exported/directory/ にマウントさ れているファイルシステムを、pNFS SCSI レイアウトとして allowed.example.com クライ アントにエクスポートします。

/exported/directory allowed.example.com(pnfs)

関連情報 関連情報

NFS サーバーの設定に関する詳細は、4章NFS 共有のエクスポートを参照してください。

6.5. クライアントで PNFS SCSI の設定

この手順では、pNFS SCSI レイアウトをマウントするように NFS クライアントを設定します。

前提条件 前提条件

NFS サーバーは、pNFS SCSI で XFS ファイルシステムをエクスポートするように設定されて

います。Bug 1891591 を参照してください。「サーバーで pNFS SCSI の設定」

手順 手順

クライアントで、NFS バージョン 4.1 以降を使用して、エクスポートした XFS ファイルシステ ムをマウントします。

# mount -t nfs -o nfsvers=4.1 host:/remote/export /local/directory

NFS なしで XFS ファイルシステムを直接マウントしないでください。

関連情報 関連情報

NFS 共有のマウントの詳細は、3章NFS 共有のマウントを参照してください。

6.6. サーバーでの PNFS SCSI 予約の解放

この手順では、NFS サーバーが SCSI デバイスを維持している永続的な予約を解放します。これによ

り、pNFS SCSI をエクスポートする必要がなくなったら、SCSI デバイスを別の目的で使用できるよう

になります。

サーバーから予約を削除する必要があります。別の IT Nexus から削除することはできません。

前提条件 前提条件

以下のコマンドで、sg3-utils パッケージがインストールされている。

# yum install sg3_utils

手順 手順

1. サーバーで、既存の予約をクエリーします。

# sg_persist --read-reservation path-to-scsi-device

例6.3 /dev/sda での予約のクエリーでの予約のクエリー

# sg_persist --read-reservation /dev/sda LIO-ORG block_1 4.0

Peripheral device type: disk

PR generation=0x8, Reservation follows:

Key=0x100000000000000

scope: LU_SCOPE, type: Exclusive Access, registrants only

2. サーバーにある既存の登録を削除します。

# sg_persist --out \ --release \

--param-rk=reservation-key \ --prout-type=6 \

path-to-scsi-device

例6.4 /dev/sda にある予約の削除にある予約の削除

# sg_persist --out \ --release \

--param-rk=0x100000000000000 \ --prout-type=6 \

/dev/sda

LIO-ORG block_1 4.0 Peripheral device type: disk

関連情報 関連情報

man ページの sg_persist(8)

6.7. PNFS SCSI レイアウト機能の監視

pNFS クライアントとサーバーで、pNFS SCSI 操作が適切に行われることを犠牲にしているかどうか、

または通常の NFS 操作にフォールバックするかどうかを監視できます。

前提条件 前提条件

pNFS SCSI クライアントとサーバーが設定されている。

6.7.1. nfsstat でサーバーの pNFS SCSI 操作の確認

この手順では、nfsstat ユーティティを使用して、サーバーから pNFS SCSI 操作を監視します。

手順 手順

1. サーバーから操作サービスを監視します。

# watch --differences \

"nfsstat --server | egrep --after-context=1 read\|write\|layout"

Every 2.0s: nfsstat --server | egrep --after-context=1 read\|write\|layout putrootfh read readdir readlink remove rename

2 0% 0 0% 1 0% 0 0% 0 0% 0 0%

--setcltidconf verify write rellockowner bc_ctl bind_conn 0 0% 0 0% 0 0% 0 0% 0 0% 0 0%

--getdevlist layoutcommit layoutget layoutreturn secinfononam sequence 0 0% 29 1% 49 1% 5 0% 0 0% 2435 86%

2. クライアントとサーバーは、以下の場合に pNFS SCSI 操作を使用します。

layoutget カウンター、layoutreturn カウンター、および layoutcommit カウンターがイン クリメントします。これは、サーバーがレイアウトを提供することを意味します。

サーバーの read カウンターおよび write カウンターはインクリメントしません。これは、

クライアントが SCSI デバイスに直接 I/O 要求を実行していることを意味します。

6.7.2. mountstats でクライアントからの pNFS SCSI 操作の確認

この手順では、/proc/self/mountstats ファイルを使用して、クライアントから pNFS SCSI 操作を監視 します。

手順 手順

1. マウントごとの操作カウンターを一覧表示します。

# cat /proc/self/mountstats \ | awk /scsi_lun_0/,/^$/ \

| egrep device\|READ\|WRITE\|LAYOUT

device 192.168.122.73:/exports/scsi_lun_0 mounted on /mnt/rhel7/scsi_lun_0 with fstype nfs4 statvers=1.1

nfsv4:

bm0=0xfdffbfff,bm1=0x40f9be3e,bm2=0x803,acl=0x3,sessions,pnfs=LAYOUT_SCSI READ: 0 0 0 0 0 0 0 0

WRITE: 0 0 0 0 0 0 0 0 READLINK: 0 0 0 0 0 0 0 0 READDIR: 0 0 0 0 0 0 0 0

LAYOUTGET: 49 49 0 11172 9604 2 19448 19454 LAYOUTCOMMIT: 28 28 0 7776 4808 0 24719 24722 LAYOUTRETURN: 0 0 0 0 0 0 0 0

LAYOUTSTATS: 0 0 0 0 0 0 0 0 2. 結果は以下のようになります。

LAYOUT 統計は、クライアントとサーバーが pNFS SCSI 操作を使用する要求を示しま す。

READ および WRITE の統計は、クライアントとサーバーが NFS 操作にフォールバックす る要求を示します。