Difference between revisions of "Set up an iscsi storage"
imported>ThorstenStaerk |
|||
(11 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
[http://en.wikipedia.org/wiki/Iscsi iSCSI] is a protocol that allows you to connect to block-oriented [[storage]] over the IP-[[network]]. To have an ISCSI target, you do not need to buy an enterprise-class ISCSI storage, you can start an ISCSI target as service on your computer. This is especially useful when running e.g. [[cluster]] tests on shared storage. | [http://en.wikipedia.org/wiki/Iscsi iSCSI] is a protocol that allows you to connect to block-oriented [[storage]] over the IP-[[network]]. To have an ISCSI target, you do not need to buy an enterprise-class ISCSI storage, you can start an ISCSI target as service on your computer. This is especially useful when running e.g. [[cluster]] tests on shared storage. | ||
− | + | = QuickStart = | |
+ | |||
+ | == SUSE Linux Enterprise server 10 == | ||
+ | |||
+ | In this chapter, we will set up an ISCSI target and connect to it | ||
+ | |||
+ | === Check your state === | ||
+ | |||
+ | See how many block devices you have attached: | ||
+ | [[hwinfo]] --block --short | ||
+ | |||
+ | === Set up a target === | ||
+ | |||
+ | * start [[yast2]] | ||
+ | * chose Miscellaneous->iSCSI target | ||
+ | * continue as instructed, if prompted, allow to [[install]] the [[package]] iscsitarget | ||
+ | |||
+ | === Set up an initiator === | ||
+ | |||
+ | * start [[yast2]] | ||
+ | * chose Miscellaneous->iSCSI initiator | ||
+ | * continue as instructed, if prompted, allow to [[install]] the [[package]] openiscsi | ||
+ | |||
+ | === Check if it worked === | ||
+ | |||
+ | See how many block devices you have attached: | ||
+ | [[hwinfo]] --block --short | ||
+ | It must be more than before | ||
+ | |||
+ | == generic == | ||
+ | |||
+ | In this chapter we will set up an iscsi target and test it by installing an iscsi initiator. | ||
+ | |||
+ | === Set up a target === | ||
+ | |||
+ | * Download the latest version of iscsi-target from http://iscsitarget.sourceforge.net/. In this example, we use version 0.4.15. | ||
+ | * Unpack the [[package]] you just downloaded | ||
+ | [[tar]] xvfz iscsitarget-0.4.15.tar.gz | ||
+ | * [[Build]] the [[software]] | ||
+ | [[cd]] iscsitarget-0.4.15 | ||
+ | [[make]] [[&&]] make [[install]] | ||
+ | on problems see the article [[Compiling]]. | ||
+ | * create a configuration for your service: | ||
+ | '''/etc/ietd.conf''' | ||
+ | <source> | ||
+ | Target iqn.2007-12.local.net:storage.lvm | ||
+ | Lun 0 Path=/dev/hdb | ||
+ | </source> | ||
+ | * start the service | ||
+ | /etc/init.d/iscsi-target start | ||
+ | * verify the service is running | ||
+ | <source> | ||
+ | [[lsof]] -i | ||
+ | [...] | ||
+ | ietd 8692 root 7u IPv6 36856 TCP *:iscsi-target (LISTEN) | ||
+ | ietd 8692 root 8u IPv4 36857 TCP *:iscsi-target (LISTEN) | ||
+ | </source> | ||
+ | |||
+ | === Set up an initiator === | ||
+ | |||
+ | To set up an iscsi initiator, [[install]] the openiscsi [[package]]. Then, discover your targets. Let's assume the [http://en.wikipedia.org/wiki/IP-Address IP-address] of your target is ''192.168.0.5'' | ||
+ | |||
+ | <source> | ||
+ | iscsiadm -m discovery -t st -p ''192.168.0.5'' | ||
+ | [fa084c] ''192.168.0.5'':3260,1 ''iqn.2001-04.com.example:storage.disk2.sys1.xyz'' | ||
+ | [3727f9] 127.0.0.1:3260,1 ''iqn.2001-04.com.example:storage.disk2.sys1.xyz'' | ||
+ | iscsiadm -m node | ||
+ | [fa084c] ''192.168.0.5'':3260,1 ''iqn.2001-04.com.example:storage.disk2.sys1.xyz'' | ||
+ | [3727f9] 127.0.0.1:3260,1 ''iqn.2001-04.com.example:storage.disk2.sys1.xyz'' | ||
+ | </source> | ||
+ | |||
+ | You know now you have a target named ''iqn.2001-04.com.example:storage.disk2.sys1.xyz'' | ||
+ | Now have a look what drives you have attached: | ||
+ | <source> | ||
+ | [[hwinfo]] --block --short | ||
+ | disk: | ||
+ | /dev/sda VMware Virtual S | ||
+ | /dev/sdb IET VIRTUAL-DISK | ||
+ | partition: | ||
+ | [...] | ||
+ | </source> | ||
+ | Now connect your iscsi target: | ||
+ | <source> | ||
+ | iscsiadm -m node -T iqn.2001-04.com.example:storage.disk2.sys1.xyz -p 192.168.0.5:3260 --login | ||
+ | </source> | ||
+ | And find a new device in your list: | ||
+ | <source> | ||
+ | hwinfo --block --short | ||
+ | disk: | ||
+ | /dev/sda VMware Virtual S | ||
+ | /dev/sdb IET VIRTUAL-DISK | ||
+ | /dev/sdc IET VIRTUAL-DISK | ||
+ | partition: | ||
+ | [...] | ||
+ | </source> | ||
+ | |||
+ | = TroubleShooting = | ||
+ | Best idea is probably to check if the iSCSI server is alive. To do this, the iSCSI port 3260 must answer. In the following example there is no iSCSI server running or the port is blocked by the [[firewall]]: | ||
+ | <source> | ||
+ | telnet localhost 3260 | ||
+ | Trying ::1... | ||
+ | telnet: connect to address ::1: Connection refused | ||
+ | Trying 127.0.0.1... | ||
+ | telnet: connect to address 127.0.0.1: Connection refused | ||
+ | </source> | ||
+ | In this case [[stop your firewall]] and make sure the iSCSI service is started. | ||
= See also = | = See also = | ||
− | |||
* http://fedoranews.org/mediawiki/index.php/Going_Enterprise_-_setup_your_FC4_iSCSI_target_in_5_minutes | * http://fedoranews.org/mediawiki/index.php/Going_Enterprise_-_setup_your_FC4_iSCSI_target_in_5_minutes | ||
* http://www.howtoforge.com/iscsi_on_linux | * http://www.howtoforge.com/iscsi_on_linux | ||
[[Category:Guides]] | [[Category:Guides]] |
Latest revision as of 17:16, 1 April 2020
iSCSI is a protocol that allows you to connect to block-oriented storage over the IP-network. To have an ISCSI target, you do not need to buy an enterprise-class ISCSI storage, you can start an ISCSI target as service on your computer. This is especially useful when running e.g. cluster tests on shared storage.
Contents
QuickStart
SUSE Linux Enterprise server 10
In this chapter, we will set up an ISCSI target and connect to it
Check your state
See how many block devices you have attached:
hwinfo --block --short
Set up a target
- start yast2
- chose Miscellaneous->iSCSI target
- continue as instructed, if prompted, allow to install the package iscsitarget
Set up an initiator
- start yast2
- chose Miscellaneous->iSCSI initiator
- continue as instructed, if prompted, allow to install the package openiscsi
Check if it worked
See how many block devices you have attached:
hwinfo --block --short
It must be more than before
generic
In this chapter we will set up an iscsi target and test it by installing an iscsi initiator.
Set up a target
- Download the latest version of iscsi-target from http://iscsitarget.sourceforge.net/. In this example, we use version 0.4.15.
- Unpack the package you just downloaded
tar xvfz iscsitarget-0.4.15.tar.gz
cd iscsitarget-0.4.15 make && make install
on problems see the article Compiling.
- create a configuration for your service:
/etc/ietd.conf <source>
Target iqn.2007-12.local.net:storage.lvm Lun 0 Path=/dev/hdb
</source>
- start the service
/etc/init.d/iscsi-target start
- verify the service is running
<source>
lsof -i [...] ietd 8692 root 7u IPv6 36856 TCP *:iscsi-target (LISTEN) ietd 8692 root 8u IPv4 36857 TCP *:iscsi-target (LISTEN)
</source>
Set up an initiator
To set up an iscsi initiator, install the openiscsi package. Then, discover your targets. Let's assume the IP-address of your target is 192.168.0.5
<source>
iscsiadm -m discovery -t st -p 192.168.0.5 [fa084c] 192.168.0.5:3260,1 iqn.2001-04.com.example:storage.disk2.sys1.xyz [3727f9] 127.0.0.1:3260,1 iqn.2001-04.com.example:storage.disk2.sys1.xyz iscsiadm -m node [fa084c] 192.168.0.5:3260,1 iqn.2001-04.com.example:storage.disk2.sys1.xyz [3727f9] 127.0.0.1:3260,1 iqn.2001-04.com.example:storage.disk2.sys1.xyz
</source>
You know now you have a target named iqn.2001-04.com.example:storage.disk2.sys1.xyz Now have a look what drives you have attached: <source>
hwinfo --block --short disk: /dev/sda VMware Virtual S /dev/sdb IET VIRTUAL-DISK partition: [...]
</source> Now connect your iscsi target: <source>
iscsiadm -m node -T iqn.2001-04.com.example:storage.disk2.sys1.xyz -p 192.168.0.5:3260 --login
</source> And find a new device in your list: <source>
hwinfo --block --short disk: /dev/sda VMware Virtual S /dev/sdb IET VIRTUAL-DISK /dev/sdc IET VIRTUAL-DISK partition: [...]
</source>
TroubleShooting
Best idea is probably to check if the iSCSI server is alive. To do this, the iSCSI port 3260 must answer. In the following example there is no iSCSI server running or the port is blocked by the firewall: <source>
telnet localhost 3260 Trying ::1... telnet: connect to address ::1: Connection refused Trying 127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused
</source> In this case stop your firewall and make sure the iSCSI service is started.