zoukankan      html  css  js  c++  java
  • Hyperv 如何使用WMI向虚拟计算机附加硬盘

    简单来说步骤如下:

    1.获取IDE控制器对象

      使用 "select * from Msvm_ResourceAllocationSettingData where ResourceSubType='Microsoft Emulated IDE Controller' and InstanceID like 'Microsoft:{Name Attribute of virtual machine}%' and Address = {0/1} /* Address is IDE Controller port */"

    语句获取指定虚拟机的指定IDE控制器端口

    2.向IDE控制器添加驱动器

      获取默认的硬盘驱动器对象,ResourceSubType 类型为Microsoft Synthetic Disk Drive

      设置它的父级为IDE控制器端口的Path

        使用Msvm_VirtualSystemManagementService.AddVirtualSystemResources 添加硬盘驱动器

    3.向硬盘驱动添加虚拟硬盘

          获取默认的虚拟硬盘对象,ResuorceSubType类型为Microsoft Virtual Hard Disk
      设置它的父级路径为 刚才创建的硬盘驱动器的路径

      设置它的Connection属性为已经存在的虚拟硬盘文件的绝对路径 Connection是字符串数组类型

      使用  Msvm_VirtualSystemManagementService.AddVirtualSystemResources 添加硬盘到驱动器

    下面是原文:

    Disk Management in Hyper-V
    Hyper-V supports three types of virtual hard disk.
    ·         Dynamically expanding: This type of VHD will be growing automatically when storing data.
    ·         Fixed Size: this type of VHD will be same size with you specified. (high performance, but cost more storage)
    ·         Differencing: this type of VHD inherits from its parent, but all the VHD operation will be recorded in this VHD just like write-protect. ( low performance, and when you do more operations, it will cost much storage. this is why snapshot can run out of all your disk, but in many situation. this type of VHD is very useful)
     
    It’s easy to create virtual hard disk through wizard in Hyper-V manager. Also you can create virtual hard disk using WMI.
    Msvm_ImageManagementService defines many methods to manage virtual hard disk.

    Even if you have created virtual hard disk, it still need to be attached into a virtual machine, thus virtual machine can use it.
    Steps of attaching a virtual hard disk
    1.     Create Disk Driver
    a.     Get the IDE port you want to attach Disk Driver
                            Using select * from Msvm_ResourceAllocationSettingData where ResourceSubType='Microsoft Emulated IDE Controller' and InstanceID like 'Microsoft:{Name Attribute of virtual machine}%' and Address = {0/1} /* Address is IDE Controller port */
    b.    Create Disk Driver
                            Gets default setting data of Microsoft Synthetic Disk Drive
                            Set its Parent Attribute to path of IDE you found in above step
                            Set its Address Attribute,(IDE port)
                            Call Msvm_VirtualSystemManagementService.AddVirtualSystemResources to Add Disk Driver
    2.     Attach Virtual hard disk into Disk Driver
                Gets default setting data of Microsoft Virtual Hard Disk
                Set its Parent Attribute to path of Disk Driver you created(outParams["NewResources"][0])
                Set its Connection Attribute to the Path of your Disk(C:\vhds\myvm.vhd)
                Call Msvm_VirtualSystemManagementService.AddVirtualSystemResources to Add Disk Driver

  • 相关阅读:
    python--HTTPClient接口测试踩坑
    python打印cookies获取cookie
    BeanShell使用json.jar包处理Json数据
    禁用缓存的过滤器Filter
    过滤器Filter(拦截jsp页面的跳转)案例:
    MVC模式:实现数据库中数据的增删改查功能
    JSTL.带标签体的标签,方法和例子
    javaBean的使用方法;
    JSTL,自定义一个标签的功能案例
    利用Session实现一次验证码
  • 原文地址:https://www.cnblogs.com/Qbit/p/1797867.html
Copyright © 2011-2022 走看看