linux多路径连接iScsi存储-重启自动连接.docx
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- linux 路径 连接 iScsi 存储 自动
- 资源描述:
-
RHEL系统带有iSCSI initiator软件,下面描述如何配置iSCSI Initiator实现对ISCSI卷的访问 1. Linux iscsi 介绍(这一条介绍了linux iscsi的基本原理和相关命令,具体配置时可略过) 在Linux内核中提供了iscsi驱动,iSCSI 驱动(driver)使主机拥有了通过IP网络访问存储 的能力,驱动在主机(Initiator)和服务端(Target)间使用iSCSI协议在TCP/IP网上传输SCSI请求和响应,在构建上,iSCSI驱动与TCP/IP栈、网络驱动和网络接口卡(NIC)结合,其等同于SCSI或光纤通道卡适配器驱动对主机总线卡(HBA)的作用。驱动采用采用模块的方式,具体模块包括iscsi_tcp, libiscsi, libiscsi_tcp。 Initiator守护进程介绍: /etc/iscsi/iscsid.conf --initiator配置文件 /sbin/iscsiadm --initiator管理工具 open-iscsi包括两个守护进程iscsid和iscsi,其中iscsid是主进程,iscsi进程则主要负责根据配置,在系统启动时进行发起端(Initiator)到服务端(target)的登录,建立发起端与服务端的会话,使主机在启动后即可使用通过iSCSI提供服务的存储设备。iscsid进程实现iSCSI协议的控制路径以及相关管理功能。例如守护进程(指iscsid)可配置为在系统启动时基于持久化的iSCSI数据库内容,自动重新开始发现(discovery)目标设备。 Initiator配置介绍(前提是已经安装iSCSI initiator) 1> iSCSI initiator 名称设置 initiator名称用来唯一标识一个iSCSI Initiator端。保存此名称的配置文件为 /etc/iscsi/initiatorname.iscsi,命名规则可采用iqn-type格式,利用 iscsi-iname命令可产出一个名称,将此名称输入到initiatorname.iscsi配置文件即可。 2> iSCSI Initiator配置iSCSI Initiator的配置文件为/etc/iscsi/iscsid.conf,在iSCSI initiator的scsid进程启动和执行iscsiadm命令时,将读取这个配置文件的内容,获取与SCSI目标进行交互的相关信息,主要的配置内容包括: CHAP Settings 组 本组下的各个设置项主要用来指定Initiator与target验证方式及相关信息 设置节点会话的验证模式 node.session.auth.authmethod = CHAP CHAR(Challenge Handshake Authentication Protocol ),默认为不验证(none) 设置会话target验证initiator的CHAR用户名及对应的密码 node.session.auth.username = scott node.session.auth.password = tiger 设置会话initiator验证target的用户名及其对应的密码 #node.session.auth.username_in = username_in #node.session.auth.password_in = password_in 设置initiator发现target的验证模式,默认为不验证(none) discovery.sendtargets.auth.authmethod = CHAP 设置发现会话(discovery session)target验证initiator的CHAR用户名及对应的密码 discovery.sendtargets.auth.username = scott discovery.sendtargets.auth.password = tiger 设置发现会话(discovery session)initiator验证target的CHAR用户名及对应的密码 #discovery.sendtargets.auth.username_in = username_in #discovery.sendtargets.auth.password_in = password_in 通过上述配置项,可以看到iSCSI的主要验证方式是CHAR,并且验证是双方向的。 超时(Timeouts)设置组: 本组设置initiator与target端交互的时间限制。 重试(retry)设置组: 本组设置iscsid重试登录节点的次数。 会话和设备排队深度(session and device queue depth)设置组: 设置session排队命令的数量,设置设备队列深度 iSCSI设置(iSCSI settings)组: 启用或禁止R2T(Ready to Transmit)流控,启用后,initiator在发送任何数据前必须等待 一个R2T命令,默认为禁止(no)。 node.session.iscsi.InitialR2T = Yes|no 启用或禁止立即数据(immediate data ),禁止后,initiator不随着SCSI 命令PDU发送未请求的数据。默认为启用(Yes) node.session.iscsi.ImmediateData = Yes|No 3)initiator相关命令介绍 open-iscsi initiator-utils提供的管理命令为iscsiadm,此命令包括discovery、node、session几种模式,分别处理不同的情况。在服务器能够使用Target提供的存储空间前,必须在服务器上通过Initiator软件执行以下步骤:发现目标设备-->登录目标设备-->与目标设备建立会话,下面分别说明通过各个命令进行说明。 (1)发现目标设备(Target),使用iscsiadm discovery模式,命令格式如下: iscsiadm -m discovery [ -P printlevel ] [ -t type -p ip:port [ -l ] ] | [ [ -p ip:port ] [ -l | -D ] ] 命令示例: iscsiadm -m discovery -t sendtargets -p 192.168.1.211:3260 返回信息:192.168.1.211:3260,1 iqn.2012-.nayun:test-01 192.168.1.211:3260,1 iqn.2012-.nayun:test-02 此命令查询目标门户(Portal)为192.168.1.211:3260上的目标,查找成功后,返回相应的target ID,同时在 /var/lib/iscsi/send_targets 和 /var/lib/iscsi/nodes目录下记录相应的门户和节点信息。/var/lib/iscsi目录下的内容采用dbm数据库方式存储,所有版本的linux以及大多的unix都随系统带有一个基本的,但是却很高效的数据存储程序集合,被成为dbm数据库。适合于相对比较静态的索引化数据。其实就是一个索引化的文件存储系统。这些信息称之为initiator discoverydb,可以通过iscsiadm相关操作进行管理。使用iscsiadm -m node命令,可以查看到发现的节点记录。备注:iSCSI node是一个在网络上可用的SCSI设备标识符,在open-iscsi中利用术语node表示目标(target)上的门户(portal)。一个target可以有多个portal,portal 由IP地址和端口构成。 (2)在完成目标发现后,即可以登录到相应的节点,使用目标设备提供的存储空间。 node相关命令如下: iscsiadm -m node [ -P printlevel ] [ [ -T targetname -p ip:port ] [ -l | -u | -R | -s] ] [ [ -o operation ] [ -n name ] [ -v value ] [ -p ip:port ] ] 命令示例: iscsiadm -m node -T iqn.2012-.nayun:test-01 -l 执行成功,返回如下信息: Logging in to [iface: default, target: iqn.2012-.nayun:test-01, portal: 192.168.1.211,3260] Login to [iface: default, target: iqn.2012-.nayun:test-01, portal: 192.168.1.211,3260] successful. 执行失败,返回如下信息: iscsiadm: Could not login to [iface: default, target: iqn.2012-.nayun:test-02, portal: 192.168.1.211,3260]. iscsiadm: initiator reported error (24 - iSCSI login failed due to authorization failure) iscsiadm: Could not log into all portals 出现上述提示,需要检查target与initiator的验证配置是否对应。登录成功后。在/sys/devices/platform目录下将自动生成一个hostX目录,其中X是一个编号,每次有可能不同,在此目录下包含相关的session和connection信息。 在服务端(target)可以查看登录情况,使用如下命令: tgt-admin --show 显示如下信息: Target 1: iqn.2012-.nayun:test-01 System information: Driver: iscsi State: ready I_T nexus information: I_T nexus: 1 Initiator: iqn.2012-.nayun:initiator-212 Connection: 0 IP Address: 192.168.1.212 LUN information: LUN: 0 Type: controller SCSI ID: IET 00010000 SCSI SN: beaf10 Size: 0 MB, Block size: 1 Online: Yes Removable media: No Readonly: No Backing store type: null Backing store path: None Backing store flags: LUN: 1 Type: disk SCSI ID: IET 00010001 SCSI SN: beaf11 Size: 537 MB, Block size: 512 Online: Yes Removable media: No Readonly: No Backing store type: rdwr Backing store path: /dev/sdb Backing store flags: Account information: ACL information: 192.168.1.0/24 192.168.1.210 在I_T nexus information部分显示了连接信息。 (3)登录目标节点成功后,即建立了initiator与target之间的会话(session),同时target提供的存储设备 也挂载到主机中,在/dev目录下生成一个新的设备文件类似于sdb、sdc等。查看session命令格式如下: iscsiadm -m session [ -P printlevel [ -r sessionid | sysfsdir [ -R ] [ -u | -s ] ] 命令示例: iscsiadm -m session -P 3 返回如下信息: iSCSI Transport Class version 2.0-871 version 2.0-872 Target: iqn.2012-.nayun:test-01 Current Portal: 192.168.1.211:3260,1 Persistent Portal: 192.168.1.211:3260,1 ********** Interface: ********** Iface Name: default Iface Transport: tcp Iface Initiatorname: iqn.2012-.nayun:initiator-212 Iface IPaddress: 192.168.1.212 Iface HWaddress: <empty> Iface Netdev: <empty> SID: 10 iSCSI Connection State: LOGGED IN iSCSI Session State: LOGGED_IN Internal iscsid Session State: NO CHANGE ************************ Negotiated iSCSI params: ************************ HeaderDigest: None DataDigest: None MaxRecvDataSegmentLength: 262144 MaxXmitDataSegmentLength: 8192 FirstBurstLength: 65536 MaxBurstLength: 262144 ImmediateData: Yes InitialR2T: Yes MaxOutstandingR2T: 1 ************************ Attached SCSI devices: ************************ Host Number: 11 State: running scsi11 Channel 00 Id 0 Lun: 0 scsi11 Channel 00 Id 0 Lun: 1 Attached scsi disk sdc State: running 备注:ISCSI会话用来标识到某个具体SCSI I_T连接的所有TCP连接。同一个会话里可能有一个或多个连接。当initiator通过默认端口或指定端口与target建立连接时,登录过程就开始了,initiator和target互相认证并建立安全协议。在登录阶段,ISCS Iinitiator和target会协商建立多种连接属性。 (4)使用target提供的存储盘 登录到target后,即可使用fdisk等工具像使用本地磁盘一样对磁盘进行分区,并mount到相关目录下进行文件的存取。 (5)注销登录 使用一下命令注销登录: iscsiadm -m node -T iqn.2012-.nayun:test-01 -p 192.168.1.211 -u Logging out of session [sid: 1, target: iqn.2012-.nayun:test-01, portal: 192.168.1.211,3260] Logout of [sid: 1, target: iqn.2012-.nayun:test-01, portal: 192.168.1.211,3260] successful. (6)其他操作 删除一个目标(/var/lib/iscsi/nodes目录下) iscsiadm -m node -o delete -name iqn.2012-.nayun:test-01 删除一个目标(/var/lib/iscsi/send_targets目录下) iscsiadm --mode discovery -o delete -p 192.168.1.211:3260 查看某个sendtargets portal记录 iscsiadm -m discoverydb -p 192.168.1.211:3260 -t st -o show # BEGIN RECORD 2.0-872 discovery.startup = manual discovery.type = sendtargets discovery.sendtargets.address = 192.168.1.211 discovery.sendtargets.port = 3260 discovery.sendtargets.auth.authmethod = CHAP discovery.sendtargets.auth.username = scott discovery.sendtargets.auth.password = ******** discovery.sendtargets.auth.username_in = <empty> discovery.sendtargets.auth.password_in = <empty> discovery.sendtargets.timeo.login_timeout = 15 discovery.sendtargets.use_discoveryd = No discovery.sendtargets.discoveryd_poll_inval = 30 discovery.sendtargets.reopen_max = 5 discovery.sendtargets.timeo.auth_timeout = 45 discovery.sendtargets.timeo.active_timeout = 30 discovery.sendtargets.iscsi.MaxRecvDataSegmentLength = 32768 2. 通过命令检查系统是否安装了iSCSI initiator软件包,如果没有找到相关软件包,需要在系统光盘上找到相应的rpm包安装。 # rpm –qa|grep iscsi 如果没有安装,通过以下命令安装iSCSI initiator # yum install iscsi-initiator-utils 3. 配置每次系统启动是自动开启iscsi服务 # chkconfig --list |grep iscsi 如果不是开机启动,即3和5是off,需要改成开机启动 # chkconfig iscsi --level 35 on # chkconfig iscsid --level 35 on 4. 启动iSCSI服务,查看服务状态 # service iscsi start# # service iscsi status 5. 修改配置文件 # vim /etc/iscsi/iscsid.conf node.startup=auto node.session.iscsi.InitialR2T=Yes node.session.iscsi.ImmediateData=No node.session.timeo.replacement_timeout=60 6. 此台RHEL主机的iscsi编号(iqn号)在/etc/iscsi/initiatorname.iscsi文件中,记录此iqn号在V3500/3700管理工具中建立主机时使用,注意图中红圈部分,也就是“InitiatorName=”后面部分是iqn号。这在存储阵列中添加主机时会用到。使用vim进行编辑,但要注意格式。 # vim /etc/iscsi/initiatorname.iscsi 7. 发现目标 # iscsiadm -m discovery -t sendtargets -p 192.168.3.101:3260 注:p后面是控制器的iscsi地址,默认端口是3260,如果没有更改默认端口,可以不用添加。如果有多个控制器都提供iscsi服务,可以继续发现其余控制器上的目标(最终通过多路径软件访问的都是一个目标)。 8. 登陆到刚刚发现的控制器 # iscsiadm -m node -T iqn.1986-.ibm:2145.v3700.node1 -p 192.168.3.101 –login 注:其中-T后面是控制器1的iqn号,-p后面是控制器1的iSCSI地址。 9. 登陆成功后检查是否成功 # iscsiadm -m session 查看session # iscsiadm -m node 查看node数量 10. 重复第7和8的步骤将完成对控制器2的发现和登陆操作,完成后应该同时可以看到两个控制器的信息。上图是已经完成对控制器2的发现和登陆。 11. 重新扫描iSCSI设备。 # iscsiadm –m node –R 12. 设置开机自动加载分区 # iscsiadm -m node –T PORT-NAME –p PORT-IP --op update -n node.startup -v automatic 13. 通过fdisk -l命令查看硬盘可以发现V3500/3700上映射过来的卷,但是因为存在冗余的路径,所以每个卷看到了两个同样大小的存储空间,需要通过安装多路径软件来解决这个问题。 14. Linux系统下多路径软件是操作系统自带的DM Multipath(DMMP)工具。首先检查系统是否已安装了DMMP软件包。 # rpm -qa|grep device-mapper-multipath 如果没有从系统安装光盘上找到并且安装相应软件包。 # yum install device-mapper # yum install device-mapper-multipath 15. 设置DMMP服务在每次系统启动时自动开启,并检查状态 # chkconfig --level 2345 multipathd on # chkconfig --list |grep multipathd 16. DMMP需要建立一个配置文件/etc/multipath.conf,默认情况下是没有的,可以将模板配置文件复制到/etc目录下,模板配置文件/usr/share/doc/device-mapper-multipath-0.4.9/multipath.conf # cp /usr/share/doc/device-mapper-multipath-0.4.9/multipath.conf /etc/multipath.conf 17. 启动multipathd服务 # service multipathd start 18. 检查DMMP模块是否正常加载 # lsmod |grep dm_multipath 19. 安装配置成功后,可以查看到DMMP管理了一个名称为mpathb的多路径设备,此设备包含有两个路径。 # multipath –ll 20. 使用fdisk查看硬盘会多出一个存储设备/dev/mapper/mpatha,在分区或其他针对硬盘的操作时请使用这个设备,不要使用/dev/sdb和/dev/sdc。 # fdisk –l 21. 进行分区并格式化 如果小于 2T 分区,可以使用 fdisk 进行分区,使用 MBR 分区表,如果大于 2T 分区,则不能使用 MBR 分区表,需要使用 GPT 分区表。使用 Parted 命令进行分区。格式化时硬盘分区太大,可以使用 -T largefile 参数 # mkfs.ext4 -T largefile /dev/mapper/mpatha 22. 挂载分区 # mount /dev/mapper/mpatha /data 23. 设置开机自动加载文件系统 在/etc/fstab中添加 /dev/mapper/mpatha /data ext4 _netdev 0 0 但是,Linux系统重启后,磁盘设备的名称可能会发生飘移,从而引起文件系统不能挂载上来或者不能正确挂载,使用UUID的方式进行挂载可以解决这个问题 命令tune2fs -l /dev/mapper/mpatha可以查到文件系统的UUID 在/etc/fstab中添加 UUID=b0583450-3010-4112-b355-15b0d8e6a880 /data ext4 _netdev 0 0 替换掉原来的那行。搞定,这样每次重启系统就可以看到自动挂载好的文件系统,使用跟本地磁盘一样。 24. 至此,该教程全部结束。展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




linux多路径连接iScsi存储-重启自动连接.docx



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/4477740.html