AHV -VDISK-部分-1:它们存储在哪里?


UserLevel 3
徽章 +4
  • Nutanix员工
  • 72个答复

在某些情况下,我们可能需要找到与Nutanix AHV群集上托管的虚拟机相关的磁盘。

Nutanix提供了分布式存储织物,该材料在“ N”节点数量上形成一个大型存储池。然后,我们为不同类型的工作负载创建容器,否则我们也可以轻松使用单个容器。

虚拟机是通过棱镜管理创建的,与VM相关的所有VDisks均托管在分布式存储池上。

在Nutanix AOS群集上,雅典卫城服务跨群集运行以管理虚拟机操作和配置。既数据和元数据分布在整个群集上,我们可以使用“雅典卫城”几乎所有CVM上的服务以检索在任何节点上运行的虚拟机信息。

为了与雅典卫城服务互动,Nutanix提供了“ACLI”。在Nutanix群集上进行虚拟机操作的一组强大命令。

ACLI在内部提供选项卡组合ACLIshell或我们也可以从普通的CVM提示下执行ACLI命令。

查找现有虚拟机附加的磁盘或磁盘:

我需要找到附在VM上的磁盘(100GB),称为“WSERVER2019”在Nutanix AOS上 - AHV群集。

查询虚拟机通过accolis cli <ACLI>,我们将使用“VM名称空间,为我们提供vm.get要么vm.disk_get查找虚拟机的磁盘信息。

由reTrieving虚拟机信息ACLI VM.Get

SSH到同一集群上的CVM。“ nutanix@cvm-ip”

来自CVM命令壳:
nutanix@ntnx-cvm:192.168.100.1:〜$ acli vm.get

多于ACLI VM.Get命令将为我们提供与虚拟机或更简单的术语相关的所有相关信息,它将输出虚拟机配置(CPU | RAM | DISKS | DISKS | Controllers |位置)

由于我们有兴趣在我们的集群上找到磁盘及其位置,因此我们可以做以下操作:

acli vm.get wserver2019包括_vmdisk_paths = 1

上面的命令将输出WSERVER2019的整个VM配置,我们将对此感兴趣disk_list' 部分。

注意,我们使用了“include_vmdisk_paths = 1为了使输出包括VDISK居住的实际路径。以下“ disk_list”将为我们提供所需的信息:

disk_list {
addr {
巴士:“ SCSI”
索引:0
}
Container_ID:3878917992
container_uuid:“ FCBA5C88-71BE-43CF-81C7-D6140C13AD26”
device_uuid:“ 6F861A2F-334A-414A-A930-6515707E712F”
naa_id:“ naa.6506b8d9bad6b961b1f8219274aaaacc9”
vmdisk_nfs_path:“ /ctr01/.acropolis/vmdisk/958A3C70-7D99-4706-BEE5-35CB70339CE0”
vmdisk_size:107374182400
vmdisk_uuid:“ 958A3C70-7D99-4706-BEE5-35CB7039CE0”
}

查看上面的输出,我们可以看到“vmdisk_nfs_path”指向一个称为“CTR01”和隐藏的目录称为“.ropolis”将所有VMDISK都保存在VMDisks文件夹中。

通过检索给定VM的虚拟磁盘信息:acli vm.disk_get

我们也可以落入“ACLI”提示并通过“如上所述)获取所需的信息(如上所述)vm.disk_get“ 命令:

nutanix@ntnx-cvm:192.168.1.1:〜$ acli
acli vm.disk_get 

在以下片段中,我们在内部ACLI外壳 /提示:

 vm.disk_get wserver2019包括_vmdisk_paths = true
IDE.1 {
addr {
巴士:“ IDE”
索引:1
}
CDROM:是的
device_uuid:“ 361B37EF-0681-45C8-9540-34CDA27E3C1E”
空:是的
NaA_ID:“ NAA.6506B8DB86621D2F872CA4F1C4F1126227C4”
}
scsi.0 {
addr {
巴士:“ SCSI”
索引:0
}
Container_ID:3878917992
container_uuid:“ FCBA5C88-71BE-43CF-81C7-D6140C13AD26”
device_uuid:“ 6F861A2F-334A-414A-A930-6515707E712F”
naa_id:“ naa.6506b8d9bad6b961b1f8219274aaaacc9”
vmdisk_nfs_path:“ /ctr01/.acropolis/vmdisk/958A3C70-7D99-4706-BEE5-35CB70339CE0”
vmdisk_size:107374182400
vmdisk_uuid:“ 958A3C70-7D99-4706-BEE5-35CB7039CE0”
}

这 ”vmdisk_uuid”此处是我们感兴趣的位置,我们以后可以使用该位置作为图像克隆磁盘,或者通过WINSCP连接到我们的群集来下载此磁盘 - 稍后会详细介绍。

要记住的事情:

  • ACLI可以直接从CVM执行
  • ACLI命令也可以通过输入ACLI壳 /提示来执行
  • 可以从AOS群集上的任何CVM执行ACLI
  • ACLI VM.Get(列出虚拟机信息)
  • acli vm.disk_get (检索VM的磁盘信息)

请继续关注下一部分- 我们将通过WINSCP找到并访问现有虚拟机的磁盘,以便将其下载到我们的工作站。


该主题已关闭以供评论

7个答复

