ISCSI: Difference between revisions
New page: This procedure will allow you to have a partition on a Linux server and then mount that partition on another Linux, Mac or Windows computer as an iSCSI device. On your host computer you ne... |
|||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
= Introduction = | |||
This procedure will allow you to have a partition on a Linux server and then mount that partition on another Linux, Mac or Windows computer as an iSCSI device. On your host computer you need an allocated hard disk or a partition of a hard disk to be used as an iSCSI target. | This procedure will allow you to have a partition on a Linux server and then mount that partition on another Linux, Mac or Windows computer as an iSCSI device. On your host computer you need an allocated hard disk or a partition of a hard disk to be used as an iSCSI target. | ||
All of the information below is available from the installation documentation. | |||
<pre> | |||
/usr/share/doc/scsi-target-utils-0.0/README.iscsi | |||
</pre> | |||
= Installation = | = Installation = | ||
Line 18: | Line 24: | ||
</pre> | </pre> | ||
'''NOTE:''' | '''NOTE:''' The target name must be in lowercase for windows to be able to successfully connect to it. If you have uppercase characters in the name you will get errors on connection. | ||
= Add a logical Unit = | = Add a logical Unit = | ||
Line 32: | Line 38: | ||
</pre> | </pre> | ||
This command will allow anyone to connect which is obviously insecure. | This command will allow anyone to connect which is obviously insecure. | ||
== Based on IP Address == | == Based on IP Address == | ||
=== Individual IP === | |||
<pre> | <pre> | ||
tgtadm --lld iscsi --op bind --mode target --tid 1 -I 10.10.0.24 | tgtadm --lld iscsi --op bind --mode target --tid 1 -I 10.10.0.24 | ||
</pre> | </pre> | ||
== Based on Subnet == | === Based on Subnet === | ||
<pre> | <pre> | ||
tgtadm --lld iscsi --op bind --mode target --tid 1 -I 10.10.0.0/24 | tgtadm --lld iscsi --op bind --mode target --tid 1 -I 10.10.0.0/24 | ||
Line 51: | Line 59: | ||
</pre> | </pre> | ||
= List Active Targets = | |||
<pre> | |||
tgtadm --lld iscsi --op show --mode target | |||
</pre> | |||
Running the command on my server show the following output. | |||
<pre> | |||
Target 1: myvideofiles | |||
System information: | |||
Driver: iscsi | |||
Status: running | |||
I_T nexus information: | |||
LUN information: | |||
LUN: 0 | |||
Type: controller | |||
SCSI ID: deadbeaf1:0 | |||
SCSI SN: beaf10 | |||
Size: 0 | |||
Backing store: No backing store | |||
LUN: 1 | |||
Type: disk | |||
SCSI ID: deadbeaf1:1 | |||
SCSI SN: beaf11 | |||
Size: 65G | |||
Backing store: /dev/hda4 | |||
Account information: | |||
ACL information: | |||
ALL | |||
</pre> | |||
= Stopping the tgtd Service = | |||
Currently there is no clean way to stop the tgtd service. | |||
<pre> | |||
killall -9 tgtd | |||
</pre> | |||
= Possible Bug = | |||
When I reboot my Linux server it no longer displays or recognises any active targets. To get around this problem I add the commands to the servers start file as to configure active targets at boot. | |||
== Created File == | |||
<pre> | |||
vi /opt/mount-iscsi-initiator | |||
</pre> | |||
paste the follwing contents. | |||
<pre> | |||
tgtadm --lld iscsi --op new --mode target --tid 1 --targetname myvideofiles | |||
tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 -b /dev/hda4 | |||
tgtadm --lld iscsi --op bind --mode target --tid 1 -I ALL | |||
</pre> | |||
== Add to Start Up File == | |||
<pre> | |||
vi /etc/rc.d/rc.local | |||
</pre> | |||
add the line | |||
<pre> | |||
/opt/mount-iscsi-initiator | |||
</pre> | |||
[[Category : Linux]] | [[Category : Linux]] |
Latest revision as of 10:57, 4 March 2009
Introduction
This procedure will allow you to have a partition on a Linux server and then mount that partition on another Linux, Mac or Windows computer as an iSCSI device. On your host computer you need an allocated hard disk or a partition of a hard disk to be used as an iSCSI target.
All of the information below is available from the installation documentation.
/usr/share/doc/scsi-target-utils-0.0/README.iscsi
Installation
Lets get started by installing the iSCSI initiator on the Linux host.
yum install scsi-target-utils
Service Startup at Boot
chkconfig tgtd on service tgtd start
Create a new target
tgtadm --lld iscsi --op new --mode target --tid 1 --targetname myvideofiles
NOTE: The target name must be in lowercase for windows to be able to successfully connect to it. If you have uppercase characters in the name you will get errors on connection.
Add a logical Unit
tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 -b /dev/hda4
NOTE: In this example I have created a partition that I will be using. That is why I have specified /dev/hda4. You may have specified /dev/hda or /dev/hdb for a whole hard disk, depending on your configuration.
Security
Allow All Initiators
tgtadm --lld iscsi --op bind --mode target --tid 1 -I ALL
This command will allow anyone to connect which is obviously insecure.
Based on IP Address
Individual IP
tgtadm --lld iscsi --op bind --mode target --tid 1 -I 10.10.0.24
Based on Subnet
tgtadm --lld iscsi --op bind --mode target --tid 1 -I 10.10.0.0/24
Authentication (CHAP)
First, create a user and password
tgtadm --lld iscsi --op new --mode account --user ''consumer'' --password ''Longsw0rd''
Next, add the users to an existing target device
tgtadm --lld iscsi --op bind --mode account --tid 1 --user ''consumer''
List Active Targets
tgtadm --lld iscsi --op show --mode target
Running the command on my server show the following output.
Target 1: myvideofiles System information: Driver: iscsi Status: running I_T nexus information: LUN information: LUN: 0 Type: controller SCSI ID: deadbeaf1:0 SCSI SN: beaf10 Size: 0 Backing store: No backing store LUN: 1 Type: disk SCSI ID: deadbeaf1:1 SCSI SN: beaf11 Size: 65G Backing store: /dev/hda4 Account information: ACL information: ALL
Stopping the tgtd Service
Currently there is no clean way to stop the tgtd service.
killall -9 tgtd
Possible Bug
When I reboot my Linux server it no longer displays or recognises any active targets. To get around this problem I add the commands to the servers start file as to configure active targets at boot.
Created File
vi /opt/mount-iscsi-initiator
paste the follwing contents.
tgtadm --lld iscsi --op new --mode target --tid 1 --targetname myvideofiles tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 -b /dev/hda4 tgtadm --lld iscsi --op bind --mode target --tid 1 -I ALL
Add to Start Up File
vi /etc/rc.d/rc.local
add the line
/opt/mount-iscsi-initiator