iSCSI Storage Configuration Using Iscsiadm Command

Discussion in 'Filesystem' started by nixsavy, Jul 11, 2013.

  1. nixsavy

    nixsavy Member

    Messages:
    65
    Likes Received:
    17
    Trophy Points:
    8
    In this article I would try to explain iscsi storage configuration on linux distro. We will first need iscsi initiator installed , that will use iscsi commands to communicate with the iscsi storage. What I would care more on this article , is to understand usage is iscsi commands to access / manage storage. First requirement is to install iscsi package and you can use open iscsi from open iscsi or you try installing using yum.

    Code:
    [root@centos-cluster-node1 ~]# yum install iscsi-initiator-utils
    Query iscsi-initiator package installed or not


    Code:
    [root@centos-cluster-node1 ~]# rpm -qa | grep -i iscsi
    iscsi-initiator-utils-6.2.0.873-2.el6.x86_64
    [root@centos-cluster-node1 ~]#

    Keep note of iscsi intiator name


    Code:
    [root@centos-cluster-node1 ~]# cat /etc/iscsi/initiatorname.iscsi
    InitiatorName=iqn.1994-05.com.redhat:9f51e9794fa
    [root@centos-cluster-node1 ~]#

    Start the Iscsi service.

    Code:
    [root@centos-cluster-node1 ~]# service iscsi start
    By default, the newly added iscsi initiator is not enabled at boot, which is the reason for each of the run levels listed to have the service set to off. To enable this at boot, again use the chkconfig command as follows.


    Code:
    [root@centos-cluster-node1 ~]# chkconfig –-add iscsi
    [root@centos-cluster-node1 ~]# chkconfig iscsi on

    Log into all targets

    Code:
    [root@centos-cluster-node1 ifaces]# iscsiadm –m node –l
    To see the connection status

    [
    Code:
    root@centos-cluster-node1 ifaces]# iscsiadm -m session
    Login individual target

    You can also Log into an individual target as below. You might see multiple iface because I have configured multipathing.


    Code:
    [root@centos-cluster-node1 ifaces]# iscsiadm -m node -l -T iqn.2001-05.com.equallogic:0-8a0906-3a86b2a07-c4e150b3415519cb-centos-cluster -l -p 192.168.40.10:3260
    Logging in to [iface: default, target: iqn.2001-05.com.equallogic:0-8a0906-3a86b2a07-c4e150b3415519cb-centos-cluster, portal: 192.168.40.10,3260] (multiple)
    Login to [iface: default, target: iqn.2001-05.com.equallogic:0-8a0906-3a86b2a07-c4e150b3415519cb-centos-cluster, portal: 192.168.40.10,3260] successful.
    [root@centos-cluster-node1 ifaces]#

    Logging out all targets.

    Code:
    [root@centos-cluster-node1 ifaces]# iscsiadm –m node –u
    Logging off an individual target.

    Shown an example below

    Code:
    iscsiadm –m node –u –T iqn.2001-05.com.equallogic:0-8a0906-3a86b2a07-c4e150b3415519cb-centos-cluster –p <Group IP address>:3260
    Find device name

    Find the newly created device name, using the iscsiadm command. In this test configuration, the new volume is /dev/sdb. At the end of the output you could see attached scsi disk name.

    Code:
    [root@centos-cluster-node1 ifaces]# iscsiadm -m session -P3
    Dev Mapper device name

    You can find the device name in /dev/mapper directory. I have configured multipath so you could see alias name as "centos_storage_node1". We could cover multipath configuration in another article.



    Code:
    [root@centos-cluster-node1 ifaces]# ls /dev/mapper/centos_*
    /dev/mapper/centos_storage_node1

    Create physical volume

    Now from here its more simple. Creating physical volume


    Code:
    [root@centos-cluster-node1 ifaces]# pvcreate /dev/mapper/centos_storage_node1
      Physical volume "/dev/mapper/centos_storage_node1" successfully created
    [root@centos-cluster-node1 ifaces]#

    Creating a volume group


    Code:
    [root@centos-cluster-node1 ifaces]# vgcreate vg01 /dev/mapper/centos_storage_node1
      Volume group "vg01" successfully created
    [root@centos-cluster-node1 ifaces]#

    Creating logical volume


    Code:
    [root@centos-cluster-node1 /]# lvcreate -L 9G -n data vg01
      Logical volume "data" created
    [root@centos-cluster-node1 /]#

    Display logical volume


    Code:
    [root@centos-cluster-node1 /]# lvdisplay
      --- Logical volume ---
      LV Path                /dev/vg01/data
      LV Name                data
      VG Name                vg01
      LV UUID                dHGUcq-Smy9-4QuL-EW9e-mo7a-SLtE-ea2ySm
      LV Write Access        read/write
      LV Creation host, time centos-cluster-node1.local, 2013-05-22 09:16:57 -0400
      LV Status              available
      # open                0
      LV Size                9.00 GiB
      Current LE            2304
      Segments              1
      Allocation            inherit
      Read ahead sectors    auto
      - currently set to    256
      Block device          253:3
    [root@centos-cluster-node1 /]#

    Filesystem creation

    Now you are ready for creating a file system with journaling mode enabled

    Code:
    [root@centos-cluster-node1 /]# mke2fs –j /dev/vg01/data
    If you are using storage clustering try below gfs filesystem


    Code:
    [root@centos-cluster-node1 /]# mkfs.gfs2 -p lock_dlm -t cluster-centos:database -j 8 /dev/vg01/data
    This will destroy any data on /dev/vg01/data.
    It appears to contain: symbolic link to `../dm-3'
    
    Are you sure you want to proceed? [y/n]
    
    Device:                    /dev/vg01/data
    Blocksize:                4096
    Device Size                9.00 GB (2359296 blocks)
    Filesystem Size:          9.00 GB (2359294 blocks)
    Journals:                  8
    Resource Groups:          36
    Locking Protocol:          "lock_dlm"
    Lock Table:                "cluster-centos:database"
    UUID:                      f05156fa-cdf3-eaab-cda9-74c2d73d931a
    [root@centos-cluster-node1 /]#

    Some useful iscsiadm options

    Delete session records

    To manually delete the records sessions -o delete option. Be sure to enter the appropriate iscsi targetname

    Code:
    iscsiadm –o delete
    Rescan lun

    When you expand the volume or disk, you might need to rescan. So the below command will help.

    Code:
    iscsiadm -m node -p 192.168.40.10 --rescan

    Attached Files:

    Last edited: Nov 6, 2013
    DevynCJohnson likes this.
  2. DevynCJohnson

    DevynCJohnson Well-Known Member Staff Member Staff Writer

    Messages:
    1,287
    Likes Received:
    1,029
    Trophy Points:
    113
    When did you used to write for Linux.org? Good article!
    Haider92 likes this.

Share This Page