Cấu hình Máy chủ iSCSI và Kết nối Khách hàng trên CentOS/RHEL

1. Triển khai dịch vụ Target bằng targetcli

Phương pháp được khuyến nghị hiện nay là sử dụng giao diện quản lý targetcli. Trước tiên, cài đặt các gói công cụ cần thiết:

yum -y install targetcli iscsi-initiator-utils

Truy nhập vào trình vỏ lệnh tương tác để xây dựng khối lưu trữ ảo và định cấu hình mục tiêu:

[root@srv ~]# targetcli
 targetcli shell version ...
 /> cd backstores/fileio
 /backstores/fileio> create vol_data_01 /data/iscsi_images/vol_data_01.img 5G
 /backstores/fileio> cd /iscsi
 /iscsi> create iqn.2024-08.storage.local:server.target01
 /iscsi> cd iqn.2024-08.storage.local:server.target01/tpg1/luns
 /iscsi/.../luns> create /backstores/fileio/vol_data_01
 /iscsi/.../luns> cd ../acls
 /iscsi/.../acls> create iqn.2024-08.storage.local:client01
 /iscsi/.../acls> cd iqn.2024-08.storage.local:client01
 /iscsi/.../client01> set auth userid admin_sc
 /iscsi/.../client01> set auth password SecP@ss123
 /iscsi/.../client01> exit

Khởi động dịch vụ, đặt chế độ tự động chạy khi khởi động và cấu hình tường lửa:

systemctl enable --now target
 firewall-cmd --permanent --add-service=iscsi-target
 firewall-cmd --reload
 ss -tlnp | grep 3260

2. Cấu hình Target sử dụng scsi-target-utils (tgtd)

Đối với môi trường legacy hoặc yêu cầu riêng, có thể triển khai qua gói scsi-target-utils. Cài đặt từ kho EPEL:

yum --enablerepo=epel -y install scsi-target-utils

Chuẩn bị file ảnh đĩa và chỉnh sửa file cấu hình chính /etc/tgt/targets.conf:

# Tạo thư mục chứa và file ảnh rỗng 5GB
 mkdir -p /data/iscsi_images
 truncate -s 5G /data/iscsi_images/disk_remote.img

 # Điều chỉnh cấu hình target
 vi /etc/tgt/targets.conf
 <target iqn.2024-08.storage.local:tgtd_target01>
   backing-store /data/iscsi_images/disk_remote.img
   initiator-address 192.168.10.0/24
   incominguser admin_sc SecP@ss123
 </target>

Thiết lập ngữ cảnh SELinux (nếu đang hoạt động) và cho phép giao thức qua tường lửa:

chcon -R -t tgtd_var_lib_t /data/iscsi_images
 semanage fcontext -a -t tgtd_var_lib_t "/data/iscsi_images(/.*)?"
 firewall-cmd --permanent --add-service=iscsi-target && firewall-cmd --reload
 systemctl enable --now tgtd
 tgtadm --mode target --op show

3. Định cấu hình và kết nối từ máy khách (Initiator)

Cài đặt công cụ khởi tạo trên đầu cuối và thiết lập thông tin xác thực:

yum -y install iscsi-initiator-utils
 vi /etc/iscsi/initiatorname.iscsi
 InitiatorName=iqn.2024-08.storage.local:client01

 vi /etc/iscsi/iscsid.conf
 node.session.auth.authmethod = CHAP
 node.session.auth.username = admin_sc
 node.session.auth.password = SecP@ss123

Khởi động dịch vụ initiator, quét tìm target và thực hiện kết nối:

systemctl enable --now iscsid
 iscsiadm -m discovery -t sendtargets -p 192.168.10.20
 iscsiadm -m node -T iqn.2024-08.storage.local:server.target01 -l
 iscsiadm -m session -o show

4. Chuẩn bị hệ thống tập tin và gắn kết thiết bị

Sau khi thiết lập kết nối thành công, hệ thống sẽ nhận diện khối lưu trữ mới dưới dạng thiết bị block (ví dụ /dev/sdb). Tiến hành phân vùng, định dạng và gắn kết vào cây thư mục:

# Tạo bảng phân vùng và vùng chính
 parted --script /dev/sdb mklabel gpt
 parted --script /dev/sdb mkpart primary 1MiB 100%

 # Định dạng phân vùng bằng hệ thống XFS
 mkfs.xfs -f -i size=512 -s size=4096 /dev/sdb1

 # Tạo điểm gắn kết và thực hiện mount
 mkdir -p /mnt/iscsi_vol
 mount /dev/sdb1 /mnt/iscsi_vol
 df -hT /mnt/iscsi_vol

5. Bộ lệnh vận hành tham khảo

Để quản lý kết nối mạng khối trong quá trình khai thác, tham khảo các cú pháp chuẩn:

  • Phát hiện Target trên mạng: iscsiadm -m discovery -t sendtargets -p <ip_may_chu>
  • Kết nối thủ công đến Target: iscsiadm -m node -T <iqn_target> -p <ip_may_chu>:3260 -l
  • Ngắt kết nối phiên làm việc: iscsiadm -m node -T <iqn_target> -u
  • Xóa mục cấu hình khỏi danh sách node: iscsiadm -m node -T <iqn_target> -o delete

Thẻ: iSCSI CentOS targetcli scsi-target-utils linux-storage

Đăng vào ngày 28 tháng 6 lúc 05:37