学习笔记-网络共享存储 - iSCSI 环境部与基础配置

admin 技术文档 2024-12-11 41

摘要:基本环境底层: Windows 11 x64虚拟化层:VMWare Workstation 17.0.2虚拟化兼容性:ESXi 6....

基本环境

底层: Windows 11 x64 虚拟化层:VMWare Workstation 17.0.2 虚拟化兼容性:ESXi 6.7 虚拟硬件: CPU: 4 Core RAM: 16 GB HDD: 128 GB SCSI HDD: 32 GB SATA (附加 iSCSI存储) NetWork: NAT 操作系统版本: CentOS 7.9.2207 Mininal 无更新、无升级内核 无系统更新 无内核升级 关闭 SELinux 配置 NTP 时间同步 安装 Open VM Tools 美化 CLI

iSCSI 基本概念

# iSCSI 是一种基于TCP/IP网络的网路共享存储协议。使用方法类似于SAN,但是价格更便宜。 # iSCSI 存在几个基本概念 # iSCSI 磁盘,即 iSCSI客户端实际使用的存储空间,可以是物理磁盘也可以是镜像文件 # iSCSI 目标:实际就是 iSCSI 的客户端标识,或者说是客户端地址信息 # iSCSI 发起程序:实际就是 iSCSI 的服务器端标识,或者说服务器端地址信息 # 虽然 Linux 环境可以创建 iSCSI 服务器,但是操作相对复杂,修改配置还需要重启服务,各种麻烦 # 相对来说,使用Windows Server 系统部署 iSCSI 服务器,在各方面都更方便使用 # 也可以使用一些NAS系统作为iSCSI 服务器使用,GUI配置和使用相对更简便一些

应用场景设计概要

# 一台iSCSI CentOS 7.9 服务器 # 创建一个 32GB SATA 硬盘,用于做 iSCSI 存储磁盘使用 # 创建一个 10GB 空镜像文件,用于做 iSCSI 存储磁盘使用 # 一台iSCSI RokcyOS 9 客户端,用于链接 iSCSI 服务器 # 一台iSCSI Windows 10 客户端,用于链接 iSCSI 服务器

操作步骤

# 加载 iSCSI 存储空间 物理硬盘 # 创建 iSCSI 存储空间 镜像文件 # 安装 iSCSI 服务器端 软件包 # 配置 iSCSI 服务器端 # 创建 iSCSI 虚拟磁盘 # 创建 iSCSI 服务器端 程序 # 创建 iSCSI 存储空间 # 创建 iSCSI 客户端 连接器 # 管理 iSCSI 服务器端 系统服务 # 配置 iSCSI 服务器端 防火墙 # 配置 iSCSI 客户端 # Linux 客户端挂载 iSCSI 磁盘 # 安装 iSCSI 客户端 软件包 # 修改 iSCSI 客户端 配置文件 # 管理 iSCSI 客户端端 系统服务 # 配置 iSCSI 客户端 防火墙 # iSCSI 客户端 挂载 iSCSI 磁盘 # Windows 客户端挂载 iSCSI 磁盘 # 打开“iSCSI 发起程序” # 修改“iSCSI 发起程序”名称” # 连接“iSCSI 存储” # 配置“服务卷(存储空间)” # 查看“iSCSI 存储”

查看 或 创建 虚拟磁盘

# 根据“基本环境”信息所示,虚拟机已经提前加载了一个32GB SATA 硬盘 # 查看磁盘及分区详细信息 lsblk # 创建 iSCSI 存储文件夹 mkdir -p /data/iscsi # 生成一个 10GB 的文件 dd if=/dev/zero of=/data/iscsi/iscsi-disk-01.img bs=1024k count=10240

查看本地服务器 磁盘信息

iSCSI 服务器 基本安装

# 安装 iSCSI 服务器 软件包 yum install -y targetd targetcli # 银河麒麟 安装 iSCSI 服务器 软件包 yum install -y target-restore targetcli

CentOS 7.9

银河麒麟 KylinOS V10 SP3

配置 iSCSI 服务器

创建 iSCSI 磁盘

