您的位置:首页 > 移动开发 > IOS开发

VIOS磁盘映射关系确认

2015-10-01 07:26 393 查看
简介

本文通过一种简单方式,介绍如何识别 VIOS 服务器中存在的客户磁盘配置。

在大部分时间,UNIX® 管理员会对未知的 PowerVM 设置环境感到困惑。通常,系统管理员(他们为关键客户应用程序提供支持)没有机会从头开始设置环境。出于此原因,他们无法实现自己的名称模式、规则等等。

在本文中,您将了解如何开始使用反向映射环境,这些环境没有用于磁盘映射的名称模式。

忘记名称

我们将从忘记名称开始。为此,我们需要 LPAR 的编号来识别 VIOS 磁盘映射。

在您连接到 LPAR 中后,您可以发出 uname -L 命令来获得它的编号。我们想要的编号是 LPAR 名称之前的第一个字符序列。

清单 1. 获取 LPAR 编号

root@a25acdldm001g::/> uname -L

69 h3j5lp69

root@a25acdldm001g::/>

在上面的示例中,a25acdldm001g 服务器的 LPAR 编号为 69,它的 LPAR 名称为 h3j5lp69。现在我们已有了 LPAR 编号,我们可以继续执行磁盘映射。至于现在,惟一缺少的就是磁盘本身,所以让我们检查一下 rootvg 卷组,看看会找到什么。

发出 lsvg -p rootvg 命令,就可以看到哪些磁盘包含在 rootvg 卷组中。

清单 2. 列出 VG 磁盘

root@a25acdldm001g::/> lsvg -p rootvg

rootvg:

PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION

hdisk0 active 639 12 00..00..00..00..12

root@a25acdldm001g::/>

结果是 rootvg 中的一个磁盘,即 hdisk0。

回页首

收集初始信息

那么,hdisk0 从何而来?

这是一个难以回答的问题。但是,当使用 PowerVM 时,您需要知道如何剖析此问题。

lspath 命令可为我们提供最初的提示。

清单 3. 获取磁盘细节

root@a25acdldm001g::/> lspath -l hdisk0

Enabled hdisk0 vscsi0

Enabled hdisk0 vscsi1

root@a25acdldm001g::/>

基于上面的输出,我们可以看到 hdisk0 分别来自 vscsi0 和 vscsi1。问题是 vscsi0 或 vscsi1 都是虚拟设备,来自 VIOS 服务器。

我们还没有获得答案,仍然需要进一步分析。

对于不熟悉 PowerVM 技术的人,PowerVM 的一项优势就是通过 VIOS 服务器提供磁盘映射。利用 PowerVM 可以节省您的 HBA 使用率、提高可用性、提高 LPAR 中的灵活性、减少成本等。这正是这种配置得到广泛使用的原因。

我们需要掌握的下一个信息是虚拟 scsi 设备的插槽编号。

我们可通过发出 lscfg -l vscsiX 命令来获得该编号,该命令中的 X 是我们已拥有的编号(即 0 和 1)。

清单 4. 获取 vscsi 插槽编号

root@a25acdldm001g::/> lscfg -l vscsi0

vscsi0 U9117.MMA.10F2F1A-V69-C10-T1 Virtual SCSI Client Adapter

root@a25acdldm001g::/>

root@a25acdldm001g::/> lscfg -l vscsi1

vscsi1 U9117.MMA.10F2F1A-V69-C11-T1 Virtual SCSI Client Adapter

root@a25acdldm001g::/>

我们几乎快完成我们的操作了!我们几乎已经拥有映射磁盘所需的所有内容。

LPAR 编号 (69)、vscsi 插槽编号 (C10 和 C11),现在仅仅缺少该架构所连接的 HMC。

如果您没有在某个地方记录此信息,不要担心,您可以运行 lsrsrc 命令来获取它,如下所示:

清单 5. 获取 HMC 细节

root@a25acdldm001g::/> lsrsrc IBM.ManagementServer

Resource Persistent Attributes for IBM.ManagementServer

resource 1:

Name = "10.1.120.24"

Hostname = "10.1.120.24"

ManagerType = "HMC"

LocalHostname = "10.1.82.69"

ClusterTM = "9078-160"

ClusterSNum = ""

ActivePeerDomain = ""

NodeNameList = {"a25acdldm001g"}

