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

iscsi共享存储的简单配置和应用,第1张

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/sbin/tgt-admin:在线查询、删除 target 等功能的设定工具;

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

客户端等工具软件。

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

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

/usr/sbin/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

[root@200 ~]# yum install -y iscsi*

(二)、加入开机自启

[root@200 ~]# systemctl restart iscsid.service

[root@200 ~]# systemctl enable iscsid.service

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

(四)、查看发现的条目

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

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

4、客户端挂载iscsi的盘

格式化sdb和sdc

创建挂载点并挂载

[root@200 ~]# mkdir /sdb

[root@200 ~]# 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

-m node -o delete -T LUN_NAME -p ISCSI_IP

 在VMware环境下使用iSCSI存储的最佳实践

一旦iSCSI磁盘配置好了,虚拟机(VMs)就可以使用它们了。以下列出的最佳实践可以帮助你在VMware环境中的iSCSI数据存储获得最大的性能和可靠性。

iSCSI存储的性能高度依赖于网络的健康和使用。为了达到最佳效果,你应该总是通过专用的网络将iSCSI的流量分离出来。

你只能在一个ESX服务器主机上配置一个软件启动器。配置为iSCSI提供连接的vSwitch时,使用多个物理网卡来提供冗余。确保你将VMkernel(虚拟机内核)接口与vSwitch的网卡绑定在一起,这样多路径配置才正确。

确保你在iSCSI

vSwitch上使用的网卡连接到不同的网络交换机,以消除单点故障。

vSphere支持使用存储协议的巨型帧,但它只对那些拥有非常大I/O的特定工作量有好处。此外,你的后端存储必须能够处理RAID组中拥有大量主轴(大于15)增加的吞吐量,否则你也看不到任何好处。如果你的I/O小并且你的存储是主轴方向的(spindle-bound),使用巨型帧你将看到你的性能很少或者没有提高在某些情况下。巨型帧实际上会降低性能,所以你应该做一个评估测试,对比一下启用巨型帧前后的效果,看看巨型帧是否有效。每个端到端组建必须支持巨型帧,包括物理网卡和网络交换机,vSwitch,VMkernel端口和iSCSI目标配置。如果任何一个组件不适合巨型帧配置,它们将无法工作。

为你的虚拟机磁盘控制器使用新的Paravirtual

SCS(PVSCSI)适配器,因为在大多数情况下它提供的最大吞吐量和性能超过了标准的LSI逻辑和BusLogic适配器。对于非常小的I/O工作量来说,LSI逻辑适配器的效果最好。

为了实现最好的性能需要设置先进的多路径,选择iSCSI存储容量属性并点击管理途径。如果有的话,你可以使用本机VMware多路径或第三方多路径插件来配置路径选择策略。当使用软件启动器(software

initiators)时,在一个vSwitch上创建两个VMkernel接口指定一个物理网卡为活跃的,另一个为未使用的使用

esxcli命令将一个VMkernel端口绑定到第一个网卡,将第二个端口绑定到第二个网卡。使用循环算法代替顺序算法或者最近最常使用(MRU)算法,将得到更好的性能。如果你的虚拟机上使用了微软集群服务器(Microsoft

Cluster

Server),避免使用循环(Round

Robin)算法。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/410796.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存