IBM Systems Director VMControl 的多磁盘管理: 第 3 部分

使用 IBM Systems Director VMControl 的多磁盘管理部署工作负载

IBM® Systems Director 是一个用于管理物理和虚拟系统的平台管理解决方案。IBM Systems Director 为系统管理人员提供单一虚拟管理平台,帮助降低 IT 管理的复杂性和成本。IBM Systems Director VMControl™ 是一种安装在 IBM Systems Director 顶部并提供虚拟化功能的高级插件。该教程介绍了多磁盘支持,还介绍了如何使用 VMControl Representational State Transfer (REST) 应用程序界面 (API) 和命令行界面 (CLI) 部署工作负载。

Piyush Jain, 高级软件工程师, IBM

http://www.ibm.com/developerworks/i/p-pjain.jpgPiyush Jain 是 IBM 的一名高级软件工程师,目前主要致力于 IBM Systems Director 中的 VMControl,这是 IBM 产品组合中的一个重要产品。他有 5 年的从业经验,从印度卡纳塔克邦的 IET Alwar 获得了信息技术工程学士学位。



2013 年 12 月 02 日

开始之前

了解您期望从这个教程中学到什么,以及如何更好地掌握这些内容。

关于本系列

IBM Systems Director VMControl 高级管理器简化了多个虚拟化技术和硬件平台的虚拟化环境管理。VMControl 是一个领先的多平台虚拟化管理解决方案,包含在 IBM Systems Director Editions 中。VMControl 支持三种类型的接口(GUI、CLI 和 REST API)。本系列包含以下主题:

  • 虚拟服务器的多磁盘管理:该教程将解决终端用户在执行与虚拟服务器多磁盘管理相关的操作时遇到的问题。对用户定制的表格参数不熟悉的终端 用户很难向虚拟服务器添加磁盘或从中删除磁盘。
  • 创建虚拟设备和版本控制的多磁盘管理:终端用户在执行多磁盘管理来创建虚拟设备时会遇到一些问题,在执行捕获的同时进行版本控制也会遇到一些问题,该教程将解决这些问题。对用户定制表格参数不熟悉的终端用户很难执行多磁盘捕获,在捕获时也很难对虚拟设备进行版本控制。
  • 部署工作负载的多磁盘管理:该教程将解决终端用户在执行多磁盘管理来部署工作负载时遇到的问题。对用户定制表格参数不熟悉的终端用户很难在部署期间进行磁盘修改和映射。

本系列将通过 REST 和 CLI 帮助所有的 VMControl 用户了解 VMControl 多磁盘管理功能。

关于本教程

部署工作负载的多磁盘管理包含使用 REST API 和 CLI 的以下主要操作:

  • 部署到系统池时的多磁盘支持
  • 部署到主机时的多磁盘支持

这是一个用 IBM Systems Director VMControl 部署工作负载的多磁盘管理流程图。

图 1. 工作负载部署过程中的多磁盘管理
虚拟服务器的多磁盘管理

目的

本教程的主要目的是帮助用户了解工作负载的多磁盘功能部署。本文能够帮助用户了解一些工作部署操作的多磁盘支持的实时示例。

先决条件

运行前,您应将 IBM Systems Director V6.x.x 安装到您的系统中。该教程假设您对 IBM Systems Director 非常熟悉,还假设您比较了解 JavaScript Object Notation (JSON),知道如何使用您最喜欢的 HTTP 客户端进行 HTTP GET、POST、PUT 和 DELETE 调用,同时也相当了解 VMControl 的 smcli 命令。该教程还假设您非常了解 VMControl 的工作负载和虚拟设备资源。

系统要求

您的系统应具有下列组件:

  • IBM Systems Director 的安装及配置副本
  • 激活的 IBM Systems Director VMControl 高级管理器
  • 运行远程请求的 HTTP Client
  • 运行 CLI 命令的 Putty

通过 REST API 部署到系统池的多磁盘支持

列出未指定目标而部署的定制

根据 Open Virtualization Format (OVF) 描述符列出该虚拟设备的默认定制属性。这是一个辅助方法,在用户想要检索部署定制却不知道目标时使用。

  • URL
    • https://myserver:port/ibm/director/rest/VMControl/virtualAppliances/{virtualApplianceOID}/customization
  • HTTP 方法
    • GET
  • 样例请求

    在不知道目标的情况下,通过惟一 ID 152498 获取为虚拟设备提供的虚拟化属性:

    GET https://myserver:port/ibm/director/rest/VMControl/virtualAppliances/152498/customization

    清单 1. 样例响应表示

