1

Temat: iSCSI na OpenWrt

Czy zna ktoś oprogramowanie iSCSI target na konsolę Linux a jeszcze lepiej na OpenWrt które obsługuje dynamiczne obrazy dysków VHD lub VMDK ? Wiem, że na Debiana jest iscsitarget ale nie wiem czy obsługuje takie obrazy. Dlaczego obraz dysku dynamicznego - ponieważ taki plik w przeciwieństwie do obrazu dysku RAW zajmuje mało na dysku i zmieści się na większym pendrivie podłączonym do routera. W ostateczności spróbowałbym z obrazami RAW na podłączonym dysku przenośnym USB.

OK, znalazłem coś takiego jak tgt ale tylko źródła. Cezary - mógłbyś skompilować to na brcm63xx? Dla Ciebie to zapewne pestka bo co raz coś kompilujesz. Ja ostatnio próbowałem kompilować OpenWrt ale nie za bardzo mi to wychodziło - pisałem o tym na forum nawet.

2

Odp: iSCSI na OpenWrt

Jest normalnie w paczkach: https://downloads.openwrt.org/chaos_cal … /packages/

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: iSCSI na OpenWrt

Cezary napisał/a:

Jest normalnie w paczkach: https://downloads.openwrt.org/chaos_cal … /packages/

Cholera, faktycznie mam problemy z szukaniem - nie wiem czemu założyłem iż tego nie ma i szukałem w oldpackages BB

Sprawdzę to ale mam prośbę bo znalazłem coś co prawdopodobnie obsługuje pliki VHD i VMDK:
istgt (iSCSI target, istgt-20120811-Makefile.gz) to chyba nie to samo co tgt

(experimental features)

    VBOX virtual disk format support (VDI,VMDK,VHD,etc)

Mógłbyś to skompilować na brcm63xx?

4

Odp: iSCSI na OpenWrt

Nawet nie otwiera mi się ta strona japońska gdzie ma być "ostatnia wersja".

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: iSCSI na OpenWrt

OK, mi też coś ciężko wejść na tę stronę ale znalazłem źródła w Web Archive:
istgt (iSCSI target) 20150713 for openSUSE/Debian/NetBSD/FreeBSD
istgt-20150713.tar.gz

Tymczasem znalazłem chyba coś lepszego - zdaje się iż iSCSI obsługiwane przez kernel w OpenWrt i do tego ma interfejs LuCI smile:

scst
tutaj wrzucone w translator G....e: Struktury oparte na OpenWrt / gPXE / iSCSI bezdyskowym dla Windows

https://github.com/tobiaswaldvogel/open … aster/scst
https://github.com/tobiaswaldvogel/open … i-app-scst

Wyraźnie widać iż gościu używa pliku VHD jako iSCSI target tylko czy to nie jest ściema i to jest zwykły plik RAW z rozszerzeniem VHD bo polecenie dd chyba nie potrafi robić obrazu w formacie VHD?

Mógłbyś rzucić okiem na to?

Pobrałem pliki LuCI scst i interfejs działa w CC:
http://savepic.net/8914277m.png

tylko brakuje aplikacji:

  • kmod-iscsi-scst

  • kmod-scst

  • kmod-scst-vdisk

  • scst

6

Odp: iSCSI na OpenWrt

Jak tam Cezary - próbujesz kompilować istgt lub scst czy nic?

Znalazłem gościa na hiszpańskim forum który skompilował pakiety scst dla brcm63xx ale do wersji BARRIER BREAKER (Bleeding Edge, r39930) z kernelem 3.10.32. Nie mogę znaleźć tej wersji do routera HG553. Próbowałem zainstalować przez wymuszenie na CC 15.05.1 ale coś nie działa. Zmieniłem OpenWrt na BB z Downloads ale też inna wersja jądra i też chyba nie działa sad

W CC i BB pojawiają mi się takie błędy:

