CentOS 8.x iSCSI target server setup

From Notes_Wiki
Revision as of 04:17, 11 February 2021 by Saurabh (talk | contribs) (Created page with "<yambe:breadcrumb self="iSCSI target server setup">CentOS 8.x iSCSI|iSCSI</yambe:breadcrumb> =CentOS 8.x iSCSI target server setup= To setup CentOS 8.x machine for iSCSI targ...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

<yambe:breadcrumb self="iSCSI target server setup">CentOS 8.x iSCSI|iSCSI</yambe:breadcrumb>

CentOS 8.x iSCSI target server setup

To setup CentOS 8.x machine for iSCSI target use:

  1. Create appropriate file-system and mount it at desired location (eg /backstores) to be used for storing iSCSI disk images (parted, mkfs.ext4, /etc/fstab, mount -a, df -h, etc.)
  2. Install targetcli package using:
    dnf -y install epel-release
    dnf -y install targetcli
  3. Clear existing configuration (if any) using:
    targetcli clearconfig confirm=true
  4. Go to /backstores in OS and create desired backing store using:
    cd /backstores
    qemu-img create -f raw primary.iscsi 800G
    where primary.iscsi is name of iSCSI backing store file and 800G is its size
  5. Run targetcli and configure it using:
    #Create file to be used as iscsi backstore
    cd /backstores/fileio
    create primary /backstores/primary.iscsi
    cd ..
    ls
    #Note that we can also use block devices using /backstores/block
    cd /iscsi
    #This will create IQN number automatically
    #Ideally we should create different iqn numbers for every backstore
    #So that there is flexibility on client side. We can run
    #create multiple times to create different iqn numbers.
    create
    cd iqn.<press-tab-to-autocomplete>
    #Create lun
    cd tpg1/luns
    create /backstores/fileio/primary
    #Allow client IQN numbers without authentication
    cd ../acls
    create <client1-iscsi-initiator-name>
    create <client2-iscsi-initiator-name>
    #Save and exit
    cd /
    saveconfig
    exit
    Client initiator name is located in file '/etc/iscsi/initiatorname.iscsi'. Take only value after 'InitiatorName=' starting with 'iqn.'
  6. Configure service to start on system boot and also start it for current run:
    systemctl enable target
    systemctl start target
  7. Disable firewall or given exception for port 3260
    systemctl disable firewalld
    systemctl stop firewalld



<yambe:breadcrumb self="iSCSI target server setup">CentOS 8.x iSCSI|iSCSI</yambe:breadcrumb>