「如何搭建iSCSI服务器?」 (iscsi服务器搭建)

如何搭建iSCSI服务器?

iSCSI(Internet Small Computer System Interface)是一种用于在IP网络上传输SCSI命令的协议。借助iSCSI,用户可以将数据存储设备连接到IP网络上,并像本地设备一样使用它们。搭建iSCSI服务器可以让多个用户在网络上共享存储设备,提高效率和可靠性。在本文中,我们将讨论如何搭建自己的iSCSI服务器。

之一步:选择合适的硬件

在搭建iSCSI服务器之前,首先需要选择合适的硬件。需要考虑的硬件包括服务器、网卡、存储设备等。服务器应该具有足够的处理能力来处理iSCSI命令,并且要能够支持RD和热插拔硬盘,以便进行数据备份和恢复。网卡应该支持千兆以太网和Jumbo Frames,以提高网络传输速度和效率。存储设备可以是硬盘、SSD或者SAN,可以选择单个设备或者组合多个设备来构建RD。

第二步:选择合适的操作系统和iSCSI软件

在选择操作系统和iSCSI软件时,需要考虑对应的硬件和软件需求。常用的操作系统有Linux、Windows Server等,常用的iSCSI软件有Open-iSCSI、FreeNAS、StarWind等。选择合适的操作系统和iSCSI软件可以根据个人需求和熟悉程度来决定。如果您是Linux用户,可以使用Open-iSCSI作为iSCSI软件,并在其上运行iSCSI-target作为iSCSI服务器,在此介绍Open-iSCSI的搭建方法。

第三步:安装和配置Open-iSCSI

1. 安装Open-iSCSI软件包

在Linux系统中,可以使用以下命令安装Open-iSCSI软件包:

$ sudo apt-get install open-iscsi

2. 配置iSCSI-target

在安装Open-iSCSI后,需要配置iSCSI-target,指定要共享的存储设备和iSCSI-target名称。可以按以下步骤进行配置:

$ sudo nano /etc/iet/ietd.conf

在文件末尾添加以下内容:

Target iqn.2023-09.com.example:storage.disk1

Lun 0 Path=/dev/sdb1,Type=fileio

Alias disk1

其中,Target后面的名称标识iSCSI-target的名称,Lun 0 Path指定共享的存储设备的路径,Type定义共享模式,可以是fileio或者blockio。这里我们选择fileio作为共享模式。Alias后面的内容是iSCSI-target的别名,也可以自由命名。

3. 启动iSCSI-target

配置完成后,需要启动iSCSI-target,在终端中输入以下命令:

$ sudo /etc/init.d/iscsi-target start

可以使用以下命令验证iSCSI-target是否在线:

$ sudo /etc/init.d/iscsi-target status

4. 配置iSCSI-initiator

在iSCSI-target配置完成后,还需要为客户端配置iSCSI-initiator。在Linux系统中,可以使用以下命令安装Open-iSCSI initiator:

$ sudo apt-get install open-iscsi

安装完成后,需要在iSCSI-initiator中指定iSCSI-target的IP地址和名称。可以按以下步骤进行配置:

$ sudo nano /etc/iscsi/initiatorname.iscsi

将以下内容替换为iSCSI-target的名称(即第2步中指定的名称):

InitiatorName=iqn.2023-09.local.domn.com:client.initiator

然后打开以下文件:

$ sudo nano /etc/iscsi/iscsid.conf

找到以下内容:

discovery.sendtargets.auth.authmethod = CHAP

discovery.sendtargets.auth.username = USER

discovery.sendtargets.auth.password = PASS

将这部分内容注释掉或者删除,

5. 登录到iSCSI-target

配置完iSCSI-initiator后,需要将其登录到iSCSI-target。可以使用以下命令进行登录:

$ sudo iscsiadm -m discovery -t st -p

该命令将扫描指定的iSCSI-target,输出如下:

192.168.1.100:3260,1 iqn.2023-09.com.example:storage.disk1

可以使用以下命令将之前的目标添加到iSCSI-initiator中:

$ sudo iscsiadm -m node -T iqn.2023-09.com.example:storage.disk1 -p 192.168.1.100:3260 -l

该命令将iSCSI-initiator登录到iSCSI-target,并将存储设备添加到本地文件系统中。

第四步:验证iSCSI服务器

在配置完成后,可以通过以下步骤验证iSCSI服务器的可用性:

1. 验证存储设备

使用以下命令验证存储设备是否正确识别:

$ sudo fdisk -l

该命令将输出计算机中的所有存储设备。

2. 验证iSCSI-initiator登录状态

可以使用以下命令验证iSCSI-initiator与iSCSI-target的连接状态:

$ sudo iscsiadm -m session -P 3

该命令将输出iSCSI-initiator的登录状态,包括已连接的iSCSI-target名称、LUN ID。

3. 验证iSCSI文件系统

可以在本地文件系统中创建目录,并将它们挂载到iSCSI服务器上:

$ sudo mkdir /mnt/iscsi

