「TGT iSCSI ターゲット」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(文字列「http://www.ietf.org/」を「https://www.ietf.org/」に置換)
(アーカイブ)
タグ: 新規リダイレクト
 
1行目: 1行目:
  +
#redirect [[ArchWiki:アーカイブ]]
[[Category:ストレージ]]
 
  +
[[Category:アーカイブ]]
[[en:TGT iSCSI Target]]
 
[[nl:TGT iSCSI Target]]
 
{{Related articles start}}
 
{{Related|iSCSI ターゲット}}
 
{{Related|iSCSI ブート}}
 
{{Related articles end}}
 
 
[http://stgt.sourceforge.net TGT SCSI フレームワーク] は複数のストレージプロトコルで使うことができます。このドキュメントでは iSCSI ターゲットとして TGT を使用する方法を説明します。
 
 
==TGT について==
 
 
STGT は2006年の末に藤田智成氏によって Linux カーネルに導入されました。カーネル内のターゲットドライバーを補助するライブラリがカーネルに存在します。ターゲットの処理は全てユーザー空間で行われます。2010年の終わりには、カーネル内の SCSI ターゲット実装としての STGT を置き換えるものとして LIO プロジェクトが採択されました。LIO で STGT を置き換えることが決まった時、STGT のユーザー空間モジュールが機能し続けるように LIO が実装されたため、STGT コミュニティはカーネルに含まれた LIO をサポートし続けています。
 
 
メリット:
 
* 活発に開発されています。
 
* シンプルな仕組み。
 
* イーサネット NIC による iSCSI, iSER, IBM pSeries の仮想 SCSI ターゲットドライバーをサポート。
 
* 仮想ディスク, DVD, VTL, RADOS ブロックデバイス (rbd) をサポート。
 
* SCSI UNMAP をサポート。
 
 
欠点としては、ターゲットの処理がユーザー空間で行われるために、場合によってパフォーマンスのボトルネックとなると一部の開発者やユーザーは主張しています。しかしながら、'aio' タイプの LUN を使うことで飛躍的にパフォーマンスを高めることができます。AIO は電源喪失に対して備えがある環境でのみ使用できます。
 
 
==インストール==
 
 
{{AUR|tgt}} パッケージをインストールしてください。ダイレクトストアを使いたい場合、{{Pkg|sg3_utils}} パッケージもインストールしてください。
 
 
ダイレクトストアを使うことで、物理デバイスのプロパティをイニシエータやターゲットから使えるようになります。
 
 
[[ファイアウォール]]を使用している場合、TCP の 3260 番ポートを開ける必要があります。
 
 
==設定==
 
 
設定は以下の方法で行うことができます:
 
 
* {{ic|tgtadm}} ユーティリティを使用して {{ic|tgt-admin --dump}} で設定を保存する。{{ic|tgt-admin}} は {{ic|/etc/tgt/targets.conf}} を読み込んで tgt を設定する Perl スクリプトです。[http://stgt.sourceforge.net TGT ウェブサイト] からリンクされている [https://fedoraproject.org/wiki/Scsi-target-utils_Quickstart_Guide Scsi-target-utils クイックスタートガイド] を見てください。
 
* {{ic|/etc/tgt/targets.conf}} ファイルを編集する。STGT では複数の設定を使うことができます。メインの設定ファイルから他の設定ファイルを読み込んでください: {{ic|include /etc/tgt/*.conf}}。
 
* 手動で設定する:
 
 
ターゲットを作成:
 
# tgtadm --lld iscsi --op new --mode target --tid <unique target ID> -T <unique iSCSI iqn>
 
 
特定のイニシエータからの接続だけを許可する:
 
# tgtadm --lld iscsi --op bind --mode target --tid <target ID> --initiator-name <initiator IQN>
 
 
あるいはイニシエータの IP を指定する:
 
# tgtadm --lld iscsi --op bind --mode target --tid <target ID> --initiator-address <initiator IP>
 
 
ターゲットに LUN をマップする:
 
# tgtadm --lld iscsi --op new --mode logicalunit --tid <target ID> --lun <unique LUN ID> -b /path_to/lun.img
 
 
LUN の ID はゼロ以外の10進数の数字にしてください。LUN 0 はターゲットコントローラ用に予約されています。
 
 
ESXi の場合、LUN に永続的な LUN ID をマップすることがとても重要です。ストレージシステムの LUN の ID が変わってしまうと、ESXi は自動的に再マウントすることができず、PDL 状態になります。再起動しても変わらない LUN ID を定義するためにバッキングストアではなくダイレクトストアを使ってください。
 
 
現在の設定を確認する:
 
 
{{hc|# tgtadm --op show --mode target --tid <target ID>|<nowiki>
 
MaxRecvDataSegmentLength=8192
 
HeaderDigest=None
 
DataDigest=None
 
InitialR2T=Yes
 
MaxOutstandingR2T=1
 
ImmediateData=Yes
 
FirstBurstLength=65536
 
MaxBurstLength=262144
 
DataPDUInOrder=Yes
 
DataSequenceInOrder=Yes
 
ErrorRecoveryLevel=0
 
IFMarker=No
 
OFMarker=No
 
DefaultTime2Wait=2
 
DefaultTime2Retain=20
 
OFMarkInt=Reject
 
IFMarkInt=Reject
 
MaxConnections=1
 
RDMAExtensions=Yes
 
TargetRecvDataSegmentLength=262144
 
InitiatorRecvDataSegmentLength=262144
 
MaxOutstandingUnexpectedPDUs=0
 
MaxXmitDataSegmentLength=8192
 
MaxQueueCmd=128</nowiki>}}
 
 
設定を保存:
 
 
# tgt-admin --dump > /etc/tgt/targets.conf
 
 
設定をリロード:
 
 
# tgt-admin --update ALL
 
 
上記のコマンドは使用していないターゲットだけを更新します。使用中のターゲットも更新するには '--force' を使ってください。
 
 
==設定例==
 
 
<target iqn.2004-01.nl.xtg:iscsi-server1>
 
direct-store /dev/sdb
 
write-cache on
 
initiator-address ALL
 
incominguser user password
 
scsi_id 00010001
 
vendor_id XTG
 
lun 12
 
</target>
 
 
MaxRecvDataSegmentLength 131072
 
MaxXmitDataSegmentLength 131072
 
MaxBurstLength 262144
 
FirstBurstLength 262144
 
TargetRecvDataSegmentLength=262144
 
InitiatorRecvDataSegmentLength=262144
 
MaxOutstandingUnexpectedPDUs=0
 
MaxOutstandingR2T=1
 
MaxCommands=128
 
 
上記の設定では {{ic|/dev/sdb}} が LUN 12 にマッピングされ CHAP 認証が設定されます。また、[https://www.ietf.org/rfc/rfc3720.txt iSCSI の高度なパラメータ] をいくつか使っています。
 
 
== 起動 ==
 
 
STGT は {{ic|tgtd.service}} ユニットで[[起動]]・[[有効化]]できます。
 
 
以下のコマンドで正しく動作しているかどうか確認することが可能です:
 
 
# tgt-admin -s
 
 
== 参照 ==
 
* [https://fedoraproject.org/wiki/Scsi-target-utils_Quickstart_Guide Fedora の STGT クイックスタートガイド]
 
* [http://wpkg.org/TGT-admin 設定ファイルのガイド]
 

2020年7月16日 (木) 17:44時点における最新版