root@a25acdldm001g::/>

现在我们拥有了完成映射所需的所有信息。就这么简单!

回页首

hdisk0 从何而来?

打开到 HMC 的一个新会话,让我们确定 hdisk 从哪个 VIOS 服务器执行映射。

以 hscroot 用户身份连接,您可以发出 lshwres 命令来获得此信息。

清单 6. VIOS 和插槽编号

hscroot@h3j5hmc1:~> lshwres -m h3j5 -r virtualio --rsubtype scsi --level lpar --filter \

"lpar_ids=69" -F slot_num,remote_lpar_id,remote_slot_num

10,3,69

11,4,69

hscroot@h3j5hmc1:~>

您应该问自己,粗体的数字是何含义。

10、3、69(10 是编号为 69 的 LPAR 上的 vscsi 插槽编号;3 是远程 ID(VIOS 编号);69 是编号为 3 的 VIOS 上的插槽编号)

11、4、69(11 是编号为 69 的 LPAR 上的 vscsi 插槽编号;4 是远程 ID(VIOS 编号);69 是编号为 4 的 VIOS 上的插槽编号)

备注:如果您的 HMC 管理着多个主机,并且您不确定自己的 LPAR 在哪个主机上运行,您可以发出以下命令来获取其主机名称。在我的用例中,我知道主机名称为 h3j5。

如果要登录到您的 LPAR,您可以发出 lsattr 命令来获取其主机序列号,如下所示:

lsattr -El sys0 -a systemid

获取架构的序列号之后,您可以返回到 HMC 并搜索它的名称,如下所示:

lssyscfg -r sys -F name,serial_num|sed '/your serial number goes in here/!d'

现在,我们只需要访问上面提及的各个 remote_lpar_ids(即 VIOS 服务器),检查哪个虚拟主机分配给了具体的插槽,然后映射它的磁盘。

由于我们已拥有远程 LPAR ID 编号(即:VIOS 服务器),所以我们甚至不需要关心它的名称。例如:

清单 7. 进入 VIOS 服务器

hscroot@h3j5hmc1:~> mkvterm -m h3j5 --id 3

Open in progress

Open Completed.

IBM Virtual I/O Server

login: padmin

padmin's Password:

1 unsuccessful login attempt since last login.

Last unsuccessful login: Thu May 20 19:43:36 EDT 2010 on /dev/vty0

Last login: Thu May 20 11:41:58 EDT 2010 on /dev/vty0

h3j5vioss1$

因为您已登录到 VIOS 服务器上,所以您需要发出 oem_setup_env 命令,以便进入 VIOS 服务器模式(此命令用于从 VIOS 模式切换到 AIX 模式)。

h3j5vioss1$ oem_setup_env

h3j5vioss1#

清单 8. 发现哪个虚拟主机是针对插槽编号 69 的。

h3j5vioss1# lsslot -c slot|grep "C69 "

U9117.MMA.10F2F1A-V3-C69 Virtual I/O Slot vhost69

h3j5vioss1# ^d (返回到 VIO 模式)

如果您很幸运,插槽或虚拟主机会具有相同的编号,但是,它们有可能完全不同。

因为我们已确定了分配给插槽 69 的虚拟主机,所以我们已拥有检查哪个磁盘映射到我们编号为 69 的 LPAR 所需的所有信息。

h3j5vioss1$ lsmap -vadapter vhost69

SVSA Physloc Client Partition ID

--------------- -------------------------------------------- ------------------

vhost69 U9117.MMA.10F2F1A-V3-C69 0x00000045

VTD 69_368

Status Available

LUN 0x8100000000000000

Backing device hdisk121

Physloc U789D.001.DQD79BX-P1-C1-T1-W5005076801300F0A-L76000000000000

VTD 69_369

Status Available

LUN 0x8200000000000000

Backing device hdisk122

Physloc U789D.001.DQD79BX-P1-C1-T1-W5005076801300F0A-L77000000000000

h3j5vioss1$ oem_setup_env ( going back to AIX mode )

如上所示,hdisk121 和 hdisk122 都从 VIOS 服务器 3 映射到我们的 LPAR。

现在,让我们看看它们的冗余在多个路径中的情况。

清单 9. 检查磁盘冗余

h3j5vioss1# lspath -l hdisk121