列出将服务器系统池作为目标而部署的定制:

定制参数是独特的、特定于平台的属性,允许用户自定义用户将要执行的操作。定制参数提供了许多不同类型,但都以类似的方式指出。通过使用虚拟设备和服务器系统池的对象标示符 (OID),可向下面指定的 URL 发出 GET 请求。结果是一系列可用于部署虚拟设备的定制属性。

部署到服务器系统池时,VMControl 首先挑选服务器系统池中的理想主机作为部署目标。该过程使用虚拟设备中的默认值来确定能够最有效地支持部署任务的主机。使用 virtualAppliances/{virtualApplianceOID}/targets/{targetOIDs}/customization 参考资料中描述的查询参数会影响该过程。

storagemapping 表参数是针对服务器系统池而部署的,指定了诸如磁盘容量和存储连接类型之类的存储信息。放置服务将使用此信息选择符合特定存储要求的主机。从 storagemapping 表中可以检索该查询参数的有效选项,该表通过清单 1 所示的获取虚拟设备定制资源 返回。

用户不需要指定存储来映射磁盘,因为所有磁盘都是从与系统池相关的存储池中新创建的。

下面示例展示了典型 IBM Power Systems™ 环境中的定制参数。其他平台 [比如基于内核的虚拟机 (KVM),IBM z/VM® 等] 的定制参数有所不同。

  • URL
    • https://myserver:port/ibm/director/rest/VMControl/virtualAppliances/{virtualApplianceOID}/targets/{targetsOID}/customization
  • HTTP 方法
    • GET
  • 样例请求

    使用 storagemapping 表参数,通过惟一 ID 152498 获取虚拟设备提供的虚拟化属性,通过惟一 ID 316388 获取服务器系统池:

    POST https://myserver:port/ibm/director/rest/VMControl/virtualAppliances/152498/targets/316388/customization?storagemapping[1]=disksize:10240;storageconnection:NPIV,storagemapping[2]=disksize:5120;storageconnection:NPIV

    清单 2 展示了部署到服务器系统池的定制属性。

    清单 2. 样例响应表示

部署到一个服务器系统池中:

通过使用来自之前的请求的 deploymentplanid,将虚拟设备部署到服务器系统池,该请求将创建一个工作负载。

  • URL
    • https://myserver:port/ibm/director/rest/VMControl/workloads
  • HTTP 方法
    • POST
  • 样例请求

    将惟一 ID 为 152498 的虚拟设备部署到惟一 ID 为 316388 的服务器系统池:

    POST https://myserver:port/ibm/director/rest/VMControl/workloads

    清单 3 展示了样例 JSON,该样例使用来自之前请求的 deploymentplanid 部署虚拟设备。

    清单 3. 样例请求表示
    {
        "workload": {
            "virtualAppliance": 152498,
            "target": 316388,
            "properties": [
                {
                    "name": "deploymentplanid",
                    "value": "-7737393973484108783_00"
                },
                {
                    "name": "virtualnetworks[Discovered-1014-0]",
                    "value": "hostVnet:Discovered/2206/0/42990"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.system.networking.
    				domainname",
                    "value": "pokprv.stglabs.ibm.com"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.system.networking.
    				dnsIPaddresses",
                    "value": "10.20.0.2"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.system.networking.
    				hostname",
                    "value": "ip10-32-41-93"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.adapter.networking.
    				ipv4addresses.6",
                    "value": "10.32.41.93"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.system.networking.
    				ipv4defaultgateway",
                    "value": "10.32.41.1"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.adapter.networking.
    				ipv4netmasks.6",
                    "value": "255.255.255.0"
                }
            ]
        }
    }

    清单 4 展示了运行上述请求后的样例响应。

    清单 4. 样例响应
    HTTP/1.1 201 OK
    Cache-Control: no-store
    Set-Cookie: JSESSIONID_ibm_console_80=0000btq85Q1wmv6RhWcipLAaP8F;Path=/;
    						Secure; HTTPOnly
    Expires: Thu, 01 Dec 1994 16:00:00 GMT
    Content-Type: application/octet-stream; charset=UTF-8
    Content-Length: 46
    Date: Tue, 10 Feb 2013 09:19:49 GMT
    Location: https://1.2.3.4:8422/ibm/director/rest/VMControl/workloads/19000
    Accept-Ranges: bytes
    Server: Noelios-Restlet-Engine/1.1.4
    Content-Language: en-US
    
    DNZEMW350I Workload [19000] creation started

