Difference between revisions of "ISCSI"

From Amahi Wiki
Jump to: navigation, search
Line 1: Line 1:
Preliminary (manual) suport for [http://en.wikipedia.org/wiki/ISCSI iSCSI] in Amahi 6.
+
This is going to be the howto on how to install a ISCSI server on F14 with Amahi 6
  
From [http://forums.amahi.org/viewtopic.php?f=5&p=13885#p13885 this forums post].
+
First of all the usual warnings
  
'''WARNING: this page may have some items missing in the setup'''
+
Disclaimer: does not cover misuse, accident, lightning, flood, tornado, tsunami, volcanic eruption, earthquake, hurricanes, or other acts of God, neglect, damage from improper use, incorrect line voltage, unauthorized use, unauthorized repair, improper installation, typos, broken antenna or marred cabinet, missing or altered serial numbers, electromagnetic radiation from nuclear blasts, sonic boom vibrations, customer adjustments that are not covered in this list, and incidents owing to an airplane crash, ship sinking or taking on water, motor vehicle crashing, dropping the item, falling rocks, leaky roof, broken glass, disk failure, accidental file deletions, mud slides, forest fire, hitting of a deer, milk coming out of your nose due to laughing while drinking, or projectiles, which can include, but are not limited to, arrows, bullet shots, BBs, shrapnel, lasers, napalm, torpedoes, emissions of X-rays, Alpha, Beta and Gamma rays, knives, stones, etc.
  
= Server side =
+
This disclaimer may not be copied or reproduced in any form
  
Set up an iSCSI server on the Amahi box:
+
without the expressed written consent of whoever I stole it from.
  
{{Code|root@host# yum install scsi-target-utils}}
 
  
Set up 1 Logical Volume (LV) that will be exported as an iSCSI LUN. The below output shows my LV created for time machine (hence the name lvtime).
+
now that we have the legal stuff covered , let's get started
  
{{Code|root@host# lvs <nowiki>|</nowiki> grep time
+
Installing the ISCSI server
lvtime vg00 -wi-ao 500.00g}}
 
  
Export the LV: add it to /etc/tgt/targets.conf (note that there's a convention on how to export these!)
+
Log into your amahi box via ssh and become root
{{Code|<target iqn.2010-08.local.bonabo:galileo.lun1>
 
      backing-store /dev/vg00/lvtime
 
</target>}}
 
  
The name convention for iSCSI LUNs is usually as follows but a vendor can change it at will, it's a convention not a requirement.
+
then install kernel headers and gcc
  
Below how the name comes together, the parts are connected by dots, the lun name is separated by a colon.
+
yum install kernel-headers kernel-devel gcc
  
fixed data: iqn -> iqn<br>
+
now we going to download the install script i wrote
date the LUN was created: year-month -> 2012-02<br>
 
your domainname inverted: domain.your -> com.home<br>
 
the LUN name: this is what the vendor usually provides -> lun1<br>
 
  
so that would make the following target:
+
wget http://dl.dropbox.com/u/57179706/iscsi/install.sh
iqn.2012-02.com.home:lun1
 
  
Start the iSCSI target daemon and make sure it starts at boot time:
+
then run sh ./install.sh
  
{{Code|root@host# service tgtd start; chkconfig tgtd on}}
+
this should have now installed the ISCSI server on your Amahi box
  
Check the exported LUN(s):
+
Configuration and creation of an ISCSI disk image
  
{{Code|root@host# tgt-admin -s}}
+
the easiest way to get an iscsi target is to create an image file
  
= Client side =
+
we are doing this by typing :
  
''Linux''
+
mkdir /var/hda/files/iscsi
 +
dd if=/dev/zero of=/var/hda/files/iscsi/disk.img bs=1M count=0 seek=2560000
  
quick how-to for connecting to iSCSI storage (implies that iscsi-initiator-utils are installed!):
+
you can name the disk.img whatever you want and the numbers behind seek is the size of the image disk which in our case is 250 gigs
scan for new LUNs:
 
{{Code|root@host# iscsiadm -m discovery -t sendtargets -p <NAS IP>}}
 
  
login and make the connection persistent
+
now if we look in /var/hda/files/iscsi/ we will find a file called disk.img
{{Code|root@host# iscsiadm -m node -T iqn.2012-02.<domain>.<your>:<LUNname> -p <NAS IP> -l}}
 
  
you should see a new device, you can partition it now
+
Configuring the ISCSI server to serve your disk image
{{Code|root@host# fdisk /dev/<new device>
 
root@host# partprobe /dev/<new device>}}
 
  
Create LVM stuff if you want to, otherwise create the filesystem as you would normally do
+
we have to edit the config file in  /etc/iet/ietd.conf (use your favorite editor)
  
''Mac OSX''
+
Leave everything as it is exept at the bottom we add
 
I installed [http://www.studionetworksolutions.com/products/product_detail.php?pi=11 globalSAN iSCSI Initiator] for OS X by Studio Network Solutions (free community supported) iSCSI client for OS X) on the Mac.
 
  
I configured it to "see" the iSCSI lun (just type in the iqn IIRC); since it's presented to the OS as a normal disk you need to partition the drive first (it's a blank disk as far as the Mac is concerned). Then configure Time Machine to use that disk and you're done!
+
Target iqn.2012-02.com.domain:disk.img
  
''Windows''
+
Lun 0 Path=/var/hda/files/iscsi/disk.img,Type=fileio
  
I'll leave that to someone else.
+
save and exit your editor
 +
 
 +
start/restart your ISCSI server
 +
 
 +
service iscsi-target restart
 +
 
 +
done

Revision as of 02:02, 16 February 2012

This is going to be the howto on how to install a ISCSI server on F14 with Amahi 6

First of all the usual warnings

Disclaimer: does not cover misuse, accident, lightning, flood, tornado, tsunami, volcanic eruption, earthquake, hurricanes, or other acts of God, neglect, damage from improper use, incorrect line voltage, unauthorized use, unauthorized repair, improper installation, typos, broken antenna or marred cabinet, missing or altered serial numbers, electromagnetic radiation from nuclear blasts, sonic boom vibrations, customer adjustments that are not covered in this list, and incidents owing to an airplane crash, ship sinking or taking on water, motor vehicle crashing, dropping the item, falling rocks, leaky roof, broken glass, disk failure, accidental file deletions, mud slides, forest fire, hitting of a deer, milk coming out of your nose due to laughing while drinking, or projectiles, which can include, but are not limited to, arrows, bullet shots, BBs, shrapnel, lasers, napalm, torpedoes, emissions of X-rays, Alpha, Beta and Gamma rays, knives, stones, etc.

This disclaimer may not be copied or reproduced in any form

without the expressed written consent of whoever I stole it from.


now that we have the legal stuff covered , let's get started

Installing the ISCSI server

Log into your amahi box via ssh and become root

then install kernel headers and gcc

yum install kernel-headers kernel-devel gcc

now we going to download the install script i wrote

wget http://dl.dropbox.com/u/57179706/iscsi/install.sh

then run sh ./install.sh

this should have now installed the ISCSI server on your Amahi box

Configuration and creation of an ISCSI disk image

the easiest way to get an iscsi target is to create an image file

we are doing this by typing :

mkdir /var/hda/files/iscsi
dd if=/dev/zero of=/var/hda/files/iscsi/disk.img bs=1M count=0 seek=2560000

you can name the disk.img whatever you want and the numbers behind seek is the size of the image disk which in our case is 250 gigs

now if we look in /var/hda/files/iscsi/ we will find a file called disk.img

Configuring the ISCSI server to serve your disk image

we have to edit the config file in /etc/iet/ietd.conf (use your favorite editor)

Leave everything as it is exept at the bottom we add

Target iqn.2012-02.com.domain:disk.img

Lun 0 Path=/var/hda/files/iscsi/disk.img,Type=fileio

save and exit your editor

start/restart your ISCSI server

service iscsi-target restart

done