如何纠正错误的ESXi共享存储配置
一个成功的vSphere部署需要包含三个基本部分:多个相同的ESXi服务器、共享存储和vCenter。任何具有多个ESXi服务器的数据中心都应该使用共享存储,并且对于所有服务器集群都保证一直可用。
对于一些vSphere核心技术来说,比如vMotion、分布式资源调度(DRS)和高可用性(HA),共享存储是一个前提条件。vMotion可以在不产生宕机时间的情况下,将一个运行中的虚拟机从一台ESXi主机迁移到另一台上。DRS利用vMotion技术将虚拟机移动到其他的ESXi主机上,以避免产生CPU和内存不足的情况。如果一台ESXi服务器发生故障,vSphere HA会在集群中的其他ESXi主机上重启正在运行的虚拟机。DRS和HA只能用于存放在共享存储上的虚拟机;不论是HA还是DRS迁移,虚拟机在存储上的位置都不会发生改变。
为了最大限度地发挥HA和DRS的作用,虚拟机使用的所有存储都必须对集群中的每一台ESXi服务器保证可用。连续的共享存储使用的配置取决于存储网络类型:光纤通道(FC)、iSCSI还是网络文件系统(NFS)。对于FC和iSCSI存储,需要确保存储阵列对于每个ESXi主机都使用相同的逻辑单元号(LUN)。一些阵列通过使用分组可以轻松实现这个需求,但是其他阵列就需要你为每个主机都单独进行配置。
对于FC,你需要将FC交换机配置在一致的分区当中,以使得所有的主机都能够找到阵列。如果使用的是iSCSI,那么ESXi主机需要使用同样的发现设定、同样的动态发现IP地址列表。
如果使用的是NFS,那么大部分的设定都可以在ESXi服务器上完成。确保在每个ESXi主机上都使用相同的NFS服务器主机名和共享路径。如果一个ESXi主机使用NFS服务器的IP地址,另外一个使用主机名,而第三台ESXi主机使用全限定名,那么vCenter将认为它们使用的是不同的数据存储。NFS服务器主机名和共享路径在所有的主机上都必须是相同的,这样vCenter才能将它们识别为同一个数据存储。可以使用vSphere Command Line或者PowerCLI脚本对ESXi主机的NFS和iSCSI进行自动配置,这样可以更为轻易地确保使用同样的命令来部署每个主机。
在vSphere Client中的Maps标签页下,可以轻松地查看集群的一致性存储。在vSphere Client的主机和集群视图中,选择集群——而不是ESXi主机——点击Maps标签,之后关闭所有从主机到数据存储的依赖关系联线,点击应用关系。现在,就可以看到主机和数据存储的网状连接图了。
如果每一个数据存储都连接到每一台主机上,那么一切都不会有问题。那些只连接到一部分主机的数据存储会引发问题。如果只有一部分主机能够找到数据存储,那么只有这些主机可以使用数据存储来运行虚拟机。没有连接到这些数据存储的主机可能进行了错误的配置。一些数据存储只连接到一台ESXi主机;这通常是ESXi主机内部的本地磁盘,不能进行共享。注意不要将虚拟机放置在本地数据存储上,除非虚拟机只是在ESXi主机上使用,比如vShield代理虚拟机。
开启虚拟机到数据存储的关系会使得网络关系图更加复杂,但是可以显示出哪些虚拟机位于共享存储上,哪些在使用非共享数据存储。如果你的一些虚拟机位于非共享存储上,想一想是否能够通过存储vMotion将这些虚拟机迁移到一个另外的数据存储当中;需要确保目的存储上有足够的空余空间。从VM菜单中选择Change Datastore,选择目标数据存储进行迁移,之后等待。
其支持者通常都专注于其卓越的性价比,但是其成功的秘密却是广为人知的一些实施技巧:iSCSI使用标准的TCP/IP网络连接来传输“块级”数据,所以即使几乎没有存储经验的网络管理员也感到十分轻松。
低级配置带来的灾难
假设你为一家中小型企业工作,并且有几台Windows服务器,你想将其连接到iSCSI SAN上。这些服务器都是全新的,并拥有四个板载的1Gbps网卡,但是仅有一个网卡连接到了一台交换机,一台低端的不可管理的的千兆交换机。
乍一看,似乎你能够将SAN插入到交换机中,并为其分配IP地址,在服务器上安装微软的iSCSI initiator,并配置它使其连接到SAN,好象可以高枕无忧了。实际上,你能够从服务器上加载SAN存储器,而且它还可以凑合着运行—只要你并不设法调整它。然而,如果你将实际的负载加到SAN卷上,很快就会发现这种设计的不足之处。
以这种方式连接iSCSI存储器存在着几个问题。你将没有交换机或网卡的冗余,SAN上没有负载均衡,也没有需要用来优化iSCSI通信流(通过交换机的)的特性,而且,最糟的可能是,存储器将会与前端的客户端通信争夺带宽。
正确建立iSCSI
在上面的情形中,缺失的元素是很明显的:一台象样的交换机。一台优良的交换机是iSCSI SAN的关键部分。确实,任何千兆交换机都可用于iSCSI,但是采用低廉的不可管理的交换机会使你遗漏一些重要的特性。
1、安装targetcli
# yum -y install targetcli
2、targetcli语法及参数说明
targetcli基本概念
Initiator,启动器:iSCSI客户端
Target,目标:iSCSI服务器上提供的网络存储设备(通过软件描述并发布),需要有唯一的名称
后端存储 backstore:服务端实际提供的物理存储设备(block块设备、fileio镜像文件、pscsi物
理SCSI设备、ramdisk、内存盘),作为Target的设备来源
逻辑单元 lun:软件逻辑上定义的到后端存储的一个映射,每个iSCSI目标可以提供多个lun逻辑单元
访问控制 acl:通过限定客户端的IQN名称来实现对iSCSI目标的访问控制
门户 portal:用来接受客户端访问的IP地址和端口,能够到达指定iSCSI目标
IQN,IQN名称(ISCSI Qualified Name):用来标记iscsi网络存储、iscsi客户机
iqnyyyy-mm反序域名:自定义标记
比如:使用“iqn2021-10comexamplelab:servera”标记iSCSI目标;使用“iqn2021-10comexamplelab:serverb”表示启动器
TPG,目标门户组(Target Portal Group):iSCSI目标的完整配置,包括portal、lun、acl, 通常所有目标使用同一个TPG
3、示例
31、配置
[root@servera ~]# targetcli //打开配置工具
/> ls //查看当前配置的资源列表
32、访问
用途:通过网络访问网络磁盘(发现、连接)
软件包:iscsi-initiator-utils
配置工具:iscsiadm
系统服务:iscsi(开机连接磁盘)、iscsid(更新本机的IQN名称)
配置客户机的IQN名称
# vim /etc/iscsi/initiatornameiscsi
InitiatorName=客户机的IQN名称
# systemctl restart iscsid
使用iscsiadm管理工具
# iscsiadm -m discovery -t sendtargets -p 服务器地址[:端口] //发现查找可用的iSCSI 目标
# iscsiadm -m node -T 磁盘的IQN名称 -l //连接(--login)指定IQN名称的ISCSI目标
# iscsiadm -m node -T 磁盘的IQN名称 -u //断开(--logout)指定IQN名称的ISCSI目标
# iscsiadm -m node -T 磁盘的IQN名称 -o delete //删除指定IQN名称的ISCSI目标
# iscsiadm -m node -L all //自动连接已经发现的所有iSCSI目标
首先说一下存储连接主机的方式
SCSI:这种方式比较老,新设备已经不再使用这种连接方式,使用铜缆,走scsi协议,最快的是Ultra 320 SCSI,接口最大速度320Mb/s。有些磁带库驱动器会使用SCSI口连接。不可用以太网交换机。
SAS:串行SCSI,这种方式在现在一些比较低端的存储会被采用,价格低廉,使用铜缆,接口为小梯型或小长方型的SAS专用接口。接口最大速库6Gb/s,有些磁带库驱动器会使用SAS口连接。不可用以太网交换机。典型设备IBM Total Storage DS3200。
ISCSI:这种方式可以理解为SCSI协议与TCPIP协议的结合,由于存储系统的重要性,以及以太网络的非100%可用性,所以使用的设备也大多是一些低端设备,使用以太网络铜缆,可以走以太网络交换机或主机与存储直接连接,主机端可以使用通用网卡,或者专用的ISCSI HBA卡,后者可以实现SANBoot。速度受控制器以及网络条件限制,目前主流为1Gb/s。典型设备IBM Total Storage DS3300。
Fibre Channel:这种方式是目前主流的存储连接方式,使用多模光纤,使用SCSI协议,价格高,但无论是速度还是稳定性可以很好的符合高可用环境的需要。端口速度1Gb、2Gb、4Gb、8Gb,1Gb、2Gb现在所被使用的设备一般为老设备,现在主流为4Gb,并且新设备多为8Gb。可以走交换机,或者主机与存储直接连接。但注意交换机,并不是以太网交换机,是SAN交换机,专用于光纤存储与主机的连接,特点为,交换机上的rj45为管理,其余都是SFP口。这种连接方式无典型设备,就IBM而言,DS系统的存储除ds3200、ds3300,其余的都是采用光纤接口。这种存储所使用的硬盘也是所有种类硬盘价格最高的,使用Fibre Channel接口,接口速度同存储接口速度。另外,当前各家的主流磁带库存储,也都使用光纤来连接驱动器。
另外还有一类存储同样使用RJ45,走以太网交换机,使用网络通讯协议,这类存储叫NAS。存储对外提供的并不是存储空间,而是文件系统,给windows主机使用时提供的可能是cifs,而给类unix主机使用时可能提供的是nfs。IBM N系统的存储都是这一类。实际环境见的不多。
iscsi、cifs、nfs区别为:对象不同、环境不同、方式不同。
一、对象不同
1、iscsi:iscsi是针对数据块存储的。
2、cifs:cifs是针对共享文件存储的。
3、nfs:nfs是针对共享文件存储的。
二、环境不同
1、iscsi:iscsi主要应用在Windows环境下,适用于TCP/IP通讯协议。
2、cifs:cifs主要应用在NT/Windows环境下。
3、nfs:nfs主要应用在UNIX环境下,广泛应用在FreeBSD、SCO、Solaris等等异构操作系统平台。
三、方式不同
1、iscsi:iscsi并不能用于在磁盘中存储和管理数据,是通过TCP/IP网络传输文件时的文件组织格式和数据传输方式。
2、cifs:cifs让协议运行于TCP/IP通信协议之上,让Unix计算机可以在网络邻居上被Windows计算机看到,并进一步传递存储数据。
3、nfs:nfs能够支持在不同类型的系统之间通过网络进行文件共享存储。
0条评论