$ sudo mount /dev/sdb1 /mnt/iscsi

相关问题拓展阅读:

iscsi共享存储的简单配置和应用

1、环境介绍

SCSI(Small Computer System Interface)是块数据传输协议,在存储行业广泛应用,是存储设备最基本的标准协议。从根本上说,iSCSI协议是一种利用IP网络来传输潜伏时间短的SCSI数据块的方法,ISCSI使用 以太网 协议传送SCSI命令、响应和数据。ISCSI可以用我们已经熟悉和每天都在使用的以太网来构建IP存储局域网。通过这种方法,ISCSI克服了直接连接存储的局限性,使我们可以跨不同 服务器 共享存储资源,并可以在不停机状态下扩充存储容量。

所需软件与软件结构

CentOS 将 tgt 的软件名称定义为 scsi-target-utils ,因此你得要使用 yum 去安装他才行。至于用来作为 initiator 的软件则是使用 linux-iscsi 的项目,该项目所提供的软件名称则为 iscsi-initiator-utils 。所以,总的来说,你需要的软件有:

scsi-target-utils:用来将 Linux 系统仿真成为 iSCSI target 的功能;

iscsi-initiator-utils:挂载来自 target 的磁盘到 Linux 本机上。

那么 scsi-target-utils 主要提供哪些档案呢?基本上有底下几个比较重要需要注意的:

/etc/tgt/targets.conf:主要配置文件,设定要分享的磁盘格式与哪几颗;

/usr/in/tgt-admin:在线查询、删除 target 等功能的设定工具;

/usr/in/tgt-setup-lun:建立 target 以及设定分享的磁盘与可使用的

客户端等工具软件。

/usr/in/tgtadm:手动直接管理的管理员工具 (可使用配置文件取代);

/usr/in/tgtd:主要提供 iSCSI target 服务的主程序;

/usr/in/tgtimg:建置预计分享的映像文件装置的工具 (以映像文件仿真磁盘);

这次的实验结构

(sdx1、sdy1是物理的磁盘通过lun连接到target虚拟的共享块,在客户端挂载这个块。这里我们添加一块硬盘sdb,创建sdb1(400m)和sdb2(500m))

2、server端配置

添加一块磁盘后

复查一下

安装target并加入开机自启动

yum install -y target*

systemctl start target

systemctl enable target

配置target的ctl将sdb1和sdb2共享出去

(一)、block关联磁盘

(二)、创建target

(三)、创建lun关联block和target

至此服务器端就配置完了,详细的配置可以到/etc/target/saveconfig.json修改

3、client端配置

(一)、安装iscsi*

软件包 iscsi-initiator-utils-6.2.0.873-29.el7.x86_64

软件包 iscsi-initiator-utils-iscsiuio-6.2.0.873-29.el7.x86_64

# yum install -y iscsi*

(二)、加入开机自启

# systemctl restart iscsid.service

# systemctl enable iscsid.service

(三)、做一个发现的操作,发现服务器共享的target名字是什么

(四)、查看发现的条目

(五)、修改客户端的acl并登录

注:这个自动加载过来的磁盘重启之后是自动加载过来的

4、客户端挂载iscsi的盘

格式化sdb和sdc

创建挂载点并挂载

# mkdir /sdb

# mkdir /sdc

注:如果需要实时同步的话需要使用gfs集群文件系统

5、总结

(一)、增加iscsi存储

(1)发现iscsi存储:iscsiadm

-m discovery -t st -p ISCSI_IP

(2)查看iscsi发现记录:iscsiadm

-m node

(3)登录iscsi存储:iscsiadm

-m node -T LUN_NAME -p ISCSI_IP -l

(4)开机自动:

iscsiadm -m node –T LUN_NAME -p ISCSI_IP –op

update -n node.startup -v

automatic

(二)、删除iscsi存储

(1)登出iscsi存储

iscsiadm -m node -T LUN_NAME -p ISCSI_IP -u

(2)对出iscsi所有登录

iscsiadm -m node –logoutall=all

(3)删除iscsi发现记录:iscsiadm

WIN8.1有什么办法充当ISCSI服务器

安装windows 2023 r2 ,然后需要下载 iscsi software target,安装好了之后就可以发布磁盘了,发布的这个磁盘现在就可以被其他电脑使用了.

在其他电脑上, win7 或 08 直接就有 iscsi 的发起程序,在管理工具里可以找到;如果是在xp或者03,需要安装iscsi 发起程序.

运行iscsi发起程序,就可以连接到你前面发布的磁盘。连接到了之后,就可以像本地硬盘一样使用。

还有一个做 iscsi 很好的。是基于FreeBSD系统搞得。FreeNAS,功能很强大。

iscsi服务器搭建的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于iscsi服务器搭建,「如何搭建iSCSI服务器?」,iscsi共享存储的简单配置和应用,WIN8.1有什么办法充当ISCSI服务器的信息别忘了在本站进行查找喔。


数据运维技术 » 「如何搭建iSCSI服务器?」 (iscsi服务器搭建)