调用 targetcli 设置 # 使用 iSCSI 管理工具 targetcli # 列出服务器上的节点 ls # 其中,block 节点,表示使用物理硬盘的节点 # 其中,fileio 节点,表示使用文件镜像的节点 # 创建 block 节点,基于物理硬盘 iSCSI 磁盘 (硬盘为上一步操作查询的硬盘信息) /backstores/block create iSCSI-Disk-01 /dev/sdb # 创建 fileio 节点,基于文件镜像 iSCSI 磁盘(硬盘为上一步创建的镜像文件) /backstores/fileio create iSCSI-Disk-02 /data/iscsi/iscsi-disk-01.img

创建服务端程序

# 此步骤创建的是 iSCSI 的 Target 设备名称 # iSCSI target名称必须是全球唯一的,必须是以 iqn 开头的其格式为: # iqn.< yyyy-mm >.< tld.domain.some.host > [:< identifier >] # iqn.< 年份-月份 >.< 域名反写 > [: < 设备识别;可以是任意字符串 >] # 创建 iSCSI 服务端程序 /iscsi/ create iqn.2023-12.local.fourleaf:server

创建服务卷 (存储空间)

# 进入 iSCSI target (上一步操作创建的) cd /iscsi/iqn.2023-12.local.fourleaf:server/tpg1/ # 创建 基于 物理磁盘 的 iSCSI 存储空间 (对应上面创建的iSCSI 磁盘) luns/ create /backstores/block/iSCSI-Disk-01 # 创建 基于 文件镜像 的 iSCSI 存储空间 (对应上面创建的iSCSI 磁盘) luns/ create /backstores/fileio/iSCSI-Disk-02 # 查看 创建的 存储空间 ls # 查看 全部信息 (为了更直观查看,可以不仅仅看iSCSI target) ls /# 进入 iSCSI target (上一步操作创建的) cd /iscsi/iqn.2023-12.local.fourleaf:server/tpg1/ # 创建 基于 物理磁盘 的 iSCSI 存储空间 (对应上面创建的iSCSI 磁盘) luns/ create /backstores/block/iSCSI-Disk-01 # 创建 基于 文件镜像 的 iSCSI 存储空间 (对应上面创建的iSCSI 磁盘) luns/ create /backstores/fileio/iSCSI-Disk-02 # 查看 创建的 存储空间 ls # 查看 全部信息 (为了更直观查看,可以不仅仅看iSCSI target) ls /

查看 创建的 存储空间

查看 全部信息

创建客户端连接器

# 创建客户端连接器 acls/ create iqn.2023-12.local.fourleaf:client # 进入连接器 cd acls/iqn.2023-12.local.fourleaf:client # 以下步骤为了启用chap认证,非必须步骤 # 设置用户名 set auth userid=fourleaf # 设置密码 (12~16位) set auth password=122333444455555 # 查看 创建的客户端连接器 ls /iscsi/iqn.2023-12.local.fourleaf:server/tpg1/ # 回到 根目录 (否则下一次进入不会自动回到根目录) cd / # 退出 exit

iSCSI 服务器端 服务管理

# 启动 iSCSI 服务 (服务如果起不来,就重启系统) systemctl start target.service # 设置 iSCSI 服务 为开机自启动 systemctl enable target.service # 检查 iSCSI 服务 运行状态 systemctl status target.service # 查看 iSCSI 服务 进程运行信息 ps -ef | grep target # 查看端口占用情况 ss -napt | grep 3260 # 停止 iSCSI 服务 systemctl stop target.service # 重启 iSCSI 服务 systemctl restart target.service

iSCSI 防火墙管理

# 防火墙放行 iSCSI 服务 firewall-cmd --permanent --zone=public --add-service=iscsi-target # 生效 防火墙策略 firewall-cmd --reload

客户端 挂载 iSCSI 磁盘

Linux 客户端挂载 iSCSI 磁盘 (RockyOS 9.3)

安装 iSCSI 客户端组件

# 安装 iSCSI 客户端 组件 yum install -y iscsi-initiator-utils # 安装 iSCSI 客户端 组件 银河麒麟 KylinOS V10 SP3 yum install -y open-iscsi

修改 iSCSI 客户端 配置文件

修改iscsi配置文件 # 打开 客户端发起程序 配置文件 nano /etc/iscsi/initiatorname.iscsi # 将 发起程序信息,修改为上面创建的客户端连接器 内容 # RockyOS 9.3 默认没有这个文件,使用 Nano 命令,会自动创建 # { InitiatorName=iqn.2023-12.local.fourleaf:client # } # 或者使用命令直接修改内容 echo "InitiatorName=iqn.2023-12.local.fourleaf:client" > /etc/iscsi/initiatorname.iscsi # 查看 修改结果 cat /etc/iscsi/initiatorname.iscsi # 修改 iSCSI 客户端 配置文件 # 没有启用chap认证,无需修改本文件 # # { # 修改 第 58 行,取消注释,启用 chap认证 node.session.auth.authmethod = CHAP # 修改 第 69 行,取消注释,修改最后的 username 为 上面创建的 用户 node.session.auth.username = fourleaf # 修改 第 70 行,取消注释,修改最后的password 为 上面创建的 密码 node.session.auth.password = 122333444455555 # 或者使用命令直接修改内容 sed -i s/#node.session.auth.authmethod = CHAP/node.session.auth.authmethod = CHAP/g /etc/iscsi/iscsid.conf sed -i s/#node.session.auth.username = username/node.session.auth.username = fourleaf/g /etc/iscsi/iscsid.conf sed -i s/#node.session.auth.password = password/node.session.auth.password = 122333444455555/g /etc/iscsi/iscsid.conf # 查看 修改内容 cat /etc/iscsi/iscsid.conf | tail -n +56 | head -n 16

管理 iSCSI 客户端服务

# 启动 iSCSI 客户端服务 systemctl start iscsid.service # 设置 iSCSI 客户端服务 为开机自启动 systemctl enable iscsid.service # 检查 iSCSI 客户端服务 运行状态 systemctl status iscsid.service

挂载 iSCSI 磁盘

# 发现 iSCSI 存储资源 iscsiadm -m discovery -t st -p 172.16.28.110 # 挂载 iSCSI 存储 iscsiadm -m node -T iqn.2023-12.local.fourleaf:server -p 172.16.28.110 --login # 查看 iscsi存储 lsblk # iSCSI 的 网络磁盘是由 iSCSI 客户端的服务进程加载的,不需要使用/etc/fstab 等方法自动加载

Windows 客户端挂载 iSCSI 磁盘 (Windows 10)

打开“iSCSI 发起程序”

打开“控制面板”中的“管理工具”,可以找到第一个图标的“iSCSI 发起程序”。 双击运行,会弹出对话框,提示要求启动“Microsoft iSCSI 服务”。 点击“是”后,会弹出“iSCSI 发起程序 属性”窗口。

修改“iSCSI 发起程序”名称”

选择“iSCSI 发起程序 属性”的“配置”选项卡,点击“发起程序名称”输入框下的“更改”按钮。 并在“iSCSI 发起程序名称”更改窗口中,输入前面创建的“发起程序名称(iqn.2023-12.local.fourleaf:client)”。

连接“iSCSI 存储”

在“iSCSI 发起程序 属性”的“目标”选项卡,在“目标”后的输入框中输入“iSCSI服务器的 IP 地址 (172.16.28.110)”并点击“快速连接”按钮。 如配置无误,在接下来弹出的“快速连接”窗口中的“进度报告”中就会显示“登陆成功”。

配置“服务卷(存储空间)”

在“iSCSI 发起程序 属性”的“卷和设备”选项卡,点击“自动配置”按钮后,可以看到“卷列表”中,会出现之前创建的两个“服务卷”。

查看“iSCSI 存储”

打开“控制面板”中的“管理工具”,双击“计算机管理”。 在“计算机管理”窗口中,选择“存储”下的“磁盘管理”。 在“磁盘管理”下可以看到新增了两个本地磁盘。

相关推荐

评论列表
关闭

用微信“扫一扫”