通过 REST API 部署到主机的多磁盘支持

列出使用目标主机的定制:

定制参数是独特的、特定于平台的属性,允许用户自定义用户将要执行的活动。定制参数提供了许多不同类型,但都以类似的方式指定。使用虚拟设备和主机的 OID 将 GET 请求发送到下列指定的 URL。结果将是一系列可用于部署虚拟设备的定制属性。

这些定制参数包括完成部署到主机请求所需的所有信息。对于典型的部署,这里提供了处理器、内存、网络和存储器的定制参数。部署定制参数将来自主机的信息和来自 OVE 描述符文件的属性结合起来,主机是为部署操作而选择的,描述符文件来自虚拟设备。

下面的示例展示了典型 Power Systems 环境中的部署定制参数。其他平台(比如 KVM、z/VM 等)的定制参将有所不同。

注意:要了解更多关于定制参数的信息,请参阅 IBM Systems Director 6.3.x SDK 信息中心的 VMControl 编程部分。

  • URL
    • https://myserver:port/ibm/director/rest/VMControl/virtualAppliances/{virtualApplianceOID}/targets/{targetsOID}/customization
  • HTTP 方法
    • GET
  • 样例请求

    使用惟一 ID 29832 获取部署到主机的虚拟化属性:

    GET https://myserver:port/ibm/director/rest/VMControl/virtualAppliances/152498/targets/29832/customization

    清单 5. 样例响应表示

部署到主机:

通过使用来自之前请求的 storagemapping 参数表来部署虚拟设备,该请求将创建一个工作负载。

  • URL
    • https://myserver:port/ibm/director/rest/VMControl/workloads
  • HTTP 方法
    • POST
  • 样例请求

    将惟一 ID 为 152498 的虚拟设备部署到惟一 ID 为 29832 的主机:

    POST https://myserver:port/ibm/director/rest/VMControl/workloads

    清单 6 展示了样例 JSON,该样例使用 storagemapping 参数表将虚拟设备部署到主机。

    清单 6. 样例请求表示
    {
        "workload": {
            "virtualAppliance": 152498,
            "target": 29832,
            "properties": [
                {
                    "name": "storagemapping",
                    "value": "[1]=assignedStorage:poolstorages[35597];disksize:10240;
    						storageconnection:NPIV"
                },
                {
                    "name": "storagemapping",
                    "value": "[2]=assignedStorage:existingdisks[36017];disksize:5120;
    						storageconnection:NPIV"
                },
                {
                    "name": "virtualnetworks[Discovered-1014-0]",
                    "value": "hostVnet:Discovered/2206/0/42990"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.system.networking.
    						domainname",
                    "value": "pokprv.stglabs.ibm.com"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.system.networking.
    						dnsIPaddresses",
                    "value": "10.20.0.2"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.system.networking.
    						hostname",
                    "value": "ip10-32-41-93"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.adapter.networking.
    						ipv4addresses.6",
                    "value": "10.32.41.93"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.system.networking.
    						ipv4defaultgateway",
                    "value": "10.32.41.1"
                },
                {
                    "name": "product.vs0.com.ibm.ovf.vmcontrol.adapter.networking.
    						ipv4netmasks.6",
                    "value": "255.255.255.0"
                }
            ]
        }
    }

    清单 7 展示了上述请求运行后的样例响应。

    清单 7. 样例响应
    HTTP/1.1 201 OK
    Cache-Control: no-store
    Set-Cookie: JSESSIONID_ibm_console_80=0000btq85Q1wmv6RhWcipLAaP8F;Path=/;
    						Secure; HTTPOnly
    Expires: Thu, 01 Dec 1994 16:00:00 GMT
    Content-Type: application/octet-stream; charset=UTF-8
    Content-Length: 46
    Date: Tue, 10 Feb 2013 09:29:48 GMT
    Location: https://1.2.3.4:8422/ibm/director/rest/VMControl/workloads/19002
    Accept-Ranges: bytes
    Server: Noelios-Restlet-Engine/1.1.4
    Content-Language: en-US
    
    DNZEMW350I Workload [19002] creation started

