■ インストール
# yum install targetcli
■ 設定用のソフトを起動する
# targetcli
■ バージョンの確認
/> version
targetcli version 2.1.fb38
■ グローバル設定の変更
exit時にオートセーブされると参照時に困るので、変更する。
/> set global auto_save_on_exit=false
Parameter auto_save_on_exit is now 'false'.
ちなみにデフォルトのグローバル設定を見る場合は下記コマンドを実行する。
/> get global
GLOBAL CONFIG GROUP
===================
auto_add_mapped_luns=true
-------------------------
If true, automatically create node ACLs mapped LUNs after creating a new target LUN or a new node ACL
auto_cd_after_create=false
--------------------------
If true, changes current path to newly created objects.
auto_enable_tpgt=true
---------------------
If true, automatically enables TPGTs upon creation.
auto_save_on_exit=true
----------------------
If true, saves configuration on exit.
color_command=cyan
------------------
Color to use for command completions.
color_default=none
------------------
Default text display color.
color_keyword=cyan
------------------
Color to use for keyword completions.
color_mode=true
---------------
Console color display mode.
color_parameter=magenta
-----------------------
Color to use for parameter completions.
color_path=magenta
------------------
Color to use for path completions
completions_in_columns=true
---------------------------
If true, display completions in columns, not lines.
export_backstore_name_as_model=true
-----------------------------------
If true, the backstore name is used for the scsi inquiry model name.
logfile=/root/.targetcli/log.txt
--------------------------------
Logfile to use.
loglevel_console=info
---------------------
Log level for messages going to the console.
loglevel_file=debug
-------------------
Log level for messages going to the log file.
prompt_length=30
----------------
Max length of the shell prompt path, 0 for infinite.
tree_max_depth=0
----------------
Maximum depth of displayed node tree.
tree_round_nodes=true
---------------------
Tree node display style.
tree_show_root=true
-------------------
Whether or not to display tree root.
tree_status_mode=true
---------------------
Whether or not to display status in tree.
■ iSCSIを作成する
※以降、fileioとして記載します。
・fileio作成の場合のサンプル例
/backstores> cd /backstores/fileio
/backstores/fileio> create name=myscsi file_or_dev=/root/myscsi.img
使用するファイルは事前にddなどで作成しておく。
サンプル例は150GBのファイルを作成
# dd if=/dev/zero of=/root/myscsi.img bs=1G count=150
・iSCSI Target情報の作成
デバイス作成した後はiSCSI Targetとしての設定を行う。
※ターゲットのIPアドレスは自動的に設定される。
/backstores/fileio/myscsi> /iscsi create
Created target iqn.2003-01.org.linux-iscsi.hoge.x8664:sn.03e804a17a22.
Created TPG 1.
Created default portal listening on all IPs (0.0.0.0), port 3260.
ターゲット名が既に決まっている場合は指定が出来る。
/backstores/fileio> /iscsi create iqn.2003-01.org.linux-iscsi.hoge.x8664:sn.d2f860cab8b1
Created target iqn.2003-01.org.linux-iscsi.hoge.x8664:sn.d2f860cab8b1.
Created TPG 1.
Created default portal listening on all IPs (0.0.0.0), port 3260.
・LUNを設定する
/backstores/fileio> cd /iscsi/iqn.2003-01.org.linux-iscsi.hoge.x8664:sn.d2f860cab8b1/tpg1
/iscsi/iqn.20...60cab8b1/tpg1> luns/ create /backstores/fileio/myscsi
Created LUN 0.
・ACLを設定する
iSCSI Initiator側のイニシエータ名を指定します。
/iscsi/iqn.20...60cab8b1/tpg1> acls/ create iqn.1991-05.com.microsoft:zzz-pc
Created Node ACL for iqn.1991-05.com.microsoft:zzz-pc
Created mapped LUN 0.
・ターゲットシークレットを設定する
Windows7/8 のiSCSIイニシエーターだと認証無しだと
通過出来なかったのでユーザーとパスワードを設定します。
/iscsi/iqn.20...60cab8b1/tpg1> cd acls/iqn.1991-05.com.microsoft:zzz-pc
/iscsi/iqn.20...icrosoft:zzz-pc> set auth userid=hogeuser
Parameter userid is now 'hogeuser'.
/iscsi/iqn.20...icrosoft:zzz-pc> set auth password=mytargetsecret
Parameter password is now 'mytargetsecret'.
・設定情報を保存する
/iscsi/iqn.20...icrosoft:zzz-pc> cd /
/> saveconfig
Last 10 configs saved in /etc/target/backup.
Configuration saved to /etc/target/saveconfig.json
/> exit
・LIOを起動させる
# systemctl start target
# systemctl enable target
・再設定する場合
再度targetcliを行ってlsコマンドを打つと初期化状態に戻る時があります。
そんな時は下記のコマンドで設定状態を戻す。
/> restoreconfig /etc/target/saveconfig.json