root@OpenWrt:/tmp# /etc/init.d/scst enable
root@OpenWrt:/tmp# /etc/init.d/scst start
/etc/rc.common: eval: line 1: can't create /sys/kernel/scst_tgt/handlers/vdisk_fileio/mgmt: nonexistent directory
/etc/rc.common: eval: line 1: can't create /sys/kernel/scst_tgt/devices//threads_num: nonexistent directory

da się to jakoś poprawić to może zadziała bo chyba z tego wynika iż nie ma jakiegoś katalogu albo ma ktoś link do wersji BB r39930 do HG553?

7

Odp: iSCSI na OpenWrt

Nie, nic nie robiłem jeszcze.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

8 (edytowany przez jzef 2017-02-10 19:56:34)

Odp: iSCSI na OpenWrt

Chyba nic z tego nie będzie bez kompilacji. Próbowałem załadować moduły ręcznie i skopiowałem z katalogu /lib/modules/3.10.32 do lib/modules/3.10.49 i niektóre się ładują ale dwa nie chcą:

root@OpenWrt:~# insmod iscsi-scst.ko
kmod: failed to insert /lib/modules/3.10.49/iscsi-scst.ko
root@OpenWrt:~# insmod scst.ko
root@OpenWrt:~# insmod scst_vdisk.ko
kmod: failed to insert /lib/modules/3.10.49/scst_vdisk.ko

Mam jeszcze pytanie Cezary - niedawno tłumaczyłeś mi, że jak skompiluję jakiś pakiet to powinienem używać go razem ze skompilowanym OpenWrt. Nigdy nie używałem żadnego Twojego obrazu 'by obsy' ale z tego co widzę na forum to wielu użytkowników używa Twoich obrazów. Wiem, że w obrazach masz chyba pakiety takie jak USB a co z innymi pakietami, np. jakbym kupił kamerę i chciał odpalić w twoim obrazie to skąd mam wziąć wtedy sterowniki?

Jak ludzie używają Twoich obrazów? Używają routera tylko do routingu i obsługi sieci LAN?

9

Odp: iSCSI na OpenWrt

To byś pobrał moduł do kamery ode mnie. Komplikuję wszystkie dostępne moduły.

Jeżeli zaś miałbyś kamerę do której nie ma sterowników w kernelu to i tak miałbyś problem.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

10 (edytowany przez jzef 2017-02-10 20:34:54)

Odp: iSCSI na OpenWrt

Cezary napisał/a:

To byś pobrał moduł do kamery ode mnie. Komplikuję wszystkie dostępne moduły.

Jeżeli zaś miałbyś kamerę do której nie ma sterowników w kernelu to i tak miałbyś problem.

W takim razie jak skompilujesz programy scst i istgt w CC 15.05.1 to zacznę używać Twojego obrazu smile

Wiem, że LEDE teraz na topie ale niedawno próbowałem LEDE na swoim routerze HG553 i coś tam mi nie działało jak trzeba - chyba właśnie kamera czy mikrofon kamery i program arecord chyba - gdzieś na forum wspominałem chyba o tym. Więc na razie z LEDE daję spokój bo w CC mi wszystko działa - oprócz iSCSI.

Ale chyba jednak nie kompilujesz wszystkich pakietów które są w Downloads OpenWrt - właśnie wszedłem w Twoje repo https://dl.eko.one.pl/chaos_calmer/brcm63xx/packages/ i nie widzę np. nano, fdisk, tgt

11

Odp: iSCSI na OpenWrt

Rozróżniasz różnicę między pakietami a modułami kernela? Nigdy nie twierdziłem że kompiluję wszystkie pakiety, wręcz przeciwnie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

12

Odp: iSCSI na OpenWrt

Rozróżniam, ale podałem zły przykład z tą kamerą - chodziło mi też o inne pakiety takie jak programy.

13

Odp: iSCSI na OpenWrt

Pakiety to możesz instalować sobie skąd chcesz, byle by się architektura zgadzała. Moduły zaś z tego miejsca skąd masz obraz.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

