Redhat – RHEL 7.1 iscsid fails to get target as networking doesn’t seem to have started

bondingcentos7iscsiredhatrhel7

I have 2 RHEL 7.1 VMWare vm's (server and client) connected on a private vmware network. They each have 2xe1000 nics using teaming.

I can see the teaming works as expected.

I've also configured iscsi on the server vm, which provides a target, which is in turn mounted on my client vm, by UUID in the fstab on the client machine.

On the client machine

[root@client ~]# iscsiadm -m discovery -t st -p server
192.168.100.11:3260,1 iqn.2012-06.com.example:server20gb
[root@client ~]# iscsiadm -m session -P3
iSCSI Transport Class version 2.0-870
version 6.2.0.873-28
Target: iqn.2012-06.com.example:server20gb (non-flash)
    Current Portal: 192.168.100.11:3260,1
    Persistent Portal: 192.168.100.11:3260,1
        **********
        Interface:
        **********
        Iface Name: default
        Iface Transport: tcp
        Iface Initiatorname: iqn.1994-05.com.redhat:c1fef4191c2e
        Iface IPaddress: 192.168.100.10
        Iface HWaddress: 
        Iface Netdev: 
        SID: 1
        iSCSI Connection State: LOGGED IN
        iSCSI Session State: LOGGED_IN
        Internal iscsid Session State: NO CHANGE
        *********
        Timeouts:
        *********
        Recovery Timeout: 120
        Target Reset Timeout: 30
        LUN Reset Timeout: 30
        Abort Timeout: 15
        *****
        CHAP:
        *****
        username: 
        password: ********
        username_in: 
        password_in: ********
        ************************
        Negotiated iSCSI params:
        ************************
        HeaderDigest: None
        DataDigest: None
        MaxRecvDataSegmentLength: 262144
        MaxXmitDataSegmentLength: 262144
        FirstBurstLength: 65536
        MaxBurstLength: 262144
        ImmediateData: Yes
        InitialR2T: Yes
        MaxOutstandingR2T: 1
        ************************
        Attached SCSI devices:
        ************************
        Host Number: 33 State: running
        scsi33 Channel 00 Id 0 Lun: 0
            Attached scsi disk sdc      State: running

I can mount the disk by UUID with no problems.

[root@client ~]# blkid /dev/sdc1
/dev/sdc1: UUID="de892bb0-7da8-4373-b169-9c465caf2699" TYPE="ext4"

The problem I have is that on reboot, the iscsi target cannot be mounted. When enter maintenance mode and check, it appears there is no networking, hence why the iscsid daemon fails with

[root@client ~]# journalctl -u  iscsid
-- Logs begin at Sun 2015-10-04 18:19:10 BST, end at Sun 2015-10-04 18:32:31 BST. --
Oct 04 18:19:15 client.maclab systemd[1]: Starting Open-iSCSI...
Oct 04 18:19:15 client.maclab systemd[1]: Failed to read PID from file /var/run/iscsid.pid: Invalid argument
Oct 04 18:19:16 client.maclab iscsid[1617]: iSCSI daemon with pid=1618 started!
Oct 04 18:19:16 client.maclab systemd[1]: Started Open-iSCSI.
Oct 04 18:19:17 client.maclab iscsid[1617]: cannot make a connection to 192.168.100.11:3260 (-1,101)
Oct 04 18:19:20 client.maclab iscsid[1617]: Could not set session1 priority. READ/WRITE throughout and latency could be affected.
Oct 04 18:19:20 client.maclab iscsid[1617]: Connection1:0 to [target: iqn.2012-06.com.example:server20gb, portal: 192.168.100.11,3260] through [iface: default] is operational now
Oct 04 18:32:31 client.maclab systemd[1]: Started Open-iSCSI.

Am I doing something stupid here ? Why would iscsid start before networking ? Am I missing a kernel module at boot time ?

Thanks!

Jim

Best Answer

It appears it was an error on my fstab, I had to pass the option _netdev.

My fstab entry now looks like UUID=de892bb0-7da8-4373-b169-9c465caf2699 /iscsi ext4 _netdev,rw 0 0

It seems to boot fine now.