Iscsi: Difference between revisions
m (→On ESXi) |
|||
(20 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
=Links= | = Links = | ||
*http://nil.uniza.sk/linux-howto/linux-mint-mouting-freenas-iscsi-disk | |||
*[http://fibrevillage.com/storage/205-iscsiadm-command-examples-on-linux iscsiadm command examples] | *[http://nil.uniza.sk/linux-howto/linux-mint-mouting-freenas-iscsi-disk http://nil.uniza.sk/linux-howto/linux-mint-mouting-freenas-iscsi-disk] | ||
*[https://fedoraproject.org/wiki/Scsi-target-utils_Quickstart_Guide Scsi-target-utils Quickstart Guide] | *[http://fibrevillage.com/storage/205-iscsiadm-command-examples-on-linux iscsiadm command examples] | ||
*[https://blog.delouw.ch/2013/07/07/creating-and-managing-iscsi-targets/ Creating and managing iSCSI targets] | *[https://fedoraproject.org/wiki/Scsi-target-utils_Quickstart_Guide Scsi-target-utils Quickstart Guide] | ||
*https://wiki.archlinux.org/index.php/TGT_iSCSI_Target | *[https://blog.delouw.ch/2013/07/07/creating-and-managing-iscsi-targets/ Creating and managing iSCSI targets] | ||
*[https://pubs.vmware.com/vsphere-50/topic/com.vmware.vcli.examples.doc_50/cli_manage_iscsi_storage.7.5.html iSCSI on ESXCLI] | *[https://wiki.archlinux.org/index.php/TGT_iSCSI_Target https://wiki.archlinux.org/index.php/TGT_iSCSI_Target] | ||
*https://wiki.archlinux.org/index.php/ISCSI/tgt | *[https://pubs.vmware.com/vsphere-50/topic/com.vmware.vcli.examples.doc_50/cli_manage_iscsi_storage.7.5.html iSCSI on ESXCLI] | ||
*[https://wiki.archlinux.org/index.php/ISCSI/tgt https://wiki.archlinux.org/index.php/ISCSI/tgt] | |||
*[https://ask.openstack.org/en/question/30299/how-to-resize-an-instance-residing-on-a-block-storage-volume/ https://ask.openstack.org/en/question/30299/how-to-resize-an-instance-residing-on-a-block-storage-volume/] | |||
*[http://linux-iscsi.org/wiki/Targetcli targetcli] | |||
*https://www.truenas.com/community/resources/why-iscsi-often-requires-more-resources-for-the-same-result.41/ | |||
*[https://linuxhint.com/share-zfs-volumes-via-iscsi/ Share ZFS volumes via iscsi] | |||
=Terminology= | |||
==multipath== | |||
=Implementations= | |||
[https://scst.sourceforge.net/comparison.html Features comparison between Linux SCSI targets] | |||
==IET== | |||
iSCSI Enterprise Target | |||
*ietd | |||
*ietadm | |||
*iscsitarget | |||
*iscsid | |||
==LIO== | |||
*targetcli | |||
==SCST== | |||
iSCSI Target Driver | |||
*scst | |||
==STGT== | |||
Predecessor of LIO | |||
==ISTGT== | |||
iSCSI Target | |||
FreeBSD/Linux | |||
*istgtcontrol and friends | |||
==Comstar== | |||
Commands: | |||
*itadm | |||
*stmfadm | |||
==TGT== | |||
Linux iSCSI Target | |||
*tgtd | |||
*tgdadm | |||
==open-iscsi== | |||
*iscsiadm? | |||
==FreeBSD== | |||
[https://wiki.freebsd.org/Native%20iSCSI%20target FreeBSD native iscsi target] | |||
*iscsid | |||
*iscsictl | |||
And there's [https://wiki.alpinelinux.org/wiki/Linux_iSCSI_Target_(tgt) tgt] | |||
=FAQ= | =FAQ= | ||
==On ISCSI client== | |||
===Find targets=== | == On ISCSI client == | ||
=== Find targets === | |||
iscsi_discovery 192.168.100.32 | iscsi_discovery 192.168.100.32 | ||
Please logout from all targets on 192.168.178.3:3260 before trying to run discovery on that portal | |||
?? | |||
=== List connected targets === | |||
iscsiadm -m session -P 3 | iscsiadm -m session -P 3 | ||
which seems to list only one, for multiple: | which seems to list only one, for multiple: | ||
tgtadm --lld iscsi --op show --mode conn --tid 1 | tgtadm --lld iscsi --op show --mode conn --tid 1 | ||
but that needs more work | but that needs more work | ||
===List targets=== | === List targets === | ||
iscsiadm -m discovery -t sendtargets -p 192.168.100.32 | iscsiadm -m discovery -t sendtargets -p 192.168.100.32 | ||
===Connect to target=== | === Connect to target === | ||
iscsiadm -m node --targetname="iqn.2018-5.mynet:drbd0" --portal "192.168.100.32" --login | iscsiadm -m node --targetname="iqn.2018-5.mynet:drbd0" --portal "192.168.100.32" --login | ||
if you get things like "iscsiadm: No records found" try a thing like | if you get things like "iscsiadm: No records found" try a thing like | ||
iscsiadm --mode node -l all | iscsiadm --mode node -l all | ||
===Disconnect from target=== | iscsiadm: Could not log into all portals: | ||
=== Disconnect from target === | |||
iscsiadm -m node -T iqn.2018-5.mynet:drbd0 -p 192.168.100.32 -u | iscsiadm -m node -T iqn.2018-5.mynet:drbd0 -p 192.168.100.32 -u | ||
| |||
=== Show session id === | |||
iscsiadm -m session -P 1 | iscsiadm -m session -P 1 | ||
| |||
===Rescan ??=== | === Rescan ?? === | ||
iscsiadm -m node --targetname="foo.bar" -R | iscsiadm -m node --targetname="foo.bar" -R | ||
===Disconnect all targets=== | === Disconnect all targets === | ||
iscsiadm --mode node -u all | iscsiadm --mode node -u all | ||
===Rescan session=== | === Rescan session === | ||
iscsiadm -m session -r SID --rescan | iscsiadm -m session -r SID --rescan | ||
===list targets=== | ===iscsiadm: Could not log into all portals=== | ||
?? | |||
== On server == | |||
=== list targets === | |||
tgtadm --lld iscsi --mode target --op show | tgtadm --lld iscsi --mode target --op show | ||
===list connected targets=== | |||
=== list connected targets === | |||
To list all connections to target with id 1: | |||
tgtadm --lld iscsi --mode conn --op show --tid 1 | tgtadm --lld iscsi --mode conn --op show --tid 1 | ||
And disconnect target: | And disconnect target: | ||
tgtadm --lld iscsi --op delete --mode conn --tid 1 --sid 2 --cid 0 | tgtadm --lld iscsi --op delete --mode conn --tid 1 --sid 2 --cid 0 | ||
===Create iscsi target and Lun=== | === Create iscsi target and Lun === | ||
tgtadm --lld iscsi --mode target --op new --tid=1 --targetname iqn.2009-02.com.example:for.all | tgtadm --lld iscsi --mode target --op new --tid=1 --targetname iqn.2009-02.com.example:for.all | ||
tgtadm --lld iscsi --mode logicalunit --op new --tid 1 --lun 1 -b /var/tmp/iscsi-disk1 | tgtadm --lld iscsi --mode logicalunit --op new --tid 1 --lun 1 -b /var/tmp/iscsi-disk1 | ||
===Delete iscsi target and Lun=== | === Delete iscsi target and Lun === | ||
tgtadm --lld iscsi --mode logicalunit --op delete --tid 1 --lun 1 | tgtadm --lld iscsi --mode logicalunit --op delete --tid 1 --lun 1 | ||
tgtadm --lld iscsi --mode target --op delete --tid=1 | tgtadm --lld iscsi --mode target --op delete --tid=1 | ||
===Reload tgtd configuration=== | === Reload tgtd configuration === | ||
tgt-admin --update ALL | tgt-admin --update ALL | ||
or | or | ||
tgt-admin --update your.irqn.string | tgt-admin --update your.irqn.string | ||
===Show tgdt config=== | === Show tgdt config === | ||
tgt-admin --dump | tgt-admin --dump | ||
=== Grow/resize target === | |||
After resizing the target (lvresize or whatever) | |||
tgt-admin --update tid=xx -v -f | |||
==Show targets== | ==Show targets== | ||
Line 94: | Line 207: | ||
==On ESXi== | ==On ESXi== | ||
*[https://developer.vmware.com/docs/6676/esxcli_iscsi.html esxcli iscsi] | |||
*[https://www.server-world.info/en/note?os=ESXi_7&p=storage&f=4 Use iSCSI storage on esxi] | |||
===Mounting iscsi datastore=== | |||
*[https://sion-it.co.uk/tech/how-to-mount-an-iscsi-datastore-in-esxi-cli/ How to mount an iSCSI datastore in ESXI CLI] | |||
esxcfg-volume -l | |||
esxcfg-volume -m | |||
===List connected targets=== | |||
esxcli iscsi session list | |||
===Do the iSCSI Discovery for the iSCSI Host Bus Adapter.=== | |||
esxcli iscsi adapter discovery rediscover --adapter vmhba64 | |||
===List targets=== | |||
esxcli iscsi adapter target list | |||
===Some commands=== | |||
esxcli storage core path list | esxcli storage core path list | ||
storage core adapter rescan --adapter= | esxcli storage core adapter rescan --adapter=vmhba64 | ||
esxcli iscsi adapter param get -A vmhba64 | esxcli iscsi adapter param get -A vmhba64 | ||
esxcli iscsi adapter list | |||
== Error messages == | |||
=== connection1:0: detected conn error (1020) === | |||
These messages are seen when an iSCSI connection times out (1011 means timeout on initiator side and 1020 means the target dropped the connection) | |||
=== tgtadm: failed to send request hdr to tgt daemon, Transport endpoint is not connected === | |||
tgtd not running :) | |||
| |||
=== tgtd: iser_ib_init(3436) Failed to initialize RDMA; load kernel modules? === | |||
comment out default-driver | comment out default-driver | ||
| |||
=== iscsiadm: No portals found === | |||
ACL issue, try something like | ACL issue, try something like | ||
tgtadm --lld iscsi --op bind --mode target --tid 6 -I ALL | tgtadm --lld iscsi --op bind --mode target --tid 6 -I ALL | ||
| |||
=== iscsiadm: No records found === | |||
Try | |||
iscsiadm -m discovery -t sendtargets -p <ip-address> | iscsiadm -m discovery -t sendtargets -p <ip-address> | ||
[[Category:Storage]] |
Latest revision as of 09:10, 26 April 2024
Links
- http://nil.uniza.sk/linux-howto/linux-mint-mouting-freenas-iscsi-disk
- iscsiadm command examples
- Scsi-target-utils Quickstart Guide
- Creating and managing iSCSI targets
- https://wiki.archlinux.org/index.php/TGT_iSCSI_Target
- iSCSI on ESXCLI
- https://wiki.archlinux.org/index.php/ISCSI/tgt
- https://ask.openstack.org/en/question/30299/how-to-resize-an-instance-residing-on-a-block-storage-volume/
- targetcli
- https://www.truenas.com/community/resources/why-iscsi-often-requires-more-resources-for-the-same-result.41/
- Share ZFS volumes via iscsi
Terminology
multipath
Implementations
Features comparison between Linux SCSI targets
IET
iSCSI Enterprise Target
- ietd
- ietadm
- iscsitarget
- iscsid
LIO
- targetcli
SCST
iSCSI Target Driver
- scst
STGT
Predecessor of LIO
ISTGT
iSCSI Target
FreeBSD/Linux
- istgtcontrol and friends
Comstar
Commands:
- itadm
- stmfadm
TGT
Linux iSCSI Target
- tgtd
- tgdadm
open-iscsi
- iscsiadm?
FreeBSD
- iscsid
- iscsictl
And there's tgt
FAQ
On ISCSI client
Find targets
iscsi_discovery 192.168.100.32
Please logout from all targets on 192.168.178.3:3260 before trying to run discovery on that portal
??
List connected targets
iscsiadm -m session -P 3
which seems to list only one, for multiple:
tgtadm --lld iscsi --op show --mode conn --tid 1
but that needs more work
List targets
iscsiadm -m discovery -t sendtargets -p 192.168.100.32
Connect to target
iscsiadm -m node --targetname="iqn.2018-5.mynet:drbd0" --portal "192.168.100.32" --login
if you get things like "iscsiadm: No records found" try a thing like
iscsiadm --mode node -l all
iscsiadm: Could not log into all portals:
Disconnect from target
iscsiadm -m node -T iqn.2018-5.mynet:drbd0 -p 192.168.100.32 -u
Show session id
iscsiadm -m session -P 1
Rescan ??
iscsiadm -m node --targetname="foo.bar" -R
Disconnect all targets
iscsiadm --mode node -u all
Rescan session
iscsiadm -m session -r SID --rescan
iscsiadm: Could not log into all portals
??
On server
list targets
tgtadm --lld iscsi --mode target --op show
list connected targets
To list all connections to target with id 1:
tgtadm --lld iscsi --mode conn --op show --tid 1
And disconnect target:
tgtadm --lld iscsi --op delete --mode conn --tid 1 --sid 2 --cid 0
Create iscsi target and Lun
tgtadm --lld iscsi --mode target --op new --tid=1 --targetname iqn.2009-02.com.example:for.all tgtadm --lld iscsi --mode logicalunit --op new --tid 1 --lun 1 -b /var/tmp/iscsi-disk1
Delete iscsi target and Lun
tgtadm --lld iscsi --mode logicalunit --op delete --tid 1 --lun 1 tgtadm --lld iscsi --mode target --op delete --tid=1
Reload tgtd configuration
tgt-admin --update ALL
or
tgt-admin --update your.irqn.string
Show tgdt config
tgt-admin --dump
Grow/resize target
After resizing the target (lvresize or whatever)
tgt-admin --update tid=xx -v -f
Show targets
tgt-admin -s
Show target config
This includes target parameters
tgtadm --lld iscsi -o show -m target --tid=1
The disk contains an unclean file system (0, 0).
Metadata kept in Windows cache, refused to mount. Falling back to read-only mount because the NTFS partition is in an unsafe state. Please resume and shutdown Windows fully (no hibernation or fast restarting.)
ntfsfix /dev/sdc1
On ESXi
Mounting iscsi datastore
esxcfg-volume -l
esxcfg-volume -m
List connected targets
esxcli iscsi session list
Do the iSCSI Discovery for the iSCSI Host Bus Adapter.
esxcli iscsi adapter discovery rediscover --adapter vmhba64
List targets
esxcli iscsi adapter target list
Some commands
esxcli storage core path list esxcli storage core adapter rescan --adapter=vmhba64
esxcli iscsi adapter param get -A vmhba64 esxcli iscsi adapter list
Error messages
connection1:0: detected conn error (1020)
These messages are seen when an iSCSI connection times out (1011 means timeout on initiator side and 1020 means the target dropped the connection)
tgtadm: failed to send request hdr to tgt daemon, Transport endpoint is not connected
tgtd not running :)
tgtd: iser_ib_init(3436) Failed to initialize RDMA; load kernel modules?
comment out default-driver
iscsiadm: No portals found
ACL issue, try something like
tgtadm --lld iscsi --op bind --mode target --tid 6 -I ALL
iscsiadm: No records found
Try
iscsiadm -m discovery -t sendtargets -p <ip-address>