ISCSi Server and Client Implementation Using Ubuntu

Admin
Written by
Admin
Updated on
 September 8, 2023

ISCSI (Internet Small Computer System) adalah protokol yang dapat memungkinkan untuk mengakses perangkat penyimpanan melalui Internet Protocol, jadi dengan menggunakan iSCSI kita dapat menghubungkan server ke storage iSCSI menggunakan jaringan, sehingga pada server kita mendapat volume tambahan dari iSCSI. 

Berikut topologi yang akan digunakan, jadi terdapat 2 VM  

VM Initiator : sebagai VM client yang nanti akan mendapat tambahan volume dari iSCSI 
VM Target : sebagai VM Server yang diinstall iSCSI  
Port yang digunakan adalah port : 3260 dan ICMP 

  1. Pada VM Initiator 

Install open-iscsi terlebih dahulu dengan menggunakan perintah 

# apt -y install open-iscsi  

Setelah itu tambahkan baris perintah berikut pada  nano /etc/iscsi/initiatorname.iscsi 

# change to the same IQN you set on the iSCSI target server 
InitiatorName=iqn.2022-09.sand.srv:node01.initiator01 

Nama initiator bisa disesuaikan dengan kebutuhan 

Kemudian masuk ke # nano /etc/iscsi/iscsid.conf untuk mengatur beberapa konfigurasi berikut 

Uncomment line  
node.session.auth.authmethod = CHAP  
node.session.auth.username = username 
node.session.auth.password = password
 

Username dan password bisa di sesuaikan 

Apabila sudah selesai silahkan dicoba untuk restart open iscsi nya 

# systemctl restart iscsid open-iscsi 

Lalu selanjutnya discovery target dan konfirmasi status target (Pastikan dari sisi target sudah diistall tgt, bisa mengacu ke point nomor 2 untuk konfigurasi dari sisi Target) 

# iscsiadm -m discovery -t sendtargets -p IP_Target 

# iscsiadm -m node -o show

Kemudian login ke target  

# iscsiadm -m node --login

Konfirmasi bahwa sesi sudah ter establish 

# iscsiadm -m session -o show

Selanjutnya cek partisi dengan perintah berikut 

# cat /proc/partitions

Kemudian langkah selanjutnya adalah buat label, partisi dengan format ext4 

# parted --script /dev/sdb "mklabel gpt" 
# parted --script /dev/sdb "mkpart primary 0% 100%" 
# mkfs.ext4 /dev/sdb 

Apabila sudah hasilnya akan seperti ini  

Selanjutnya mounting partisi yang sudah dibuat tadi ke direktori yang diinginkan 

Dalam hal ini kita akan mounting ke direktori /iscsi 

# mount /dev/sdb /iscsi 
# df -hT

  1. Pada VM Target 

Instal tools administrasi  

# apt -y install tgt 

Lalu konfigurasi iSCSI target dengan membuat disk image 

# mkdir /iscsi_disks 
# dd if=/dev/zero of=/iscsi_disks/disk01.img count=0 bs=1 seek=30G 

Tambahkan line berikut pada file /etc/tgt/conf.d/target01.conf 

# create new 
# if you set some devices, add <target>-</target> and set the same way with follows 
# naming rule : [ iqn.(year)-(month).(reverse of domain name):(any name you like) ] 
<target iqn.2022-09.sand.srv:dlp.target01> 
    # provided devicce as a iSCSI target 
    backing-store /iscsi_disks/disk01.img 
    # iSCSI Initiator’s IQN you allow to connect 
    initiator-name iqn.2022-09.sand.srv:node01.initiator01 
    # authentication info ( set anyone you like for “username”, “password” ) 
    incominguser username password 
</target> 

Lakukan restart dan show status nya 

# systemctl restart tgt 
# tgtadm --mode target --op show