Skip to content

Instantly share code, notes, and snippets.

@LordH3lmchen
Last active December 4, 2016 08:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save LordH3lmchen/c417e3fa77d614fb6e50437f13045e68 to your computer and use it in GitHub Desktop.
Save LordH3lmchen/c417e3fa77d614fb6e50437f13045e68 to your computer and use it in GitHub Desktop.
How To Use a FreeBSD Machine to Serve iSCSI Devices

zfs iscsi howto

Eine Workstation wird als VM unter Linux eingerichtet (Qemu+KVM). Der Speicher wird von einem FreeBSD System als iSCSI bereit gestellt. Das wiederrum setzt ZFS als Filesystem ein.

Das FreeBSD Storage hat den namen majestix, die Maschine mit Qemu hat den Namen spielwiese.

root@majestix ~ # zfs list 
NAME                                     USED  AVAIL  REFER  MOUNTPOINT
data                                    7.66T  6.38T   208K  /data
data/backup                             2.05T  6.38T  2.05T  /data/backup
data/home                                336G  6.38T   333G  /data/home
data/multimedia                         4.50T  6.38T  4.50T  /data/multimedia
data/test_zfs_vol                       1.58M  6.38T  1.58M  /data/test_zfs_vol
data/tftpboot                            339M  6.38T   339M  /data/tftpboot
data/timemachine                         798G  6.38T   798G  /data/timemachine
data1                                    881G  4.24T  63.9G  /data1
data1/desaster_backup                    344G  4.24T   344G  /data1/desaster_backup
data1/domain-controller-1-iscsi-target   129G  4.36T  6.81G  -
data1/domain-controller-2-iscsi-target  5.17M  4.24T  5.60G  -
data1/home_desaster_backup               344G  4.24T   344G  /data1/home_desaster_backup
data1/test_zfs_vol_desaster_bak         1.40M  4.24T  1.31M  /data1/test_zfs_vol_desaster_bak
zroot                                   9.27G   436G    96K  none
zroot/ROOT                              7.09G   436G    96K  none
zroot/ROOT/default                      7.09G   436G  7.09G  /
zroot/tmp                                448M   436G   448M  /tmp
zroot/usr                                610M   436G    96K  /usr
zroot/usr/home                           136K   436G   136K  /usr/home
zroot/usr/ports                          609M   436G   609M  /usr/ports
zroot/usr/src                             96K   436G    96K  /usr/src
zroot/var                               1.14G   436G    96K  /var
zroot/var/crash                           96K   436G    96K  /var/crash
zroot/var/log                           5.40M   436G  5.40M  /var/log
zroot/var/mail                          1.13G   436G  1.13G  /var/mail
zroot/var/tmp

Der zpool /data1 wird zum sichern von /data und als Datengrab für VMs verwendet

Es wird eine Virtuelle Maschine mit Windows 10 aufgesetzt für einige Business Applikationen.

zfs create -V 1t -o compression=on data1/virtual-win10-workstation  

Erstellt ein 1t großes Volume. Danach wird das Volume in die ctl.conf hinzugefügt.

root@majestix /etc # cat ctl.conf 
auth-group ag0 {
    chap spielwiese ThePlace4ThePlayers
}
portal-group pg0 {
    discovery-auth-group no-authentication
    listen 172.18.0.1
}
target iqn.2012-06.com.trabauer:target0 {
    auth-group no-authentication
    portal-group pg0
    lun 0 {
        path /dev/zvol/data1/domain-controller-1-iscsi-target
    }
    lun 1 {
        path /dev/zvol/data1/domain-controller-2-iscsi-target
    }
    lun 2 {
    	path /dev/zvol/data1/virtual-win10-workstation
	}


}

Der ctld muss auf der Maschine aktiv sein.

root@majestix /etc # cat /etc/rc.conf
....
....
#iSCSI
ctld_enable="YES"
....
....
service ctld start

Wenn der Daemon bereits läuft reich ein reload.

service ctld reload

Das wars nun kann auf der spielwiese bereits das iscsi target genutzt werden. Ich hab die iSCSI authentifizierung inaktiv weil es ein sehr sehr kleines Familienunternehmen ist und weil nur auf eine Netzwerkverbindung gelauscht wird. Diese ist direkt zwischen den beiden Maschinen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment