任务描述:请采用 iscsi,搭建存储服务。 (1)为 linux8 添加 4 块硬盘,每块硬盘大小为 5G,创建 lvm 卷, 卷组名为 vg1,逻辑卷名为 lv1,容量为全部空间,格式化为 ext4 格 式。使用/dev/vg1/lv1 配置为 iSCSI 目标服务器,为 linux9 提供 iSCSI 服务。iSCSI 目标端的 wwn 为 iqn.2023-08.lan.skills:server,iSCSI 发起端的 wwn 为 iqn.2023-08.lan.skills:client。 (2)配置linux9为iSCSI客户端,实现discovery chap和session chap 双向认证,Target 认证用户名为 IncomingUser,密码为 IncomingPass;Initiator 认证用户名为 OutgoingUser,密码为 OutgoingPass。修改/etc/rc.d/rc.local 文件开机自动挂载 iscsi 硬 盘到/iscsi 目录。
时间: 2024-03-07 15:48:54 浏览: 201
下面是搭建 iSCSI 存储服务的具体步骤,包括两个主要部分:在 Linux 8 上创建 iSCSI 目标服务器,提供存储服务;在 Linux 9 上创建 iSCSI 客户端,访问存储服务。
## 部署 iSCSI 目标服务器
### 1. 添加硬盘并创建 LVM 卷
在 Linux 8 上添加 4 块硬盘,每块硬盘大小为 5G。假设这些硬盘的设备名分别为 /dev/sdb、/dev/sdc、/dev/sdd、/dev/sde。
我们可以使用 fdisk 工具为每块硬盘分区,并将分区格式化为 LVM 格式。以下是具体步骤:
1. 运行以下命令,进入 fdisk 工具:
```
fdisk /dev/sdb
```
2. 按 n 键创建一个新的分区。分区类型选择默认值,起始扇区选择默认值,结束扇区选择默认值(即使用全部可用空间)。完成后按 w 键保存分区设置。
3. 重复以上步骤,为 /dev/sdc、/dev/sdd、/dev/sde 各创建一个分区。
4. 运行以下命令,创建 LVM 卷组:
```
vgcreate vg1 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1
```
其中,“vg1”为卷组名,后面跟着 4 个分区设备名,用空格隔开。
5. 运行以下命令,创建逻辑卷:
```
lvcreate -l 100%FREE -n lv1 vg1
```
其中,“-l 100%FREE”表示使用全部可用空间,”-n lv1”表示逻辑卷名为 lv1。
6. 运行以下命令,格式化逻辑卷为 ext4 文件系统:
```
mkfs.ext4 /dev/vg1/lv1
```
### 2. 配置 iSCSI 目标服务
1. 安装 iscsi-target 软件包:
```
yum install scsi-target-utils
```
2. 编辑 iscsi-target 配置文件 /etc/tgt/targets.conf,添加以下内容:
```
<target iqn.2023-08.lan.skills:server>
backing-store /dev/vg1/lv1
initiator-address 192.168.1.100
</target>
```
其中,“iqn.2023-08.lan.skills:server”为 iSCSI 目标端的 wwn,”/dev/vg1/lv1”为要共享的逻辑卷设备名,”192.168.1.100”为 iSCSI 发起端(即客户端)的 IP 地址。
3. 启动 iscsi-target 服务:
```
systemctl start tgtd
```
4. 开启 iscsi-target 服务的自动启动:
```
systemctl enable tgtd
```
### 3. 配置防火墙规则
如果服务器上的防火墙开启了,需要添加一些规则,允许 iSCSI 的数据流量通过。以下是具体步骤:
1. 运行以下命令,打开 iSCSI 端口 3260:
```
firewall-cmd --zone=public --add-port=3260/tcp --permanent
```
2. 运行以下命令,重新加载防火墙规则:
```
firewall-cmd --reload
```
## 部署 iSCSI 客户端
在 Linux 9 上配置 iSCSI 客户端,访问在 Linux 8 上创建的 iSCSI 目标服务器。
### 1. 安装 iscsi-initiator-utils 软件包
在 Linux 9 上安装 iscsi-initiator-utils 软件包:
```
yum install iscsi-initiator-utils
```
### 2. 配置 iSCSI 客户端
1. 运行以下命令,打开 iSCSI 端口 3260:
```
firewall-cmd --zone=public --add-port=3260/tcp --permanent
```
2. 运行以下命令,重新加载防火墙规则:
```
firewall-cmd --reload
```
3. 运行以下命令,配置 iSCSI 服务的发现地址:
```
iscsiadm -m discovery -t st -p 192.168.1.10
```
其中,”192.168.1.10”为 iSCSI 目标服务器的 IP 地址。
4. 运行以下命令,向 iSCSI 服务发起认证请求:
```
iscsiadm -m node -T iqn.2023-08.lan.skills:server -p 192.168.1.10 -o update -n node.session.auth.authmethod -v CHAP
iscsiadm -m node -T iqn.2023-08.lan.skills:server -p 192.168.1.10 -o update -n node.session.auth.username -v IncomingUser
iscsiadm -m node -T iqn.2023-08.lan.skills:server -p 192.168.1.10 -o update -n node.session.auth.password -v IncomingPass
iscsiadm -m node -T iqn.2023-08.lan.skills:client -p 192.168.1.10 -o update -n node.session.auth.authmethod -v CHAP
iscsiadm -m node -T iqn.2023-08.lan.skills:client -p 192.168.1.10 -o update -n node.session.auth.username -v OutgoingUser
iscsiadm -m node -T iqn.2023-08.lan.skills:client -p 192.168.1.10 -o update -n node.session.auth.password -v OutgoingPass
```
其中,“iqn.2023-08.lan.skills:server”为 iSCSI 目标端的 wwn,”192.168.1.10”为 iSCSI 目标服务器的 IP 地址,”IncomingUser”和”IncomingPass”为 Target 认证用户名和密码,”OutgoingUser”和”OutgoingPass”为 Initiator 认证用户名和密码。
5. 运行以下命令,连接 iSCSI 目标服务器:
```
iscsiadm -m node -T iqn.2023-08.lan.skills:server -p 192.168.1.10 -l
```
6. 运行以下命令,查看 iSCSI 连接状态:
```
iscsiadm -m session
```
如果连接成功,会显示一个连接会话。
### 3. 自动挂载 iSCSI 硬盘
为了让系统在每次重启时自动挂载 iSCSI 硬盘到 /iscsi 目录,我们可以编辑 /etc/rc.d/rc.local 文件,在文件末尾添加以下内容:
```
iscsiadm -m node -T iqn.2023-08.lan.skills:server -p 192.168.1.10 -l
mkdir /iscsi
mount /dev/sdb1 /iscsi
```
其中,“/dev/sdb1”为 iSCSI 硬盘设备名,”/iscsi”为挂载目录。这里我们将 iSCSI 硬盘设备名硬编码了,实际上应该使用 udev 规则等方式动态获取设备名。
阅读全文
相关推荐














