Linux下Open-iSCSI使用指导

 iSCSI(Internet SCSI)是IETF制订的一项标准,用于将SCSI数据块映射成以太网数据包。简洁的说法可以认为是:iSCSI协议将SCSI数据块打包成TCP/IP包,在现有网络内传输。

    在IP SAN组网中,需要使用iSCSI协议实现主机和存储之间的对接。在Windows Server 2003中使用iSCSI Initiator软件实现Windows系统与IP SAN存储设备的对接,而在Linux系统中使用修改配置文件或Open-iSCSI实现Linux主机和IP SAN存储设备的对接。

Open-iSCSI介绍

    Open-iSCSI是用于RedHat Linux 5和SuSE Linux 10及更高版本的Linux系统与IP SAN设备对接的软件,在此之前是通过修改侯iscsi.conf配置文件实现Linux系统与IP SAN设备对接的。

系统中若没有安装Open-iSCSI软件,则可以通过以下方法获取软件:

a.     从安装光盘中查找open-iscsi软件,然后更新系统。

b.     前往 http://www.open-iscsi.org/ 官方网站下载并安装open-iscsi即可。

Open-iSCSI使用指导

    Open-iSCSI的配置信息是以数据库的形式进行管理的,主要包含两个表:

         Discovery table (/etc/iscsi/send_targets)

         Node table (/etc/iscsi/nodes)

    Open-iSCSI的管理主要是通过iscsiadm来完成的。iscsiadm是一个命令行管理工具,通过它来查询、更新、删除这两个表。

首先介绍一下Open-iSCSI的配置文件:

         /etc/iscsi/iscsid.conf

该文件是默认的配置文件,配置文件内容可以在Discovery过程中或者用iscsiadm来改变。

         /etc/iscsi/initiatorname.iscsi

保存启动器名称,可以修改,但需要注意符合命名规范。

         /etc/iscsi/send_targets

该目录下包含所有曾经发现过的目标器地址信息等。

         /etc/iscsi/nodes

该目录下包含发现的目标器节点信息。

下面将介绍Open-iSCSI常用的命令。

1.open-iscsi服务的控制

A.如何启动open-iscsi服务?

/etc/init.d/open-iscsi start   (Suse10)

/etc/init.d/iscsi start        (Redhat5)

B.如何停止open-iscsi服务?

/etc/init.d/open-iscsi stop   (Suse10)

/etc/init.d/iscsi stop        (Redhat5)

C.如何查看open-iscsi服务状态?

/etc/init.d/open-iscsi status   (Suse10)

/etc/init.d/iscsi status        (Redhat5)

D.如何重启open-iscsi服务?

/etc/init.d/open-iscsi restart   (Suse10)

/etc/init.d/iscsi restart        (Redhat5)

E.如何配置open-iscsi服务开机时自动启动?

chkconfig open-iscsi on

2.iscsiadm的使用方法

A.发现目标器:

iscsiadm -m discovery -t st -p 192.168.120.198

B.显示所有已发现目标器节点信息:

iscsiadm -m node

C.登陆已发现目标器:

iscsiadm -m node -T iqn.2005-03.com.max -p 192.168.120.198 –l

D.登出目标器:

iscsiadm -m node -T iqn.2005-03.com.max -p 192.168.120.198 -u

E.删除目标器节点信息:

iscsiadm -m node -o delete -T iqn.2005-03.com.max -p 192.168.120.198

F.更改对应目标器节点协商参数:

iscsiadm -m node -T iqn.2005-03.com.max -p 192.168.120.198 -o update -n node.cnx[0].iscsi.MaxRecvDataSegmentLength -v 65536

 

【注意】由于更改配置文件/etc/iscsi/iscsid.conf后只有重新执行restart才能对所有已发现目标器生效,所以推荐使用-o方式更新目标器节点的配置信息。比如说之前登陆目标器时设备测没有用chap认证,后面又开始使用chap认证,那么我们就可以使用H中的方式进行更新,然后再重新登陆目标器即可。

G. 登陆、登出所有目标器:

iscsiadm -m node -L all

iscsiadm -m node –U all

H.CHAP认证用法:

iscsiadm -m node -T Targetname -p 目标器IP -o update -n node.session.auth.authmethod -v CHAP                 //设置为改目标器需要CHAP认证

iscsiadm -m node -T Targetname -p 目标器IP -o update -n node.session.auth.username -v huawei                    //设置CHAP用户名为huawei

iscsiadm -m node -T Targetname -p 目标器IP -o update -n node.session.auth.password -v huawei                     //设置CHAP密码为huawei

I.查看当前活动session信息:

iscsiadm -m session              //查看session详细信息

这个命令类似于suse9下iSCSI启动器的iscsi-ls,可以用来查看目标器是否已连接及目标器信息。

J.设置系统启动时自动连接目标器:

修改/etc/iscsi/iscsid.conf配置文件中的node.startup修改为:node.startup = automatic

