vios配置的自动采集

    技术2024-07-03  79

    VIOS共享存储池简介

    我喜欢Power Systems,并且一直想知道为什么Power Systems没有快照和精简配置功能。 最后,随着共享存储池概念的介绍,我发现它们也已在IBM Power Systems中启用。

    顾名思义,共享存储池基本上是在一组IBM VIOS实例之间共享存储资源(SAN磁盘)。 不仅像物理磁盘一样,还像共享存储池中的逻辑卷一样对它们进行切片,这被表示为逻辑单元(LU)。 LU基本上是群集存储池中存在的文件支持的存储。

    VIOS的最低版本应为2.2.0.11。 我在VIOS 2.2.1.4中测试了功能。 使用当前版本的VIOS 2.2.2.1,群集中可以有16个VIOS节点,每个VIOS节点最多可以支持200个客户端。

    共享存储池概念利用IBMAIX®操作系统中的Cluster Aware AIX(CAA)功能来形成VIOS集群。 使用CAA功能,群集可以监视群集中的对等方。 有关CAA的更多信息,请参考Chris Gibson的博客 。

    在本文中,我将使用两个不同的物理系统上托管的两个VIOS实例。 当您浏览本文时,我们将看到有关以下任务的详细信息。

    创建集群和共享存储池 验证集群状态 列出共享存储池属性 创建逻辑单元 将逻辑单元分配给客户端 修改集群

    功能包括:

    厚置备 精简配置 快照功能 创造 回滚 删除

    要求

    IBMPowerVM®标准版 VIOS版本2.2.0.11,修订包24,Service Pack 1和更高版本 至少两个磁盘:一个磁盘用于CAA存储库,另一个磁盘用于存储池。

    实验室设置

    图1显示了我在整个文章中用来说明此功能的实验设置。

    图1.实验室环境设置

    我们还将登录到VIOS并验证配置。

    清单1.在VIOS A上
    $ hostname VIOSA $ ioslevel 2.2.1.4 $ lspv NAME PVID VG STATUS hdisk0 00c858a2bde1979e rootvg active hdisk1 00c858a2cbd45f6b None hdisk2 00c858a2cca2a81d None hdisk3 00c858a210d30593 None hdisk4 00c858a210d32cfd None $ lsvg rootvg $ lssp Pool Size(mb) Free(mb) Alloc Size(mb) BDs Type rootvg 102272 77824 128 0 LVPOOL $ $ cluster -list $
    清单2.在VIOS B上
    $ hostname VIOSB $ ioslevel 2.2.1.4 $ lspv NAME PVID VG STATUS hdisk0 00c858a2bde1979e rootvg active hdisk1 00c9095f0f795c20 None hdisk2 00c858a2cca2a81d None hdisk3 00c858a210d30593 None hdisk4 00c858a210d32cfd None $ lsvg rootvg $ lssp Pool Size(mb) Free(mb) Alloc Size(mb) BDs Type rootvg 102272 77824 128 0 LVPOOL $ $ cluster -list $

    我的VIOS系统中有五个磁盘,两个VIOS中的VIOS和客户端逻辑分区或LPAR(rootvg)分别使用hdisk0和hdisk1。 我们将要使用的磁盘是hdisk2,hdisk3和hdisk4。 查看所有物理卷的ID(PVID)。 它们在两个VIOS上都是相同的,这确认两个VIOS实例之间共享同一组物理磁盘。 它们的命名顺序不必相同,因为重要的是PVID。

    您还需要确保群集中的VIOS节点在IP网络中可访问。 您应该能够使用/ etc / hosts或DNS来解析其主机名。

    创建共享存储池

    现在我们的游乐场已经准备就绪,让我们通过创建VIOS集群和共享存储池开始游戏。 这应该使用cluster命令执行,该命令初始化集群过程并创建共享存储池。

    对于我们的演示集群,我将hdisk2用于CAA存储库磁盘,该磁盘包含有关集群的所有重要数据以及hdisk3和hdisk4用于共享存储池。

    清单3.在VIOS A上
    $ cluster -create -clustername demo1 -repopvs hdisk2 -spname demosp -sppvs hdisk3 hdisk4 -hostname viosa Cluster demo1 has been created successfully. $

    一旦命令成功完成,我们就可以使用cluster命令的–list和-status标志来验证集群的状态及其属性。

    清单4.在VIOS A上
    $ cluster -list CLUSTER_NAME: demo1 CLUSTER_ID: 36618f14582411e2b6ea5cf3fceba66d $ $ cluster -status -clustername demo1 Cluster Name State demo1 OK Node Name MTM Partition Num State Pool State VIOSA 9117-MMC0206858A2 39 OK OK $

    上面在VIOS A上运行的代码告诉我们,存在一个名为demo1的群集,该群集创建了群集ID 36618f14582411e2b6ea5cf3fceba66d 。 该群集ID是所创建的每个群集的唯一标识符。 命令集群状态指示集群的状态,指示集群是否处于运行状态或其中是否有任何问题。 它还提供有关物理系统的有用信息(例如型号类型,序列号和托管VIOS的分区ID)。

    我们还可以使用诸如lscluster类的CAA命令来查看集群的状态,以确保其可运行。

    清单5.在VIOS A上
    $ lscluster -m Calling node query for all nodes Node query number of nodes examined: 1 Node name: VIOSA Cluster shorthand id for node: 1 uuid for node: 365731ea-5824-11e2-b6ea-5cf3fceba66d State of node: UP NODE_LOCAL Smoothed rtt to node: 0 Mean Deviation in network rtt to node: 0 Number of clusters node is a member in: 1 CLUSTER NAME TYPE SHID UUID demo1 local 36618f14-5824-11e2-b6ea-5cf3fceba66d Number of points_of_contact for node: 0 Point-of-contact interface & contact state n/a $

    到目前为止,我们仅验证集群,存储池在哪里? cluster命令既不会显示使用cluster命令创建的共享存储池,也不会显示lssp命令。

    要查看共享存储池,我们需要使用VIOS的老式lssp命令,该命令用于列出存储池,但带有特殊标志–clustername 。

    列出群集中可用的共享存储池的命令格式为lssp -clustername <NAME> 。

    清单6.在VIOS A上
    $ lspv                                       NAME        PVID                  VG         STATUS   hdisk0       00c858a2bde1979e            rootvg       active   hdisk1       00c858a2cbd45f6b            None             hdisk2       00c858a2cca2a81d            caavg_private   active   hdisk3       00c858a210d30593            None             hdisk4       00c858a210d32cfd            None             $ lssp                                       Pool        Size(mb)   Free(mb)  Alloc Size(mb)   BDs Type         rootvg        102272    77824        128    0 LVPOOL        $ lsvg                                       rootvg                                       caavg_private                                   $ lssp -clustername demo1 POOL_NAME: demosp POOL_SIZE: 102144 FREE_SPACE: 100391 TOTAL_LU_SIZE: 0 TOTAL_LUS: 0 POOL_TYPE: CLPOOL POOL_ID: 00000000097938230000000050E9B08C $

    在上面的输出中,您可以看到共享存储池的名称为demosp ,共享存储池的总大小为100 GB,可用空间为100391 MB。 您还可以看到指向LU的数量和LU的总大小为0的字段,因为到目前为止我们还没有创建任何LU。 共享存储池除了具有唯一的群集ID之外,还具有唯一的标识符。

    您可能还需要注意,与共享存储池一起创建了一个名为caavg_private的新卷组(VG)。 该VG特定于CAA,并且作为该VG一部分的磁盘存储重要数据,以保持群集的活动和运行。 您不应将此VG用于任何其他目的。

    逻辑单元

    如本文开头所述, 逻辑单元(LU)是文件支持的存储设备,可以作为虚拟SCSI(VSCSI)磁盘支持设备提供给VIOS客户端。

    现在,我们需要在共享存储池的顶部创建一个LU。 在VIOS A中,我们已经创建了vhost0连接,lparA通过该连接为其rootvg获取物理硬盘。

    清单7.在VIOS A上
    $ lsmap -all SVSA Physloc Client Partition ID --------------- -------------------------------------------- ------------------ vhost0 U9117.MMC.06858A2-V39-C3 0x0000000f VTD LPARA_RVG Status Available LUN 0x8100000000000000 Backing device hdisk1 Physloc U78C0.001.DBJ0379-P2-C3-T1-W500507680120D9ED-L1000000000000 Mirrored false $

    现在,所有设置使我们可以从共享存储池为客户端LPAR A创建LU。 LU也将与存储池顶部的LV或文件支持的备份设备相同。 我们用于创建该命令的命令与VIOS命令mkbdsp相同,但带有一些其他标志。

    清单8.在VIOS A上
    $ mkbdsp -clustername demo1 -sp demosp 20G -bd lparA_lu1 Lu Name:lparA_lu1 Lu Udid:2f4adc720f570eddac5dce00a142de89 $

    在上面的输出中,我首先使用了mkbdsp命令来创建LU。 我在demosp上创建了大小为20 GB的LU(尚未映射到任何客户端)。 要映射它,您需要再次使用mkbdsp命令,如清单9所示。

    清单9.在VIOS A上
    $ mkbdsp -clustername demo1 -sp demosp -bd lparA_lu1 -vadapter vhost0 -tn lparA_datavg Assigning file "lparA_lu1" as a backing device. VTD:lparA_datavg $

    请注意,由于LU已存在,因此在此未提及大小。 此命令会将LU lparA_lu1映射到具有VTD名称lparA_datavg的vhost0 。

    无需执行两个步骤(一个用于创建,一个用于分配给客户端),我们可以在一个命令中执行这两个操作,如以下输出所示。 在此之前,我将必须删除刚刚映射的LU lparA_lu1支持的VTD lparA_datavg 。 我们可以将常规rmvdev用于VTD,将rmbdsp用于LU。

    清单10.在VIOS A上
    $ rmvdev -vtd lparA_datavg lparA_datavg deleted $ rmbdsp -clustername demo1 -sp demosp -bd lparA_lu1 Logical unit lparA_lu1 with udid "a053cd56ca85e1e8c2d98d00f0ab0a0b" is removed. $

    现在,我将在一个命令中创建并映射LU,如以下输出所示。

    清单11.在VIOS A上
    $ mkbdsp -clustername demo1 -sp demosp 20G -bd lparA_lu1 -vadapter vhost0 -tn lparA_datavg Lu Name:lparA_lu1 Lu Udid:c0dfb007a9afe5f432b365fa9744ab0b Assigning file "lparA_lu1" as a backing device. VTD:lparA_datavg $

    在创建和映射LU时,客户端应能够将LU视为磁盘。 我们将一次验证VIOS A中的LU和映射,然后移至作为VIOS A客户端的客户端lparA。

    lssp命令可用于列出共享存储池中的后备设备。

    清单12. VIOS A上
    $ lssp -clustername demo1 -sp demosp -bd Lu Name Size(mb) ProvisionType Lu Udid lparA_lu1 20480 THIN c0dfb007a9afe5f432b365fa9744ab0b $

    清单13中的以下输出(以粗体显示)显示了lparA_lu1 LU映射到vhost0上的lparA客户端。

    清单13.在VIOS A上
    $ lsmap -all SVSA Physloc Client Partition ID --------------- -------------------------------------------- ------------------ vhost0 U9117.MMC.06858A2-V39-C3 0x0000000f VTD LPARA_RVG Status Available LUN 0x8100000000000000 Backing device hdisk1 Physloc U78C0.001.DBJ0379-P2-C3-T1-W500507680120D9ED-L1000000000000 Mirrored false VTD lparA_datavgStatus AvailableLUN 0x8200000000000000Backing device lparA_lu1.c0dfb007a9afe5f432b365fa9744ab0bPhyslocMirrored N/A $

    在客户机lparA上,我们已经有一个rootvg使用的物理卷。 现在,新磁盘应该可供客户端使用。 我们将尝试配置提供给客户端的LU。

    清单14.在lparA上
    lparA#hostname lparA lparA#lspv hdisk0 00c858a2cbd45f6b rootvg active lparA#cfgmgr lparA#lspv hdisk0 00c858a2cbd45f6b rootvg active hdisk1 none None # lscfg -vpl hdisk1 hdisk1 U9117.MMC.06858A2-V15-C2-T1-L8200000000000000 Virtual SCSI Disk Drive PLATFORM SPECIFIC Name: disk Node: disk Device Type: block #

    我们做到了! 现在,客户端可以将LU作为虚拟SCSI磁盘驱动器使用。

    快照和还原

    到目前为止,我们已经使用单个VIOS建立了一个共享存储池,创建了一个逻辑单元,并将LU分配给了lparA客户端。

    现在,让我们专注于客户端上的一些VG操作,以探索共享存储池的快照功能。 使用提供给lparA的新LU,我将在其之上创建一个卷组(datavgA)和一个名为/ datafsA的文件系统。

    清单15.在lparA上
    lparA#mkvg -y datavgA hdisk1 0516-1254 mkvg: Changing the PVID in the ODM. datavgA lparA#crfs -v jfs2 -m /datafsA -g datavgA -a size=2G File system created successfully. 2096884 kilobytes total disk space. New File System size is 4194304 lparA# lparA#mount /datafsA lparA#cd /datafsA lparA#touch file_lparA lparA#ls file_lparA lost+found lparA#

    现在,我们将创建两个文件。 一个名为before_snap的快照,之后我将对其进行快照,然后再命名一个after_snap 。 我们还将还原快照以进行演示。

    清单16.在lparA上
    lparA#touch before_snap lparA#ls before_snap file_lparA lost+found lparA#pwd /datafsA lparA#

    现在在VIOS A上拍摄快照。

    捕获快照的命令是:

    快照-clustername <集群名称> -spname <Shared_Pool_Name> -luudid <ID>-创建SNAP_NAME

    清单17.在VIOS A上
    $ snapshot -clustername demo1 -create lparA_lu1_SNAP1 -spname demosp -lu lparA_lu1 lparA_lu1_SNAP1 $ $ lssp -clustername demo1 -sp demosp -bd Lu Name Size(mb) ProvisionType Lu Udid lparA_lu1 20480 THIN 687f8420bbeee7a5264ce2c6e83d3e66 Snapshot lparA_lu1_SNAP1 $

    上面的代码清单中的lssp命令指示存在与lparA_lu1 LU相关联的名为lparA_lu1_SNAP1的快照。

    现在,我们将在lparA客户端中再创建一个名为after_snap的文件。

    清单18.在lparA上
    lparA#pwd /datafsA lparA#touch after_snap lparA#ls after_snap before_snap file_lparA lost+found lparA#cd lparA#umount /datafsA lparA#varyoffvg datavgA lparA#

    现在,我已经更改了带有数据的卷组。 始终建议使资源脱机,以防您要还原某些数据。 您应该根据自己的经验熟悉它。

    让我们尝试还原lparA_lu1_SNAP1快照,并查看客户端的卷组中存在哪些数据。

    清单19.在VIOS A上
    $ snapshot -clustername demo1 -rollback lparA_lu1_SNAP1 -spname demosp -lu lparA_lu1 $
    清单20.在lparA上
    lparA#varyonvg datavgA lparA#mount /datafsA Replaying log for /dev/fslv00. lparA#ls -l /datafsA total 0 -rw-r--r-- 1 root system 0 Jan 6 23:27 before_snap -rw-r--r-- 1 root system 0 Jan 6 23:24 file_lparA drwxr-xr-x 2 root system 256 Jan 6 23:23 lost+found lparA#

    恢复快照并将卷组重新联机后,将没有名为after_snap的文件。 这是因为文件是在快照之后创建的。 现在我们回滚了快照,该快照不存在。

    如果要删除快照,可以使用snapshot命令,如下面的清单所示。

    清单21.在VIOS A上
    $ snapshot -clustername demo1 -delete lparA_lu1_SNAP1 -spname demosp -lu lparA_lu1 $

    修改集群

    到目前为止,我们执行的操作仅在VIOS A和lparA上执行。 我们创建的集群也是单节点集群。 您可以问我,什么是单节点群集?如何? 嗯,这就是AIX的CAA功能所规定的。 集群也可以使用单个节点创建。

    让我们通过在另一个CEC上添加第二个VIOS实例VIOS B来扩展集群demo1 。

    清单22.在VIOS A上
    $ cluster -addnode -clustername demo1 -hostname viosb Partition VIOSB has been added to the demo1 cluster. $

    上面的命令已将VIOS B添加到集群中。 让我们使用cluster -status命令进行验证。

    清单23.在VIOS A上
    $ cluster -status -clustername demo1 Cluster Name State demo1 OK Node Name MTM Partition Num State Pool State VIOSA 9117-MMC0206858A2 39 OK OK VIOSB 9119-59502839095F 3 OK OK $

    如果看到上面的输出,则清楚地表明VIOS A和VIOS B托管在两个不同的物理系统上,现在它们都是VIOS集群demo1的一部分。

    现在,我们可以移至VIOS B并检查我们在VIOS A上所做的整个配置是否确实反映在VIOS B中。

    清单24.在VIOS B上
    $ hostname VIOSB $ cluster -list CLUSTER_NAME: demo1 CLUSTER_ID: 36618f14582411e2b6ea5cf3fceba66d $ lscluster -m Calling node query for all nodes Node query number of nodes examined: 2 Node name: VIOSA Cluster shorthand id for node: 1 uuid for node: 365731ea-5824-11e2-b6ea-5cf3fceba66d State of node: UP Smoothed rtt to node: 7 Mean Deviation in network rtt to node: 3 Number of clusters node is a member in: 1 CLUSTER NAME TYPE SHID UUID demo1 local 36618f14-5824-11e2-b6ea-5cf3fceba66d Number of points_of_contact for node: 2 Point-of-contact interface & contact state dpcom UP RESTRICTED en3 UP ------------------------------ Node name: VIOSB Cluster shorthand id for node: 2 uuid for node: a9d1aeee-582d-11e2-bda1-5cf3fceba66d State of node: UP NODE_LOCAL Smoothed rtt to node: 0 Mean Deviation in network rtt to node: 0 Number of clusters node is a member in: 1 CLUSTER NAME TYPE SHID UUID demo1 local 36618f14-5824-11e2-b6ea-5cf3fceba66d Number of points_of_contact for node: 0 Point-of-contact interface & contact state n/a $ $ lssp -clustername demo1 POOL_NAME: demosp POOL_SIZE: 102144 FREE_SPACE: 100353 TOTAL_LU_SIZE: 20480 TOTAL_LUS: 1 POOL_TYPE: CLPOOL POOL_ID: 00000000097938230000000050E9B08C $ lssp -clustername demo1 -sp demosp -bd Lu Name Size(mb) ProvisionType Lu Udid lparA_lu1 20480 THIN 687f8420bbeee7a5264ce2c6e83d3e66 Snapshot lparA_lu1_SNAP1 $

    我们已经从上面的命令输出中验证了VIOS B也已连接到群集,并且共享存储池demosp在VIOS B上可用。我尝试将LU lparA_lu1映射到连接到VIOS B的客户端lparB。

    清单25.在VIOS B上
    $ lsmap -all SVSA Physloc Client Partition ID --------------- -------------------------------------------- ------------------ vhost0 U9119.595.839095F-V3-C2 0x00000004 VTD lparB_RVG Status Available LUN 0x8100000000000000 Backing device hdisk1 Physloc U5791.001.99B0PA1-P2-C02-T1-W500507680110D9E3-L1000000000000 Mirrored false $ $ mkbdsp -clustername demo1 -sp demosp -bd lparA_lu1 -vadapter vhost0 -tn lparB_datavgA Assigning file "lparA_lu1" as a backing device. VTD:datavgA $ lsmap -all SVSA Physloc Client Partition ID --------------- -------------------------------------------- ------------------ vhost0 U9119.595.839095F-V3-C2 0x00000004 VTD lparB_RVG Status Available LUN 0x8100000000000000 Backing device hdisk1 Physloc U5791.001.99B0PA1-P2-C02-T1-W500507680110D9E3-L1000000000000 Mirrored false VTD lparB_datavgA Status Available LUN 0x8200000000000000 Backing device lparA_lu1.687f8420bbeee7a5264ce2c6e83d3e66 Physloc Mirrored N/A $

    是的,我能够同时将相同的LU成功映射到lparA和lparB。 现在,我可以登录到lparB,查看它是否对客户端操作系统可见该磁盘。

    清单26.在LPAR B上
    lparB#lspv hdisk0 00c9095f0f795c20 rootvg active hdisk1 00c858a210fdef5e None lparB#
    清单27.在LPAR A上
    lparA#lspv hdisk0 00c858a2cbd45f6b rootvg active hdisk1 00c858a210fdef5e datavgA active lparA#

    查看上面的输出,我可以确认我们能够同时为两个客户端共享相同的LU。 请注意,两个LPAR中的PVID都相似。 现在,您可以使用该功能访问两个客户端上的磁盘。 当心数据损坏并使用正确的技术来访问磁盘,无论是具有并发或增强型并发VG的逻辑卷管理器(LVM)。

    我们已经看到了如何扩展集群。 我们还将看到如何缩小集群,即从集群中删除VIOS节点。

    从群集中删除VIOS之前,请确保没有从要删除的特定VIOS向任何客户端提供LU。 在本例中,我们将从集群中删除VIOSB。

    清单28.在VIOS A上
    $ cluster -rmnode -clustername demo1 -hostname viosb PARTITION HAS MAPPINGS VIOSB Command did not complete. $

    糟糕! 命令失败。

    这是因为我们尚未删除通过VIOSB提供给lparB的lparA_lu1 LU的映射。 我们可以删除VTD映射并重新运行命令或使用-f标志。 我使用–f标志,因为我知道只有一个LU映射。 使用-f标志将从该特定群集中删除使用LU创建的所有VTD设备。 如果您有多个映射,则需要验证然后继续。

    清单29.在VIOS A上
    $ cluster -rmnode -f -clustername demo1 -hostname viosb Partition VIOSB has been removed from the demo1 cluster $

    如果需要将其他磁盘添加到共享存储池,则可以使用以下命令格式。 我没有额外的磁盘,所以我没有运行它。

    chsp -add -clustername <集群名称> -sp <ssp_name> hdiskn

    精简配置和粗配置

    我们还没有解决一件事,即精简配置 。 您无需在共享存储池上专门执行或设置任何操作即可使用精简配置 。 如果您将看到lssp命令的所有输出,则可以看到名为“ ProvisionType”的标头,并且在我们的整个演示过程中,所有LU都是精简配置的。 这是因为在共享存储池中,默认行为是精简配置。

    如果你要厚置备一个LU,你需要使用专门提到它-thick标志与mkbdsp命令。

    清单30.在VIOS A上
    $ lssp -clustername demo1 -sp demosp -bd Lu Name Size(mb) ProvisionType Lu Udid lparA_lu1 20480 THIN 687f8420bbeee7a5264ce2c6e83d3e66 $

    我们将尝试创建一个厚置备的 LU进行演示。

    清单31.在VIOS A上
    $ lssp -clustername demo1 -sp demosp -bd Lu Name Size(mb) ProvisionType Lu Udid lparA_lu1 20480 THIN 687f8420bbeee7a5264ce2c6e83d3e66 $ $ mkbdsp -clustername demo1 -sp demosp 50G -bd lparA_lu2 -vadapter vhost0 -tn lparA_datavg_D2 -thick Lu Name:lparA_lu2 Lu Udid:0ceaf03105d97f45ef4c595968f61cf7 Assigning file "lparA_lu2" as a backing device. VTD:lparA_datavg_D2 $ $ lssp -clustername demo1 -sp demosp -bd Lu Name Size(mb) ProvisionType Lu Udid lparA_lu1 20480 THIN 687f8420bbeee7a5264ce2c6e83d3e66 lparA_lu2 51200 THICK 0ceaf03105d97f45ef4c595968f61cf7 $ $ lsmap -all SVSA Physloc Client Partition ID --------------- -------------------------------------------- ------------------ vhost0 U9117.MMC.06858A2-V39-C3 0x0000000f VTD LPARA_RVG Status Available LUN 0x8100000000000000 Backing device hdisk1 Physloc U78C0.001.DBJ0379-P2-C3-T1-W500507680120D9ED-L1000000000000 Mirrored false VTD lparA_datavg Status Available LUN 0x8200000000000000 Backing device lparA_lu1.687f8420bbeee7a5264ce2c6e83d3e66 Physloc Mirrored N/A VTD lparA_datavg_D2 Status Available LUN 0x8300000000000000 Backing device lparA_lu2.0ceaf03105d97f45ef4c595968f61cf7 Physloc Mirrored N/A $

    现在,看看上面的输出。 我们创建的新LU是一个密集配置的LU,它也已映射到客户端lparA。

    精简配置可帮助您过度使用可用的存储资源。 例如,假设我们的共享存储池中有20 GB的LU和50 GB的LU。 现在假设我们有一个要求50 GB空间的客户端。 在正常的VG场景中,或者在共享存储池中使用LU的密集配置时,我们将无法满足此请求。 现在,由于我们对lparA_lu1使用了精简配置,因此可以使用客户端未使用的空间。 您还可以在下面的清单中看到lssp命令的输出,该清单表明共享存储池中有49 GB的可用空间。

    清单32.在VIOS A上
    $ lssp -clustername demo1 -sp demosp -bd Lu Name Size(mb) ProvisionType Lu Udid lparA_lu1 20480 THIN 687f8420bbeee7a5264ce2c6e83d3e66 lparA_lu2 51200 THICK 0ceaf03105d97f45ef4c595968f61cf7 $ $ lssp -clustername demo1 POOL_NAME: demosp POOL_SIZE: 102144 FREE_SPACE: 49150 TOTAL_LU_SIZE: 71680 TOTAL_LUS: 2 POOL_TYPE: CLPOOL POOL_ID: 00000000097938230000000050E9B08C $ mkbdsp -clustername demo1 -sp demosp 50G -bd testlu1 -thick Storage Pool subsystem operation, unable to create LU. Storage Pool subsystem operation, not enough space in the pool. $ mkbdsp -clustername demo1 -sp demosp 50G -bd testlu1 Lu Name:testlu1 Lu Udid:9e75b355e376eb81914df20bfb6c07f1 $

    我尝试创建50 GB的密集配置的LU,但由于空间不足而失败,而没有–thick标志的命令由于精简配置而成功。

    使用精简配置还存在过度使用存储资源的风险。 尽管这是虚拟化的优势,但是如果您无法控制使用限制,也会给您带来风险。 假设所有客户开始占用分配给他们的任何东西的情况。 在这种情况下,如果LU是精简配置的,那么最终将导致客户端LVM写错误的问题,因为在过量使用共享存储池时,没有可用的实际块来支持。

    为解决此问题,您可以使用共享存储池的警报功能,以在共享存储池的硬使用超过阈值限制的情况下通知系统管理员。

    清单33.在VIOS A上
    $ alert -set -clustername demo1 -spname demosp -type threshold -value 75      $ Pool freespace is 47 percent. $ alert -list -clustername demo1 -spname demosp -type threshold          PoolName:      demosp                              PoolID:       00000000097938230000000050E9B08C                 ThresholdPercent: 75                                $ alert -unset -clustername demo1 -spname demosp -type threshold          $

    在查看了清单31,其中两个LU映射到一个客户端之后,可能会想到一个问题,即当向一个客户端提供多个LU时如何同时拍摄快照。 在存储中,我们将其称为一致性组 ,其中同时为一组卷创建快照以保持一致性。 在共享存储池中也可以这样做。

    为了解释这一点,我创建了VIOS A上分配给lparA的两个LU的单个快照。

    清单34.在VIOS A上
    $ snapshot -clustername demo1 -create datavgA_snap -spname demosp -lu lparA_lu1 lparA_lu2 datavgA_snap $ $ lssp -clustername demo1 -sp demosp -bd Lu Name Size(mb) ProvisionType Lu Udid lparA_lu1 20480 THIN 687f8420bbeee7a5264ce2c6e83d3e66 Snapshot datavgA_snap lparA_lu2 51200 THICK 0ceaf03105d97f45ef4c595968f61cf7 Snapshot datavgA_snap $

    这样,我们可以通过同时创建快照来确保多个磁盘之间的一致性。

    提示

    无论是厚配置还是精简配置的逻辑单元,都无法调整大小。 您应该只将新的LU添加到客户端。 可能是将来的版本可能有一个选项,但是IBM支持人员确认不支持该选项。 在lspv输出中,仍可以将属于共享存储池的磁盘列为不属于任何VG的磁盘(无)。 (请参见清单6。) 您还可以将VIOS共享存储池与双VIOS设置一起使用,以为具有默认AIX MPIO的客户端提供冗余。 与提供冗余的传统文件支持或LV支持的存储相比,它是一个优势。 您只能将VSCSI与共享存储池一起使用,并且到目前为止无法使用NPIV。 不知道将来是否会支持。 您可以使用LU ID代替LU名称,因为在共享存储池中允许LU名称的重复。 我尚未完全测试警报功能,但是如果它可以正常运行,它将是一个不错的功能。

    翻译自: https://www.ibm.com/developerworks/aix/library/au-aix-vios-clustering/index.html

    相关资源:ibm vios 配置
    Processed: 0.021, SQL: 9