通过 CLI 部署到系统池的多磁盘支持

列出未指定目标而部署的定制:

根据虚拟设备的 OVF 描述符使用 lsvacustomization smcli 命令列出其默认定制属性。这是一个帮助函数方法,在用户想要检索一个部署定制而不确定目标时使用。

清单 8. 样例响应表示
USERID@c612n18:~> smcli lsvacustomization -v -V 152498
Mon Feb 11 06:13:03 EST 2013  lsvacustomization Operation started.
cpushared
        Value:  1
        Increment:      0
        IncrementType:  LINEAR
        Description:

cpudedicated
        Value:  1
        Increment:      0
        IncrementType:  LINEAR
        Description:

cpumode
        Value:  SHARED
        Options:        SHARED,
                        DEDICATED
        Description:

memsize
        Value:  512
        Increment:      0
        IncrementType:  LINEAR
        Description:

memmax
        Value:  512
        Increment:      0
        IncrementType:  LINEAR
        Description:

memmin
        Value:  512
        Increment:      0
        IncrementType:  LINEAR
        Description:

existingdisks
        Min:    1
        Max:    0
        Description:

storagemapping
        Min:    0
        Max:    2
        Description:    The mapping table is the mapping of the disks required by the 
	virtual server created by the  deployed virtual appliance to a storage pool 
	(a row in the poolstorages table) from which the disk storage for the  new 
	virtual server will be allocated, or to an existing volume (a row in the 
	existingdisks table) that will be used  to provide the disk storage for the new 
	virtual server. If the virtual server requires multiple disks, then each  disk 
	must be mapped to a storage pool table row or to a unique existing volume table
	row using the mapping table.
        Changeable Columns:
                Column Name*    CLI Attribute
                Size (MB)       disksize
                Assigned Storage        assignedStorage
                Storage Connection      storageconnection

        Options:
        Key, Disk Name, Size (MB)*, Image, Assigned Storage*, Description, Storage 
                                                                           Connection*
        [1]     disk1   10240   True    Not assigned    Disk alpha      Not assigned
        [2]     disk2   5120    True    Not assigned    Disk beta       Not assigned

Mon Feb 11 06:13:04 EST 2013  lsvacustomization Operation took 0 seconds.
USERID@c612n18:~>

列出将服务器池作为目标而部署的定制:

定制参数是独特的、特定于平台的属性,允许用户自定义用户将要执行的操作。定制参数提供了许多不同的类型,但都以类似的方式指定。通过使用 lscustomization smcli 命令以及虚拟设备和主机的 OID,可提供一系列可用于部署虚拟设备的定制属性。

部署到服务器系统池时,VMControl 首先选择服务器系统池中的理想主机作为部署目标。该过程使用虚拟设备中的默认值来确定能够最有效地支持部署任务的主机。使用 virtualAppliances/{virtualApplianceOID}/targets/{targetOIDs}/customization 参考资料中描述的查询参数会影响此过程。

服务器系统池部署的 storagemapping 表参数指定存储信息,比如磁盘容量和存储连接类型。放置服务将使用该信息选择符合特定存储要求的主机。从 storagemapping 表中可以检索该查询参数的有效选项,该表通过清单 8 所示的获取虚拟设备定制资源来返回。

用户不需要指定存储来映射磁盘,因为所有磁盘都是从与系统池相关的存储池中新创建的。

下面示例展示了典型 IBM Power Systems 环境中的定制参数。其他平台(比如 KVM、IBM z/VM 等) 的定制参数有所不同。

清单 9. 样例响应表示

清单 10 展示了部署到服务器池 的实际操作,而且该操作使用了来自前面的请求的 deploymentplanid