注:如果需要其他用法可以使用 man iscsiadm或者info iscsiadm来查看iscsiadm的说明。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Linux上搭建iSCSI服务器,需要进行以下步骤: 1. 安装iSCSI软件包:在Linux系统上安装iSCSI软件包,例如open-iscsiiscsi-target。 2. 配置iSCSI Target:使用iscsi-target软件包创建iSCSI Target,配置iSCSI Target的名称、IP地址、端口等信息。 3. 创建iSCSI LUN:使用iscsi-target软件包创建iSCSI LUN(逻辑单元),并将其映射到物理存储设备上。 4. 配置iSCSI Initiator:在客户端上安装iSCSI Initiator软件包,并配置iSCSI Initiator的名称、IP地址、端口等信息。 5. 连接iSCSI Target:在客户端上使用iSCSI Initiator连接iSCSI Target,并将iSCSI LUN映射到客户端上。 6. 测试iSCSI连接:使用客户端上的工具测试iSCSI连接是否正常,例如使用dd命令在iSCSI LUN上创建文件。 以上是在Linux上搭建iSCSI服务器的基本步骤,具体操作可以参考相关文档或教程。 ### 回答2: 先介绍一下iSCSI的基本概念吧:iSCSI是一种存储协议,它是一种基于网络的存储协议,通过网络将远程存储设备映射到本地主机上,使得本地主机可以像使用本地硬盘一样使用远程存储设备。iSCSI协议在网络存储领域应用广泛,特别是在虚拟化环境下,iSCSI存储是实现共享存储的重要方式之一。 搭建iSCSI服务器需要准备两个方面的工作,第一是准备一个可用的Linux服务器,第二是安装和配置iSCSI软件。 一、准备Linux服务器 1. 首先要安装Linux系统,这里我们以CentOS系统为例; 2. 确认服务器硬件配置符合iSCSI的要求; 3. 安装和配置网络环境; 4. 创建一个LUN(Logical Unit Number)存储单元,这是iSCSI存储的最小单位。 二、安装和配置iSCSI软件 1. 安装iSCSI软件,Linux下主流的iSCSI软件有多种,比如open-iscsi、tgt等,这里我们以open-iscsi为例; 2. 配置iSCSI服务器参数,包括iSCSI服务名称、存储密码等; 3. 创建iSCSI Target,这是iSCSI存储的核心部分,它是定义好的LUN逻辑单元映射到物理存储单元的过程; 4. 配置iSCSI Target的参数,包括存储IP地址、端口等; 5. 配置iSCSI Initiator,这是客户端连接iSCSI Target的过程; 6. 测试iSCSI存储的可用性。 综上,搭建iSCSI服务器并不是很复杂,但是需要较多的Linux操作技能。如果您不熟悉Linux操作,建议参考相关的教程或请专业技术人员操作。 ### 回答3: iSCSI是基于以太网的存储网络协议,可以将存储器虚拟化为IP网络资源。Linux搭建iSCSI服务器可以提供高效、稳定、灵活的存储资源服务,并且可以支持多种操作系统的访问,如Windows、Linux、Unix等。 步骤如下: 1. 安装iSCSI-target软件 Linux上的iSCSI-target软件有多种可选,如SCST、tgt、LIO等。在这里以tgt为例,它是Linux使用最广泛的一个iSCSI-target软件。 在Ubuntu中,可以使用命令sudo apt-get install tgt安装tgt软件包。在CentOS中,可以使用命令yum install scsi-target-utils安装。 2. 配置tgt tgt的配置文件为/etc/tgt/targets.conf,在配置文件中,首先需要定义一个iSCSI Target,如下所示: <target iqn.2019-12.com.example:server.target1> backing-store /dev/sdb # 这里指定了iSCSI Target的存储设备 initiator-address 192.168.0.10 # 指定发起者的IP地址 incominguser user password # 指定iSCSI登录的用户名和密码 </target> 以上配置文件表示定义了一个名称为iqn.2019-12.com.example:server.target1的iSCSI Target,使用/dev/sdb设备作为存储设备,指定发起者IP地址为192.168.0.10。同时定义了一个iSCSI登录的用户名和密码。 3. 启动tgt服务 在tgt服务配置好后,需要使用命令systemctl start tgt启动tgt服务,使之生效。同时可以使用命令systemctl enable tgt设置开机启动服务。 4. 配置发起者 在Windows中,可以使用Microsoft iSCSI Initiator软件来作为iSCSI客户端进行连接。在Linux中,可以使用open-iscsi软件包来配置iSCSI客户端。 在Ubuntu中,可以使用命令sudo apt-get install open-iscsi安装open-iscsi软件包,在CentOS中,可以使用命令yum install iscsi-initiator-utils安装。 在配置iSCSI Initiator时,需要指定以下参数: - 目标iSCSI Target的名称或IP地址 - 登录iSCSI Target时需要用到的用户名和密码 - iSCSI Target的LUN ID(逻辑单元号),表示iSCSI Target中的哪个存储设备 对于open-iscsi,在Ubuntu中配置文件为/etc/iscsi/initiatorname.iscsi,在CentOS中为/etc/iscsi/initiatorname.iscsi,在配置文件中定义以下配置项: InitiatorName=iqn.2020-01.com.example:client # 定义iSCSI Initiator的名称 NodeStartUp=automatic # 设置开机启动 在配置好iSCSI Initiator后,可以使用命令iscsiadm -m discovery -P1来发现iSCSI Target。使用命令iscsiadm -m node -l可以登录iSCSI Target,并使用命令lsblk来查看iSCSI Target中的存储设备。 总结 搭建Linux iSCSI服务器并不复杂,需要操作者掌握基本的Linux系统操作和熟悉iSCSI的相关知识。通过一个简单的例子,我们可以了解到如何安装iSCSI-target软件、配置tgt,并使用iSCSI Initiator来连接iSCSI Target。同时,还需注意一些安全和性能的问题,如防火墙设置、安全登录、并发连接等,以保障服务的可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值