Jetson TX1 iSCSI

Hello all,

Has anyone attempted to do iSCSI on the TX1? I’m having some trouble getting started as the iscsitarget package that’s available on the ubuntu repos require the iscsitarget-dkms kernel module but the module doesn’t seem to be building properly on the TX1 when doing it through the respective apt install.

I suppose I should just build the module myself or build it as a builtin into the kernel. Is that the right approach for this context.

For reference I’m using the R24.2 release of L4T.

If anyone has experience with using iSCSI on the TX1, I’d love to hear your experiences with it.

Michael

I have used iSCSI on both the JTK1 and the JTX1 (Jetson was mounting a remote drive served on a Fedora host). Performance was very good. Keep in mind though that if you try to mount an iSCSI partition by default and the network isn’t up you’ll either have an error or timeouts.

I’m kind of kicking myself because I didn’t take notes, but what I found on a running JTK1 which works for mounting my remote iSCSI drive are these kernel options:

CONFIG_SCSI_ISCSI_ATTRS=m
CONFIG_ISCSI_TCP=m

I believe just putting those in as modules would be everything needed for kernel side. There are of course user space programs required to take advantage of this. I do know I have these packages installed:

open-iscsi
open-iscsi-utils

I used this to back up a failing drive on my workstation via dd running on the Jetson (my workstation had no SATA ports left on it…plus I wanted the backup to be on a separate machine if things went bad). It actually was quite fast and worked without error.

I experimented with it and found it even plays well with Windows 7. I do recall security items for passwords and such were a pain to get right (and this is one of the big reasons I’m kicking myself for not taking notes…I guess I was in a hurry since my only workstation was failing).

Here’s are some URLs which may or may not be useful:
http://www.open-iscsi.org/
https://www.howtoforge.com/iscsi_on_linux

There’s actually more than one “flavor” of iSCSI out there (at least so far as user space goes), I hope the open-iscsi is the right one.

Incidentally, for people who want more RAM, you can create a ramdisk on a host, export it via iSCSI, and then format it as swap from the Jetson. Mounting this as swap (swapon) is far faster than actual swap because it is a ramdisk backing it up, and the gigabit network far exceeds a single disk in speed. You’re essentially stealing RAM from the host.

Hello linuxdev,

Thank for the insight. I was planning on using open-iscsi to set up the initiators part of the iSCSI set up.

My main issue still is setting the iSCSI target. I’ve played around a bit with iscsitarget (which I suppose is actually iSCSI Enterprise Target) and it seems like it wants its own kernel module to be built in order for it to work (which I’m having trouble building on the TX1). The other iSCSI modules I’ve turned on in the kernel builds don’t seem to have an affect on this.

I’ve read up on setting up iSCSI targets via LIO (Linux-IO Target) and I think this is also a rather feasible way to go about it.

To end off with a question, what methods do you go through to set up your iSCSI targets.

It has been awhile since I set that up, and this is something I failed to take notes on, so I lack detailed information. My host from which I exported is Fedora, I’ve imported that on Jetson for actual disk backup and recovery of a failing disk. I had briefly exported from a Jetson and imported on Windows 7, but this was as a novelty and not something I did anything with (I had briefly toyed with using a Jetson disk via iSCSI on Windows 7 for backup, but apparently you have to pay more before Windows 7 backup can work over iSCSI).

In the case of when I imported onto a Jetson for mount of a Fedora host disk I think it was just edits to “/etc/iscsi/” files. I don’t remember details, but I do remember much of the issue was how to have a qualified InitiatorName…it seems that various naming conventions was a pain to get right at both ends. The other part being passwords…I’d just keep that as simple as possible, and if you want more security wait till you get “simple” working first. Sorry, I don’t remember enough about it to give more details.

Here are a number of web browser bookmarks left over from that adventure:
http://www.cyberciti.biz/tips/howto-setup-linux-iscsi-target-sanwith-tgt.html
https://www.synology.com/en-us/knowledgebase/tutorials/518
https://www.google.com/#q=linux+%22iscsi%22+howto
https://www.howtoforge.com/iscsi_on_linux
http://www.open-iscsi.org/
http://www.open-iscsi.org/docs/README
http://www.cyberciti.biz/tips/rhel-centos-fedora-linux-iscsi-howto.html

I know nothing about the other variants of iSCSI out on the market.

Thank you for your insights linuxdev.

I’ll continue working and this and I’ll document/post how it goes.