第2部分的任何新闻,使用SCP吗?我现在可以真正使用它将文件复制到另一个集群。

UserLevel 3
徽章 +4

第2部分的任何新闻,使用SCP吗?我现在可以真正使用它将文件复制到另一个集群。

https://next.nutanix.com/server-virtualization-27/ahv-vdisk-part-part-part-2-accessing-and-downloading-vdisks-33672

嗨,埃利奥特 - 请找到上面的链接 - 如果您需要更多信息,请告诉我。

UserLevel 2
徽章 +5

嗨mutahir,

非常感谢您的全面文章。我想知道另一方面是否是找到特定VDISK属于哪个VM的简便方法。例如,最后一个仍在计划删除的容器上的VDisk。

亲切的问候,

彼得

UserLevel 3
徽章 +4

你好 @mmsw_de谢谢你的意见。

我想知道另一方面是否是找到特定VDISK属于哪个VM的简便方法。例如,最后一个仍在计划删除的容器上的VDisk。

就您上面的观点而言,我们必须考虑一些事情:

通常,我们可以列出VM上附加到VM的所有磁盘ACLI VM.Get要么acli vm.disk_get命令,这将列出给定VM附加的所有VDISK。

我们还可以通过VDISK的完整容器路径包括

acli vm.get  include_vmdisk_paths = 1

这将显示VM细节(CPU | RAM | NIC | VDISKS)以及连接到此VM的所有VDisk的容器路径。在输出中将找到以下字符串:

vmdisk_nfs_path:“/container-name/.acropolis/vmdisk/5b20b3f6-f83c-4e75-851b-3dc606c70379”

现在,如果删除vDisk是标记的,这最肯定的是,出于DR的目的,通过保护域是复制或快照周期的一部分。这是处理的自动地

对于是保护域的一部分的虚拟机磁盘,其快照位于下面:

/container-name/.snapshot/

如果你服用手动快照通过棱镜> vm>快照,快照存储在下面:

/Container-name/.acropolis/snapshot//vmdisk/

在这里,您将看到每个VDISK的快照(这些是您手动拍摄的快照),您可以在Prism> VM> Table View> VM快照>(Restore | delete | delete | clone)中管理它们。

vdisks可以是VM配置的一部分,或VM快照,保护域快照,图像或目录项目或卷组。

因此 - 各自的群集组件会自动处理任何VDISK的快照,并且不会影响您的运行VM。

我希望这会有所帮助,请告诉我,如果您想进一步澄清此问题或对此进行任何进一步的疑问。


br

UserLevel 2
徽章 +5

你好,

感谢您提供的全面信息。我一直在寻找另一种方式:我想删除一个给定的VDISK,我可以看到SFTP中的VDisk路径:

/someSuperflousContainer/.acropolis/vmdisk/806FDAD9-8684-41EA-A49C-FC956193BCFF

我宁愿不执行群集上所有VM的ACLI VMET,以查看我是否可以在任何地方发现此路径,因此我的问题是否有办法确定此VDISK属于哪个VM。

再见,

彼得

UserLevel 3
徽章 +4

我一直在寻找另一种方式:我想删除一个给定的VDISK,我可以看到SFTP中的VDisk路径:

/someSuperflousContainer/.acropolis/vmdisk/806FDAD9-8684-41EA-A49C-FC956193BCFF

我宁愿不执行群集上所有VM的ACLI VMET,以查看我是否可以在任何地方发现此路径,因此我的问题是否有办法确定此VDISK属于哪个VM。

再见,

彼得

你好 @mmsw_de

谢谢您的意见。

我知道你想找到给定VDisk的相应VM。

因此,为澄清,WINSCP方法仅用于上传或下载文件(如果需要)。不建议在容器上通过WINSCP连接时删除任何内容。这可能会引起问题雅典卫城服务。

在AHV上,您只能列出VM详细信息以找到相应的VM磁盘。((acli vm.get或acli vm.disk_get)。

br

UserLevel 3
徽章 +4

你好,

感谢您提供的全面信息。我一直在寻找另一种方式:我想删除一个给定的VDISK,我可以看到SFTP中的VDisk路径:

/someSuperflousContainer/.acropolis/vmdisk/806FDAD9-8684-41EA-A49C-FC956193BCFF

我宁愿不执行群集上所有VM的ACLI VMET,以查看我是否可以在任何地方发现此路径,因此我的问题是否有办法确定此VDISK属于哪个VM。

再见,

彼得

嗨,彼得,

这可能有助于您确定给定的“ vdisk uuid”的VM。

acli vm.get“*”包括_vmdisk_paths = 1 |grep -a 20  |egrep“名称| nfs_path”

希望这可以帮助

Learn more about our cookies.<\/a>","cookiepolicy.button":"Accept cookies","cookiepolicy.button.deny":"Deny all","cookiepolicy.link":"Cookie settings","cookiepolicy.modal.title":"Cookie settings","cookiepolicy.modal.content":"We use 3 different kinds of cookies. You can choose which cookies you want to accept. We need basic cookies to make this site work, therefore these are the minimum you can select. Learn more about our cookies.<\/a>","cookiepolicy.modal.level1":"Basic
Functional","cookiepolicy.modal.level2":"Normal
Functional + analytics","cookiepolicy.modal.level3":"Complete
Functional + analytics + social media + embedded videos"}}}">
Baidu