ISCSI
WARNING | |
---|---|
This is recommended only for advanced users, proceed with caution. |
Preliminary (manual) suport for iSCSI in Amahi 6.
From this forums post.
WARNING: this page may have some items missing in the setup
Server side
Set up an iSCSI server on the Amahi box. You can install it using yum. Note that all actions must be done as user root.
bash 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).
bash code |
---|
root@host# lvs | grep time 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!)
Text |
---|
<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.
Below how the name comes together, the parts are connected by dots, the lun name is separated by a colon.
fixed data: iqn -> iqn
date the LUN was created: year-month -> 2012-02
your domainname inverted: domain.your -> com.home
the LUN name: this is what the vendor usually provides -> lun1
so that would make the following target: iqn.2012-02.com.home:lun1
Start the iSCSI target daemon and make sure it starts at boot time:
bash code |
---|
root@host# service tgtd start; chkconfig tgtd on
|
Check the exported LUN(s):
bash code |
---|
root@host# tgt-admin -s
|
Client side
Linux
quick how-to for connecting to iSCSI storage (implies that iscsi-initiator-utils are installed!): scan for new LUNs:
bash code |
---|
root@host# iscsiadm -m discovery -t sendtargets -p <NAS IP>
|
login and make the connection persistent
bash 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
bash 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
Mac OSX
I installed 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!
Windows
I'll let someone else fill that.
Installing the ISCSI server on Fedora 14/Amahi 6 semi-automated
Log into your amahi box via ssh and become root
NOTE: As i have experienced myself it is a good idea to check if your updates are all done correctly . do this by typing
bash code |
---|
yum update
|
Let amahi update whatever is necessary to avoid a kernel module error trying to start the ISCSI server.
Then install kernel headers and gcc
bash code |
---|
yum install kernel-headers kernel-devel gcc
|
Now we going to download the install script i wrote
bash code |
---|
wget http://dl.dropbox.com/u/57179706/iscsi/install.sh
|
Then run
bash code |
---|
sh ./install.sh
|
This should have now compiled and 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:
bash code |
---|
mkdir /var/hda/files/iscsi dd if=/dev/zero of=/var/hda/files/iscsi/disk.img bs=1M count=0 seek=256000
|
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
bash code |
---|
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
bash code |
---|
service iscsi-target restart
|
done
Use Win 7 ISCSI initiator to connect a ISCSI target
Go to Start - Control Panel - click on Administrative tools -
From there click on ISCSI initiator
Install Using External Repository
Disclaimer: The instructions below are for your convenience only. Please note that this is a personal repo/service and as such is not maintained by Amahi. Adding an unknown/untrusted repo may cause security issues.
For ease of use i have created a repository which can easily be added
Download the repo file located at :
bash code |
---|
http://amahirepo.3owl.com/repofile/
|
Download rpmorama.repo (right click and save as)
Copy that file to
Text |
---|
/etc/yum.repos.d/
|
Run
bash code |
---|
yum update
|
Then you can install the iscsi server by typing
bash code |
---|
yum install iscsitarget
|
You still have to create the disk and edit the iet.conf file