10.4. iSCSI ターゲットの設定
ストレージ管理者は、gwcli
コマンドラインユーティリティーを使用して、ターゲット、LUN、およびクライアントを 設定 できます。iSCSI ターゲットの パフォーマンスを最適化 して、gwcli reconfigure
サブコマンドを使用することもできます。
Red Hat は、gwcli
など、Ceph iSCSI ゲートウェイツールでエクスポートされた Ceph ブロックデバイスイメージの管理はサポートしていません。また、rbd
コマンドを使用して Ceph iSCSI ゲートウェイでエクスポートされた RBD イメージの名前を変更または削除すると、ストレージクラスターが不安定になる可能性があります。
iSCSI ゲートウェイ設定から RBD イメージを削除する前に、オペレーティングシステムからストレージデバイスを削除する標準的な手順に従います。詳細は、Red Hat Enterprise Linux 7 のStorage Administration Guideの Removing a storage device の章または Red Hat Enterprise Linux 8 の System Design Guide を参照してください。
10.4.1. 前提条件
- Ceph iSCSI ゲートウェイソフトウェアのインストール。
10.4.2. コマンドラインインターフェイスを使用した iSCSI ターゲットの設定
Ceph iSCSI ゲートウェイは、iSCSI ターゲットノードおよび Ceph クライアントノードです。Ceph iSCSI ゲートウェイをスタンドアロンノード上に設定するか、Ceph Object Storage Device (OSD) ノードと同じ場所に配置します。
本書に規定されているか、Red Hat サポートからの指示がない限り、gwcli reconfigure
サブコマンドを使用して他のオプションを調整しないようにしてください。
前提条件
- Ceph iSCSI ゲートウェイソフトウェアのインストール。
手順
ホストで実行している iSCSI コンテナーの情報を取得します。
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman ps podman exec -it 4b5ffb814409 /bin/bash
[root@iscsigw ~]# podman ps [root@iscsigw ~]# podman exec -it 4b5ffb814409 /bin/bash
iSCSI ゲートウェイのコマンドラインインターフェイスを起動します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow gwcli
[root@iscsigw ~]# gwcli
iscsi-targets
ディレクトリーに移動します。例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow />cd /iscsi-targets
/>cd /iscsi-targets
IPv4 アドレスまたは IPv6 アドレスのいずれかを使用して iSCSI ゲートウェイを作成します。
構文
Copy to Clipboard Copied! Toggle word wrap Toggle overflow />iscsi-targets create iqn.2003-01.com.redhat.iscsi-gw:_TARGET_NAME_ > goto gateways > create ISCSI_GW_NAME IP_ADDR_OF_GW > create ISCSI_GW_NAME IP_ADDR_OF_GW
/>iscsi-targets create iqn.2003-01.com.redhat.iscsi-gw:_TARGET_NAME_ > goto gateways > create ISCSI_GW_NAME IP_ADDR_OF_GW > create ISCSI_GW_NAME IP_ADDR_OF_GW
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow />iscsi-targets create iqn.2003-01.com.redhat.iscsi-gw:ceph-igw > goto gateways > create ceph-gw-1 10.172.19.21 > create ceph-gw-2 10.172.19.22
/>iscsi-targets create iqn.2003-01.com.redhat.iscsi-gw:ceph-igw > goto gateways > create ceph-gw-1 10.172.19.21 > create ceph-gw-2 10.172.19.22
Ceph ブロックデバイスを追加します。
構文
Copy to Clipboard Copied! Toggle word wrap Toggle overflow > cd /disks />disks/ create POOL_NAME image=IMAGE_NAME size=IMAGE_SIZE_m|g|t
> cd /disks />disks/ create POOL_NAME image=IMAGE_NAME size=IMAGE_SIZE_m|g|t
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow > cd /disks />disks/ create rbd image=disk_1 size=50g
> cd /disks />disks/ create rbd image=disk_1 size=50g
注記プールまたはイメージ名では、ピリオド (
.
) を使用しないでください。クライアントを作成します。
構文
Copy to Clipboard Copied! Toggle word wrap Toggle overflow > goto hosts > create iqn.1994-05.com.redhat:_client_name_ > auth username=USER_NAME password=PASSWORD
> goto hosts > create iqn.1994-05.com.redhat:_client_name_ > auth username=USER_NAME password=PASSWORD
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow > goto hosts > create iqn.1994-05.com.redhat:rh7-client > auth username=iscsiuser1 password=temp12345678
> goto hosts > create iqn.1994-05.com.redhat:rh7-client > auth username=iscsiuser1 password=temp12345678
重要Red Hat は、Challenge Handshake Authentication Protocol (CHAP) が一部で有効になっており、他で無効になっているなど、クライアントの混同はサポートしていません。すべてのクライアントの CHAP を有効にするか、無効にする必要があります。デフォルトの動作としては、イニシエーター名でイニシエーターを認証するだけです。
イニシエーターがターゲットへのログインに失敗した場合には、以下のように、イニシエーターに CHAP 認証が正しく設定されない場合があります。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow o- hosts ................................ [Hosts: 2: Auth: MISCONFIG]
o- hosts ................................ [Hosts: 2: Auth: MISCONFIG]
ホスト
レベルで次のコマンドを使用して、CHAP 認証をすべてリセットします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow /> goto hosts /iscsi-target...csi-igw/hosts> auth nochap ok ok /iscsi-target...csi-igw/hosts> ls o- hosts ................................ [Hosts: 2: Auth: None] o- iqn.2005-03.com.ceph:esx ........... [Auth: None, Disks: 4(310G)] o- iqn.1994-05.com.redhat:rh7-client .. [Auth: None, Disks: 0(0.00Y)]
/> goto hosts /iscsi-target...csi-igw/hosts> auth nochap ok ok /iscsi-target...csi-igw/hosts> ls o- hosts ................................ [Hosts: 2: Auth: None] o- iqn.2005-03.com.ceph:esx ........... [Auth: None, Disks: 4(310G)] o- iqn.1994-05.com.redhat:rh7-client .. [Auth: None, Disks: 0(0.00Y)]
ディスクをクライアントに追加します。
構文
Copy to Clipboard Copied! Toggle word wrap Toggle overflow />iscsi-target..eph-igw/hosts > cd iqn.1994-05.com.redhat:_CLIENT_NAME_ > disk add POOL_NAME/IMAGE_NAME
/>iscsi-target..eph-igw/hosts > cd iqn.1994-05.com.redhat:_CLIENT_NAME_ > disk add POOL_NAME/IMAGE_NAME
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow />iscsi-target..eph-igw/hosts > cd iqn.1994-05.com.redhat:rh7-client > disk add rbd/disk_1
/>iscsi-target..eph-igw/hosts > cd iqn.1994-05.com.redhat:rh7-client > disk add rbd/disk_1
Ceph ISCSI ゲートウェイが機能していることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /> goto gateways /iscsi-target...-igw/gateways> ls o- gateways ............................ [Up: 2/2, Portals: 2] o- ceph-gw-1 ........................ [ 10.172.19.21 (UP)] o- ceph-gw-2 ........................ [ 10.172.19.22 (UP)]
/> goto gateways /iscsi-target...-igw/gateways> ls o- gateways ............................ [Up: 2/2, Portals: 2] o- ceph-gw-1 ........................ [ 10.172.19.21 (UP)] o- ceph-gw-2 ........................ [ 10.172.19.22 (UP)]
ステータスが
UNKNOWN
の場合は、ネットワークの問題と設定ミスがないか確認します。ファイアウォールを使用している場合は、適切な TCP ポートが開いていることを確認します。iSCSI ゲートウェイがtrusted_ip_list
オプションにリスト表示されていることを確認します。rbd-target-api
サービスが iSCSI ゲートウェイノードで実行されていることを確認します。必要に応じて、
max_data_area_mb
オプションを再設定します。構文
Copy to Clipboard Copied! Toggle word wrap Toggle overflow />disks/ reconfigure POOL_NAME/IMAGE_NAME max_data_area_mb NEW_BUFFER_SIZE
/>disks/ reconfigure POOL_NAME/IMAGE_NAME max_data_area_mb NEW_BUFFER_SIZE
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow />disks/ reconfigure rbd/disk_1 max_data_area_mb 64
/>disks/ reconfigure rbd/disk_1 max_data_area_mb 64
注記max_data_area_mb
オプションは、iSCSI ターゲットと Ceph クラスターの間で SCSI コマンドデータを渡す時に各イメージが使用できるメモリー量をメガバイト単位で制御します。この値が小さすぎると、キューが過剰に再試行され、パフォーマンスに影響する可能性があります。値が大きすぎると、1 つのディスクで過剰にシステムメモリーが使用あれ、他のサブシステムの割り当てに失敗する可能性があります。max_data_area_mb
オプションのデフォルト値は8
です。- iSCSI イニシエーターを設定します。
関連情報
- 詳細は、iSCSI ゲートウェイのインストール を参照してください。
- 詳細は、iSCSI イニシエーターの設定 セクションを参照してください。
10.4.3. iSCSI ターゲットのパフォーマンスの最適化
ネットワーク上で iSCSI ターゲット転送データを送信する方法を制御する設定は多数あります。これらの設定を使用して、iSCSI ゲートウェイのパフォーマンスを最適化できます。
Red Hat サポートの指示または本書の記載がない限り、この設定は変更しないでください。
gwcli reconfigure
サブコマンドは、iSCSI ゲートウェイのパフォーマンスの最適化に使用される設定を制御します。
iSCSI ターゲットのパフォーマンスに影響する設定
max_data_area_mb
- 説明
- カーネルデータリングバッファーのサイズ (メガバイト単位)。
- 型
- Integer
- デフォルト
-
8
cmdsn_depth
- 説明
- 最大 I/O を制御するキューの深さを示します。
- 型
- Integer
- デフォルト
-
128
immediate_data
- 説明
-
イニシエータが新しいセッションを確立するたびに、直近のデータを送信するためにターゲットからの許可を要求するかどうかを示します。この値が
Yes
の場合、イニシエータは新しいセッションを確立するたびに、直近のデータを送信するためにターゲットからの許可を要求します。 - 型
- Boolean
- デフォルト
-
はい
initial_r2t
- 説明
-
ホストバスアダプター (HBA) イニシエータが新しいセッションを確立するたびに、要求されていない SCSI データを送信するためにターゲットからの許可を要求するかどうかを示します。このメンバーが
Yes
の場合、HBA イニシエータは新しいセッションを確立するたびに、要求されていない SCSI データを送信するためにターゲットからの許可を要求します。 - 型
- Boolean
- デフォルト
-
はい
max_outstanding_r2t
- 説明
- タスクを開始する最初の R2T を除く、各タスクの未処理の転送準備の整った (R2T) リクエストの最大数。
- 型
- Integer
- デフォルト
-
1
first_burst_length
- 説明
- 1 つの SCSI コマンドの実行中に iSCSI イニシエーターがターゲットに送信できる要求されていないデータの最大量。
- 型
- 整数 (バイト単位)
- デフォルト
-
262144
max_burst_length
- 説明
- 入力 PDU シーケンスまたは要求出力 PDU シーケンスにおける最大 SCSI データペイロード。
- 型
- 整数 (バイト単位)
- デフォルト
-
524288
max_recv_data_segment_length
- 説明
- イニシエーターがターゲットから iSCSI PDU で受信できる最大のデータバイト数。
- 型
- 整数 (バイト単位)
- デフォルト
-
262144
max_xmit_data_segment_length
- 説明
- イニシエーターが iSCSI PDU でターゲットに送信する最大のデータバイト数。
- 型
- 整数 (バイト単位)
- デフォルト
-
0
関連情報
-
gwcli の再設定
を使用して調整する方法を示す例など、max_data_area_mb
に関する情報は、コマンドラインインターフェイスを使用した iSCSI ターゲットの設定 のセクションを参照してください。
10.4.4. コマンドラインインターフェイスを使用した iSCSI ホストグループの設定
Ceph iSCSI ゲートウェイは、同じディスク設定を共有するサーバーを複数管理するホストグループを設定できます。iSCSI ホストグループでは、ホストの論理グループと、グループ内の各ホストがアクセスできるディスクが作成されます。
複数のホストへのディスクデバイスの共有は、クラスター対応のファイルシステムを使用する必要があります。
前提条件
- Ceph iSCSI ゲートウェイソフトウェアのインストール。
- Ceph iSCSI ゲートウェイノードへの root レベルのアクセス。
手順
ホストで実行している iSCSI コンテナーの情報を取得します。
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow [root@iscsigw ~] podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4b5ffb814409 registry.redhat.io/rhceph-alpha/rhceph-5-rhel8:latest 2 hours ago Up 2 hours ago ceph-f838eb7a-597c-11eb-b0a9-525400e2439c-iscsi.iscsi.cephLab2-node-01.anaahg
[root@iscsigw ~] podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4b5ffb814409 registry.redhat.io/rhceph-alpha/rhceph-5-rhel8:latest 2 hours ago Up 2 hours ago ceph-f838eb7a-597c-11eb-b0a9-525400e2439c-iscsi.iscsi.cephLab2-node-01.anaahg
iSCSI コンテナー ID を使用してコンテナーに移動します。
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman exec -it 4b5ffb814409 /bin/bash
[root@iscsigw ~]# podman exec -it 4b5ffb814409 /bin/bash
gwcli
コマンドを実行します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow [ceph: root@iscsigw /]# gwcli
[ceph: root@iscsigw /]# gwcli
新規ホストグループを作成します。
構文
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cd iscsi-targets/ cd IQN/host-groups create group_name=GROUP_NAME
cd iscsi-targets/ cd IQN/host-groups create group_name=GROUP_NAME
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /> cd iscsi-targets/ /iscsi-targets> cd iqn.2003-01.com.redhat.iscsi-gw:ceph-igw/host-groups/ /iscsi-target.../host-groups> create group_name=igw_grp01
/> cd iscsi-targets/ /iscsi-targets> cd iqn.2003-01.com.redhat.iscsi-gw:ceph-igw/host-groups/ /iscsi-target.../host-groups> create group_name=igw_grp01
ホストグループにホストを追加します。
重要ホストを追加する前に、ホストに追加したすべてのディスクをホストグループから削除してください。そうでないと、ホストグループにホストを追加することはできません。
構文
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cd GROUP_NAME host add client_iqn=CLIENT_IQN
cd GROUP_NAME host add client_iqn=CLIENT_IQN
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow > cd igw_grp01 /iscsi-target.../host-groups/igw_grp01> host add client_iqn=iqn.1994-05.com.redhat:rh8-client
> cd igw_grp01 /iscsi-target.../host-groups/igw_grp01> host add client_iqn=iqn.1994-05.com.redhat:rh8-client
この手順を繰り返して、追加のホストをグループに追加します。
ホストグループにディスクを追加します。
構文
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cd /disks/ /disks> create pool=POOL image=IMAGE_NAME size=SIZE cd /IQN/host-groups/GROUP_NAME disk add POOL/IMAGE_NAME
cd /disks/ /disks> create pool=POOL image=IMAGE_NAME size=SIZE cd /IQN/host-groups/GROUP_NAME disk add POOL/IMAGE_NAME
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow > cd /disks/ /disks> create pool=rbd image=rbdimage size=1G /> cd iscsi-targets/iqn.2003-01.com.redhat.iscsi-gw:ceph-igw/host-groups/igw_grp01/ /iscsi-target...s/igw_grp01> disk add rbd/rbdimage
> cd /disks/ /disks> create pool=rbd image=rbdimage size=1G /> cd iscsi-targets/iqn.2003-01.com.redhat.iscsi-gw:ceph-igw/host-groups/igw_grp01/ /iscsi-target...s/igw_grp01> disk add rbd/rbdimage
この手順を繰り返して、グループにディスクを追加します。
10.4.5. 関連情報
- Red Hat Ceph Storage ダッシュボードを使用して iSCSI ターゲットを設定する方法は、Red Hat Ceph Storage ダッシュボードガイドの iSCSI ターゲットの作成 セクションを参照してください。