1.安装ISCSI服务

使用如下的命令安装iscsi:

# 更新
sudo apt update

# 安装iscsi
sudo apt install open-iscsi -y

# 启用iscsi服务开机自启动
sudo systemctl enable --now iscsid

2.查看ISCSI服务

使用如下的命令,查看目标服务器暴露的iscsi服务的target,也就是查看ISCSI服务提供方对外提供的磁盘服务列表:

sudo iscsiadm -m discovery -t sendtargets -p 192.168.11.105

该命令会返回类似如下的target,对于iqn.2005-10.org.freenas.ctl:iscsiiqn.2005-10.org.freenas.ctl:1panel-iscsi就是可用的target。

192.168.11.105:3260,1 iqn.2005-10.org.freenas.ctl:iscsi
172.16.1.1:3260,1 iqn.2005-10.org.freenas.ctl:iscsi
172.16.0.1:3260,1 iqn.2005-10.org.freenas.ctl:iscsi
172.16.2.1:3260,1 iqn.2005-10.org.freenas.ctl:iscsi
192.168.11.105:3260,1 iqn.2005-10.org.freenas.ctl:1panel-iscsi
172.16.1.1:3260,1 iqn.2005-10.org.freenas.ctl:1panel-iscsi
172.16.0.1:3260,1 iqn.2005-10.org.freenas.ctl:1panel-iscsi
172.16.2.1:3260,1 iqn.2005-10.org.freenas.ctl:1panel-iscsi

我们需要选择合适的target进行连接,比如iqn.2005-10.org.freenas.ctl:1panel-iscsi

3.连接ISCSI服务

使用如下的命令连接ISCSI服务:

# 连接iscsi服务
sudo iscsiadm -m node -T iqn.2005-10.org.freenas.ctl:1panel-iscsi -p 192.168.11.105 --login

# 取消挂载iscsi服务
sudo iscsiadm -m node -T iqn.2005-10.org.freenas.ctl:1panel-iscsi -p 192.168.11.105 --logout

输出如下的结果,告知连接iscsi成功。

Logging in to [iface: default, target: iqn.2005-10.org.freenas.ctl:1panel-iscsi, portal: 192.168.11.105,3260]
Login to [iface: default, target: iqn.2005-10.org.freenas.ctl:1panel-iscsi, portal: 192.168.11.105,3260] successful.

4.将ISCSI挂载为本地磁盘

使用如下命令,查看所有的块设备:

sudo lsblk

输出结果如下,可以发现多了一块磁盘,sdb。

NAME                      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda                         8:0    0   30G  0 disk 
├─sda1                      8:1    0    1G  0 part /boot/efi
├─sda2                      8:2    0    2G  0 part /boot
└─sda3                      8:3    0 26.9G  0 part 
  └─ubuntu--vg-ubuntu--lv 252:0    0 26.9G  0 lvm  /
sdc                         8:16   0    1T  0 disk 

接着,我们需要创建iscisi的挂载目录,并挂载sdc磁盘:

# 在sdb磁盘上创建ext4文件系统
sudo mkfs.ext4 /dev/sdc

# 创建挂载目录, 代表需要将sdb磁盘挂载到这个目录
sudo mkdir -p /mnt/iscsi

# 执行挂载磁盘
sudo mount /dev/sdc /mnt/iscsi

通过如下的命令,可以找到sdb磁盘的挂载信息:

df -h | grep iscsi
/dev/sdc                          1007G   28K  956G   1% /mnt/iscsi

5.配置开机自启动

5.1 ISCSI磁盘自动连接

使用如下的命令开启开机自启动:

sudo iscsiadm -m node -T iqn.2005-10.org.freenas.ctl:1panel-iscsi -p 192.168.11.105 --op update -n node.startup -v automatic

5.2 ISCSI磁盘自动挂载

通过如下的命令查看设备的UUID

sudo blkid /dev/sdc

得到如下的UUID

/dev/sdc: UUID="628fbad8-964c-437e-ba84-dd7dbe7500bd" BLOCK_SIZE="4096" TYPE="ext4"

使用如下的命令修改配置文件

sudo vim /etc/fstab

往其中加入需要挂载的磁盘信息,UUID和挂载点,文件系统格式需要根据需要进行填写。

UUID=628fbad8-964c-437e-ba84-dd7dbe7500bd /mnt/iscsi ext4 defaults,_netdev 0 0

5.3 测试验证

使用如下的命令重启服务器:

sudo reboot

使用fdisk验证磁盘被成功识别到:

sudo fdisk -l

使用df -h查看iscsi磁盘挂载位置是否正常:

df -h | grep iscsi