Enabled hdisk121 fscsi0

Enabled hdisk121 fscsi0

Enabled hdisk121 fscsi1

Enabled hdisk121 fscsi1

Enabled hdisk121 fscsi2

Enabled hdisk121 fscsi2

Enabled hdisk121 fscsi3

Enabled hdisk121 fscsi3

h3j5vioss1# lspath -l hdisk122

Enabled hdisk122 fscsi0

Enabled hdisk122 fscsi0

Enabled hdisk122 fscsi1

Enabled hdisk122 fscsi1

Enabled hdisk122 fscsi2

Enabled hdisk122 fscsi2

Enabled hdisk122 fscsi3

Enabled hdisk122 fscsi3

h3j5vioss1#

在上述信息中,我们可以假设 SAN 人员已为 VIOS 服务器 3 中的所有 4 个 HBA(即从 fcs0 到 fcs3) 映射了两个 LUN。

获得最终的磁盘分配中各自的 WWPN 的最快方式之一是使用以下命令:

h3j5vioss1# for i in 0 1 2 3;do echo "fcs${i} -> $(lscfg -vl fcs${i}|sed '/Network/!d')" \

;done

fcs0 -> Network Address.............10000000C9881EA8

fcs1 -> Network Address.............10000000C9881EA9

fcs2 -> Network Address.............10000000C9881EB4

fcs3 -> Network Address.............10000000C9881EB5

h3j5vioss1#

回页首

最后说明

在 VIOS 服务器 3 中执行的所有步骤也都应该在 VIOS 服务器 4 中执行。我们需要发现 VIOS 服务器 4 中的哪个虚拟主机将磁盘映射到了 LPAR 69,然后检查它自己的冗余。

与其在 清单 3 中简单地获取磁盘细节,不如在 lspath 命令中指定其他选项,获取更多有用信息来帮助我们识别 VIOS 服务器中通过虚拟主机映射到 LPAR 的磁盘的真实名称。

那么,我们如何确切地知道 LPAR 69 中的 hdisk0 是否就是 VIOS 服务器 3 中的 hdisk121?

具体方法如下:

root@a25acdldm001g::/> lspath -l hdisk0 -F name,parent,connection,status

hdisk0,vscsi0,810000000000,Enabled

hdisk0,vscsi1,810000000000,Enabled

root@a25acdldm001g::/>

通过在 lspath 命令输出中检查连接值,我们可以查看它与 lsmap 命令中所示的值是否准确匹配。例如:

h3j5vioss1$ lsmap -vadapter vhost69

SVSA Physloc Client Partition ID

--------------- -------------------------------------------- ------------------

vhost69 U9117.MMA.10F2F1A-V3-C69 0x00000045

VTD 69_368

Status Available

LUN 0x8100000000000000

Backing device hdisk121

Physloc U789D.001.DQD79BX-P1-C1-T1-W5005076801300F0A-L76000000000000

VTD 69_369

Status Available

LUN 0x8200000000000000

Backing device hdisk122

Physloc U789D.001.DQD79BX-P1-C1-T1-W5005076801300F0A-L77000000000000

h3j5vioss1$

回页首

结束语

最后,我们能够理解此环境。编号为 69 的 LPAR 在其 rootvg 上有一个磁盘,该磁盘是通过两个 VSCSI 实现的。从 HMC,我们发现每个 VSCSI 来自不同的 VIOS 服务器(即编号为 3 的 VIOS 和编号为 4 的 VIOS )。

此外,我们发现,编号为 69 的 LPAR 上的 hdisk0 为编号为 3 的 VIOS 服务器上的 hdisk121,我们还看到,它们映射到 VIOS 服务器上的所有 4 个 HBA (fcs[0-3])。

如果您不理解我们在本文中介绍的所有信息,请再阅读一次,重点关注粗体语句和数字。这些可以帮助您强化此映射概念。

以下我们所介绍内容的简单总结:

LPAR

获取 LPAR 编号。

获取磁盘编号。

基于 vscsi 设备获取插槽编号。

HMC

获取 VIOS 插槽编号。

获取 VIOS 编号。

VIOS

使用 VIOS 插槽编号获取虚拟主机。

显示映射到您发现的虚拟主机的磁盘。

基于连接编号来确定正确的磁盘。

检查磁盘路径。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: