Kylin麒麟操作系统服务部署 | ISCSI存储服务
以下所使用的环境为:虚拟化软件:VMware Workstation 17 Pro
麒麟系统版本:Kylin-Server-V10-SP3-2403-Release-20240426-x86_64
一、网络存储结构
网络存储技术(Network Storage Technologies)是基于数据存储的一种通用术语。网络存储结构分为以下三种:
DAS直连式存储:直接与主机系统相连接的存储设备(硬盘、光盘) NAS网络存储设备:直接与网络介质相连的特殊设备以实现数据存储(NFS、Samba、CIFS) SAN存储区域网络:存储设备相连企鹅与一台服务器或服务器群相连形成网络(FC-SAN、IP-SAN)
NAS和SAN的区别
NAS使用TCP/IP传输数据;SAN使用SCSI或iSCSI协议传输数据 NAS采用NFS和CIFS技术实现文件共享,基于操作系统的“文件级“读写操作 SAN采用底层块协议,根据协议头的“块地址+偏移地址”,无需操作系统也可以正常识别
FC-SAN和IP-SNA的区别
FC-SAN以光纤为介质构建存储网络,通过光纤通道协议转发scsi协议 IP-SAN以IP网络构建存储网络,现对于FC-SAN更加经济实惠,通过TCP协议转发scsi协议
二、ISCSI存储概念
ISCSI是一种在Internet协议上,特别是以太网上进行数据块传输的标志,它是一种基于IP Storage理论的新型存储技术,通过将SCSI接口和IP网络相结合,可以在IP网络上构建SAN存储区域网络。可以理解为:iSCSI=IP+SCSI。
ISCIS技术优势
将用于本机的SCSI通过TCP/IP网络传输,只要IP可达,可无视地域 连接的服务器数量不受限制(原有的SCSI-3最大连接数为15) 基于服务器架构,可以实现在线扩容
ISCSI Target
被用于存储数据的iscis磁盘或具有iscsi功能的设备都可以被称为“ISCSI Target”。利用ISCSI Target可以将服务器的存储空间分配给客户端使用,客户端就可以像本地磁盘一样使用iscsi磁盘。
iSCSI initiator
iSCSI initiator是一个安装在系统上的软件或硬件设备,负责与iscis存储设备进行通信。
三、targetcli服务
targetcli支持通过普通命令方式使用或交互式使用。通过targetcli可以创建、删除和配置iSCSI目标,在交互式中,可以直观呈现目标的层级树,方便浏览和配置,支持使用Linux基本命令,如cd、ls、pwd等。
安装targetcli,麒麟操作系统默认已经安装好targetcli
yum install-y targetcli
进入交互模式
targetcli
1. 目录内容解析
查看当前目录内容
ls
[*]backstores:存储目录
block:块设备,如:磁盘驱动器、磁盘分区、逻辑卷(类型标识符为b的设备文件) fileio:文件存储,将文件模拟成磁盘,类似于虚拟机中的1个文件代表1个磁盘 pscsi:物理SCSI ramdisk:内存中的1个指定大小的内存存储,也就是使用内存模拟磁盘
3. iscis目录解析
默认情况下,iscis目录为空。当我们在iscsi目录下创建iscis target时,会自动生成目录
在创建IQN的同时会自动创建一个默认的TPG
[*]iscsi:目标目录
acls:设置允许连接的客户端,通过iqn或IP地址限定 luns:逻辑单元号,指向物理存储 portals:映射的IP地址和端口号
3. LUN
目标要提供客户端对存储或输出设备的访问,需要配置一个或多个逻辑单元号(LUN)。在ISCSI中,LUN显示为目标的连续编号的磁盘驱动器,一般来说,目标只有一个LUN。iSCIS通过ACL限制启动器是否可以访问LUN。
LUN的全称是Logical Unit Number(逻辑单元号),是SCSI中的概念。块存储对象只要加入target存储系统,就会分配1个代号。在区分块设备时只需要说 target 中的 LUN号码,块存储对象被指定了一个LUN后,成为了一个“逻辑”磁盘,供存储客户端使用。
通俗的理解:将后端存储设备中的设备理解为房间,LUN理解为房号。客户端如果要访问该房间,只需要知道该房号即可访问。
四、ISCSI服务部署(基于磁盘)
节点设置
主机网络信息说明Kylin-1192.168.110.1/24存储服务器Kylin-2192.168.110.2/24测试客户端: Kylin-1配置:添加3块10G硬盘
: Kylin-1配置:安装ISCIS存储服务器端
yum install-y targetcli: Kylin-1配置:创建块存储对象
cd /backstores/block # 进入块设备存储目录
create 10G-1 /dev/sdb # 新建块设备
create 10G-2 /dev/sdc
create 10G-3 /dev/sdd
**create:**新建块设备 **10G-1:**块设备名称 **/dev/sdb:**块设备路径
: Kylin-1配置:切换到iSCIS目录,创建ISCSI Target
cd /iscsi
create iqn.2024-09.com.meaauf # 名称可以自定义
: Kylin-1配置:切换到luns目录下,将block目录下的块存储加入luns目录下
cd iqn.2024-09.com.meaauf/tpg1/luns
create /backstores/block/10G-1
create /backstores/block/10G-2
create /backstores/block/10G-3
: Kylin-1配置:切换到acls目录下,为initator客户端创建ACL访问(客户端连接器)
cd../acls
create iqn.2024-09.com.meaauf.Kylin-2
: Kylin-1配置:切换到portals目录下,指定新的监听地址和端口号
cd../portals/
delete 0.0.0.0 3260# 删除默认监听端口 3260
create 192.168.110.1 3260# 添加监听端口
: Kylin-1配置:设置允许连接的用户和密码
cd../acls/iqn.2024-09.com.meaauf.kylin-2/
set auth userid=admin
set auth password=kylin2024
: Kylin-1配置:查看当前配置
ls /
: Kylin-1配置:可以手动保存后退出,也可以直接退出(退出会保存当前配置)
cd /
saveconfig
: Kylin-1配置:启动target服务并加入到开机自启,调整防火墙策略,放行3260端口
systemctl enable--now target.service
firewall-cmd --add-port=3260/tcp --permanent
firewall-cmd --reload: Kylin-2配置:配置ISCSI存储客户端
yum -yinstall open-iscsi: Kylin-2配置:配置ISCSI Initiator客户端连接器名称
vim /etc/iscsi/initiatorname.iscsi
# 修改内容如下,InitiatorName必须和服务端acls中设置值一致InitiatorName=iqn.2024-09.com.meaauf.Kylin-2: Kylin-2配置:修改iscsid配置文件
vim /etc/iscsi/iscsid.conf
# 添加下列内容
node.session.auth.authmethod = CHAP
node.session.auth.username = admin
node.session.auth.password = kylin2024
: Kylin-2配置:重新启动iscsid服务
systemctl restart iscsid.service: Kylin-2配置:发现远程可用的iSCSI服务器节点
iscsiadm -m discovery -t sendtargets -p192.168.110.1
iscsiadm -m discovery -t st -p192.168.110.1
-m discovery:发现操作 -t sendtargets:指定发现类型为 sendtargets -p 192.168.110.1:指定iSCSI目标门户地址
: Kylin-2配置:登录远程可用的iSCSI服务器节点
iscsiadm -mnode--login
: Kylin-2验证:查看本地裸设备,可以看到新增了3块10G硬盘
lsblk
: Kylin-2验证:卸载指定的iSCSI存储设备
iscsiadm -mnode-T iqn.2024-09.com.meaauf -u
五、ISCSI服务部署(基于文件)
节点设置
主机网络信息说明Kylin-1192.168.110.1/24存储服务器Kylin-2192.168.110.2/24测试客户端: Kylin-1配置:创建1个文件,模拟磁盘
ddif=/dev/zero of=/dev/file bs=1M count=2048# 创建1个2G的文件,文件名为 /dev/file
if=/dev/zero:指定源文件 of=/dev/file:指定输出文件 bs=1M:设置块大小,dd命令每次写入1M的数据 count=2048:复制的块数为2048
: Kylin-1配置:创建iscis文件存储,进入fileio目录下
targetcli
>cd /backstores/fileio
> create file /dev/file
: Kylin-1配置:创建逻辑单元号
cd /iscsi/iqn.2024-09.com.meaauf/tpg1/luns/
create /backstores/fileio/file
: Kylin-1配置:创建客户端ACL,这里我们使用和上述一样的ACL规则
cd../acls/
: Kylin-1配置:退出
exit: Kylin-2配置:发现远程可用的iSCSI服务器节点,登录iSCSI服务器节点
iscsiadm -m discovery -t sendtargets -p192.168.110.1
iscsiadm -mnode--login
: Kylin-2验证:查看本地裸设备,可以看到新增了1块2G硬盘
页:
[1]