使用iscsi服务部署网络存储
一、iSCSI技术介绍
1)当前硬盘接口类型有IDE、SATA、iSCSI3种类型:
IDE是一种成熟、稳定且价格便宜的并行传输接口;
SATA是一种传输速度更快、数据校验更完整的串行传输接口;
iSCSI(internet small computer system interface)是一种用于计算机和硬盘、光驱等设备之间系统级接口的通用标准,具有系统资源占用率小、转速高、传输速度等优点。
2)iSCSI存储技术非常便捷,在访问资源存储的形式上有很大变化,不受物理环境的限制,可以把存储资源分给多台服务器使用。以往硬件设备直接通过主板的总线进行数据传输,但现在需让互联网作为数据传输的载体和通道,因此传输速度和稳定性是iSCSI技术的瓶颈。
二、部署网络存储步骤
1)创建RAID磁盘阵列
第一步:虚拟机添加4块硬盘,启动系统后使用mdadm 命令创建RAID磁盘阵列:mdadm -Cv /dev/md0 -n 3 -l 5 -x 1 /dev/sdb /dev/sdc /dev/sdd /dev/sde,即创建阵列md0磁盘,-Cv参数表示创建阵列并显示过程,-n 3 参数表示创建阵列RAID 5阵列所需的硬盘个数,-l 5参数表示创建磁盘阵列的级别,-x 1 参数表示磁盘阵列的备份盘的个数。
第二步:磁盘阵列创建完成,mdadm -D /dev/md0命令查看磁盘阵列的信息,可看到信息中系统自动生成一个UUID,这个是设备的唯一标识符。
2)配置iSCSI服务
第一步:在iSCSI服务安装服务程序targetd和配置命令工具targetcli:yum -y install targetd ,重启targetd服务并设置开机启动项;
第二步:配置iSCSI服务端共享资源,targetcli是用于管理iSCSI服务端存储资源的专用命令:使用targetcli进入配置界面,/backstores/block是iSCSI服务端配置共享的位置,需要把RAID 5磁盘阵列加md0加到存储“资源池”中,并重新命名该文件为disk0(存储“资源池”),即进入block目录下cd /backstores/block,创建存储设备disk0加入md0磁盘阵列:create disk0 /dev/md0,回到根目录cd /
第三步:创建iSCSI target名称,即进入iscsi目录创建target名称,名称是系统自动生成的:cd iscsi/ --> create,此时生成了一个target名称,是共享存储的唯一标识符;然后创建一个名称与这个target名称一样的“新目录”,用于存放共享资源,例如:cdiqn.2003-01.org.linux-iscsi.mail.x8664:sn.08aa09eae9c6/,然后进入tpg1/luns将第二步中的存储设备disk0放到共享存储资源中:cd /tpg1/luns --> create /backstores/block/disk0,如此用户登录iSCSI服务端时即可默认使用这块设备提供共享存储资源。
第四步:设置访问控制列表,即第二步完成后cd ..回到上一级目录,cd acl/进入acl列表,创建用户访问存储需要验证的名称:create [target名称]:client,后面加:client保证了名称唯一性。
第五步:设置iSCSI服务端的IP地址和监听端口,默认端口是3260,即在第四步完成后回到上一级目录cd ..,进入portal目录并设置:cd /portal --> create 192.168.1.102(如果无法创建则是监听端口已经备占用,需删除(delete x.x.x.x 3260)再添加)
第六步:回到根目录 ls 命令查看配置是否完整,然后,exit(包含保存操作)命令退出,ctrl + c操作不会保存配置,最后重启tartgetd服务并设置开机启动项。
第七步:配置firewall防火墙策略并重新加载:firewall-cmd --permanet --add-port=3260/tcp firewall-cmd --reload 。
三、配置iSCSI客户端
1)Linux客户端(iSCSI客户端访问共享存储资源步骤:先发现 ,再登录,最后挂载并使用)
第一步:安装iSCSI客户端服务程序initiator:yum -y iscsi-initiator-utils
第二步:配置iSCSI客户端名称:iSCSI协议是通过客户端名称来验证,则该名称也需是iSCSI客户端的唯一标识,且必须与iSCSI服务端配置访问控制列表信息一致:
vi /etc/iscsi/initiatorname.iscsi,然后设置名称:InitiatorName=[target名称]:client,最后重启iscsid服务并设置开机启动项。
第三步:发现共享存储设备:iscsiadm -m discovery -t st -p 192.168.1.102,其中iscsiadm是用于管理、查询、插入、更新或删除iSCSI数据库配置文件的命令工具,-m discovery 目的是扫描发现可用的共享存储资源,-p 参数是iSCSI服务端的IP地址。
第四步:登录共享存储服务端:iscsiadm -m node -T [target名称] -p x.x.x.x --login,-p参数后面加iSCSI服务端IP地址,-m node参数将客户端所在主机作为一条节点服务器。
第五步:格式化分区:file /dev/sdb可看到新增的磁盘,mkfs.xfx /dev/sdb 格式化磁盘,创建设备文件mkdir /iscsi,挂载磁盘到挂载点mout /dev/sdb /iscsi,df -h即可查看挂载的结果
第六步:当客户机使用多个远程存储资源时,需要在/etc/fstab配置文件中通过设备的UUID唯一标识符进行挂载,保证系统能正确找到设备对应的目录,使用blkid命令查看设备名称、文件系统及UUID,即blkid | grep /dev/sdb 即可看到sdb设备的参数,然后在/etc/fstab配置文件中配置系统开机自动挂载:
vi /etc/fstab
UUID=[UUID名称] /iscsi xfs defaults,_netdev 0 0
最后,如果不需要共享存储资源了,卸载的命令是iscsiadm。
2)window客户端
第一步:打开控制面板--管理工具,运行iscsi服务程序,在“配置”卡片中设置iSCSI发起程序的名称为iSCSI服务端中acl配置的名称,即[target名称]:client,然后在“目录”卡片中输入iSCSI服务端IP地址,连接正常后点击确认。
第二步:右击我都电脑“管理”,打开存储管理程序,格式化新的磁盘即可使用。