14 (edytowany przez jzef 2018-05-03 12:43:54)

Odp: iSCSI na OpenWrt

Postanowiłem przetestować na Debianie x86 któryś z serwerów. Udało mi się przetestować 2 wersje istgt - gotowa do instalacji paczka istgt_0.4~20111008-3_i386.deb bez obsługi dysków wirtualnych oraz wersję 0.5 istgt-20150713.tar.gz którą skompilowałem z obsługą wirtualnych dysków VHD, VDI czy VMDK.
Zrobiłem test z obrazem dynamicznym MS-DOS6.vhd 100MB zajmującym na dysku 22MB.
Wersja 0.4 z paczki .deb traktuje plik VHD jako obraz RAW wielkości 22MB:

istgt version 0.4 (20111008)
normal mode
LU1 HDD UNIT
LU1: LUN0 file=/mnt/mp/MS-DOS6.vhd, size=23077376
LU1: LUN0 45073 blocks, 512 bytes/block
LU1: LUN0 22MB storage for xp:xp
LU1: LUN0 serial 10000001
LU1: LUN0 read cache enabled, write cache enabled
LU1: LUN0 command queuing enabled, depth 32

natomiast wersja 0.5 którą skompilowałem rozpoznaje prawidłowo plik VHD wielkości 100MB smile :

root@debian:~/istgt-20150713/src# ./istgt
istgt version 0.5 (20150713)
normal mode
using poll
using gcc atomic
LU1 HDD UNIT
LU1: LUN0 file=/mnt/mp/MS-DOS6.vhd, size=104857600
LU1: LUN0 204800 blocks, 512 bytes/block
LU1: LUN0 UUID=5f9031d9-151e-e511-8234-a6c37ba28ec1
LU1: LUN0 100MB storage for xp:xp
LU1: LUN0 serial 10000001
LU1: LUN0 read cache enabled, write cache enabled
LU1: LUN0 command queuing enabled, depth 32

https://cdn1.savepice.ru/uploads/2018/5/3/8d1a7f1735ab2cb92de81e869e519f46-full.png

Plik konfiguracyjny w Debian /usr/local/etc/istgt/istgt.conf:

# Global section
[Global]
  NodeBase "xp"
  PidFile /var/run/istgt.pid
  MediaDirectory /mnt
  Timeout 30
  NopInInterval 20
  MaxR2T 32
  DiscoveryAuthMethod None
  MaxSessions 32
  MaxConnections 32
  FirstBurstLength 65536
  MaxBurstLength 262144
  MaxRecvDataSegmentLength 262144
  MaxOutstandingR2T 16
  DefaultTime2Wait 2
  DefaultTime2Retain 60

[UnitControl]
  AuthMethod None
  Portal UC1 127.0.0.1:3261
  Netmask 127.0.0.1

# PortalGroup section
[PortalGroup1]
  Portal DA1 192.168.1.5:3260

# InitiatorGroup section
[InitiatorGroup1]
  InitiatorName "ALL"
  Netmask 192.168.1.0/24

# LogicalUnit section
[LogicalUnit1]
  TargetName "xp"
  Mapping PortalGroup1 InitiatorGroup1
  UseDigest Auto
# ReadOnly No
  UnitType Disk
  LUN0 Storage /mnt/mp/MS-DOS6.vhd Auto

Aby program obsługiwał pliki obrazów wirtualnych (dynamicznych) trzeba pobrać źródła maszyny wirtualnej VirtualBox w wersji 4.1.18 i skompilować program istgt konfigurując opcję --with-vbox -> iSCSI LUN extents with VirtualDisk (VDI, VHD, VMDK) for istgt

Przetestowałem też scst - musiałem patchować jądro Debian'a. Niestety nie obsługuje dysków VHD: linux-image-3.2.84_1.0.custom.scst_i386

Cezary - jakbyś dodał istgt z obsługą dysków wirtualnych do OpenWrt to by było super smile