清单 10. 样例响应表示
USERID@c612n18:~>smcli deployva -v -g 316388 -V 152498 -m -7736370255624263696_01 -a 
deploy_new -A "virtualnetworks[Discovered-1014-0]=hostVnet:Discovered/2206/0/42990,
product.vs0.com.ibm.ovf.vmcontrol.system.networking.domainname=pokprv.stglabs.ibm.com,
product.vs0.com.ibm.ovf.vmcontrol.system.networking.dnsIPaddresses=10.20.0.2,
product.vs0.com.ibm.ovf.vmcontrol.system.networking.hostname=ip10-32-41-93,
product.vs0.com.ibm.ovf.vmcontrol.adapter.networking.ipv4addresses.6=10.32.41.93,
product.vs0.com.ibm.ovf.vmcontrol.system.networking.ipv4defaultgateway=10.32.41.1,
product.vs0.com.ibm.ovf.vmcontrol.adapter.networking.ipv4netmasks.6=255.255.255.0"
Mon Feb 11 11:54:06 EST 2013  deployva Operation started.
Attempt to get the default customization data for deploy_new.
Attempt to get the deploy_new customization data.
Update collection with user entered attributes.
Attempt to validate the deploy request for 152498.
Attempt to deploy new.
Workload VA1_1765 was created.
Virtual server, ip10-32-41-93, added to workload, VA1_1765.
Workload, VA1_1765, is started.
Mon Feb 11 11:58:06 EST 2013  deployva Operation took 240 seconds.
USERID@c612n18:~>

通过 CLI 部署到主机的多磁盘支持

列出将主机作为目标而部署的定制:

定制参数是独特的、特定于平台的属性,允许用户自定义用户将要执行的操作。定制参数提供许多不同的类型,但都以类似的方式指定。使用上一步的 OID 将 GET 请求发送到下面指定的 URL。结果将是一系列可用于部署虚拟设备的定制属性。

这些定制参数包括完成部署到主机请求所需的所有信息。对于典型的部署,这里提供了处理器、内存、网络和存储器的定制参数。部署的定制参数将来自主机的信息和来自 OVE 描述符文件的属性结合起来,主机是为部署操作而选择的,描述符文件来自虚拟设备。

下面的示例展示了典型 Power Systems 环境中的部署定制参数。其他平台(比如 KVM、z/VM 等) 的定制参数将有所不同。

清单 11. 样例响应表示

清单 12 展示了使用 storagemapping 表参数部署到主机的实际操作。使用 deployva smcli 命令执行部署请求。我们使用 storagemapping 参数表下的 poolstorages 分配存储。我们还设置了请求中 disksizestorageconnection 的值。

清单 12. 样例响应表示
USERID@c612n18:~>smcli deployva -v -s 29832 -V 152498 -a deploy_new -A "storagemapping[1]
=assignedStorage:poolstorages[35597];disksize:10240;storageconnection:NPIV,
storagemapping[2]=assignedStorage:existingdisks[36017];disksize:5120;storageconnection:
NPIV,virtualnetworks[Discovered-1014-0]=hostVnet:Discovered/2206/0/42990,
product.vs0.com.ibm.ovf.vmcontrol.system.networking.domainname=pokprv.stglabs.ibm.com,
product.vs0.com.ibm.ovf.vmcontrol.system.networking.dnsIPaddresses=10.20.0.2,
product.vs0.com.ibm.ovf.vmcontrol.system.networking.hostname=ip10-32-41-93,
product.vs0.com.ibm.ovf.vmcontrol.adapter.networking.ipv4addresses.6=10.32.41.93,
product.vs0.com.ibm.ovf.vmcontrol.system.networking.ipv4defaultgateway=10.32.41.1,
product.vs0.com.ibm.ovf.vmcontrol.adapter.networking.ipv4netmasks.6=255.255.255.0"
Mon Feb 11 12:45:09 EST 2013  deployva Operation started.
Attempt to get the default customization data for deploy_new.
Attempt to get the deploy_new customization data.
Update collection with user entered attributes.
Attempt to validate the deploy request for 152498.
Attempt to deploy new.
Workload VA1_1811 was created.
Virtual server, ip10-32-41-93, added to workload, VA1_1811.
Workload, VA1_1811, is started.
Mon Feb 11 12:49:09 EST 2013  deployva Operation took 240 seconds.
USERID@c612n18:~>

参考资料

学习

获得产品和技术

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=AIX and UNIX, Linux
ArticleID=955110
ArticleTitle=IBM Systems Director VMControl 的多磁盘管理: 第 3 部分
publish-date=12022013