导出 (0) 打印
全部展开

升级部署

更新时间: 2014年4月

Upgrade Deployment 操作使用您指定的包和配置开始更新部署中的角色实例。有关更新角色实例的详细信息,请参阅更新 Windows Azure 服务

Upgrade Deployment 操作是异步操作。若要确定是否已处理该请求,请调用 获取操作状态。有关异步操作的详细信息,请参阅跟踪异步服务管理请求

可以按以下方式指定 Upgrade Deployment 请求。可通过指定部署环境(临时或生产环境)或指定部署的唯一名称来更新部署。

若要生成请求 URI,请将 <subscription-id> 替换为您的订阅 ID,将 <cloudservice-name> 替换为云服务的名称,将 <deployment-slot> 替换为 stagingproduction,将 <deployment-name> 替换为您的部署的唯一名称。

 

方法 请求 URI HTTP 版本

POST

https://management.core.windows.net/<subscription-id>/services/hostedservices/<cloudservice-name>/deploymentslots/<deployment-slot>/

HTTP/1.1

POST

https://management.core.windows.net/<subscription-id>/services/hostedservices/<cloudservice-name>/deployments/<deployment-name>/

HTTP/1.1

 

URI 参数 说明

comp=upgrade

必需。指定必须更新部署。

下表介绍请求标头。

 

请求标头 说明

Content-Type

必需。将此标头设置为 application/xml

x-ms-version

必需。指定用于此请求的操作的版本。应将此标头设置为 2009-10-01 或更高版本。有关版本控制标头的详细信息,请参阅服务管理版本控制

请求正文的格式如下所示。请注意,必须按如下所示的顺序指定请求中的 XML 元素:


<?xml version="1.0" encoding="utf-8"?>
<UpgradeDeployment xmlns="http://schemas.microsoft.com/windowsazure">
  <Mode>type-of-upgrade</Mode>
  <PackageUrl>url-to-package</PackageUrl>
  <Configuration>base64-encoded-config-file</Configuration>
  <Label>base-64-encoded-label</Label>
  <RoleToUpgrade>role-name</RoleToUpgrade>
  <Force>true|false</Force>
  <ExtendedProperties>
    <ExtendedProperty>
      <Name>property-name</Name>
      <Value>property-value</Value>
    </ExtendedProperty>
  </ExtendedProperties>
  <ExtensionConfiguration>
    <AllRoles>
      <Extension>
        <Id>identifier-of-extension</Id>
      </Extension>
      ...
    </AllRoles>
    <NamedRoles>
      <Role>
        <RoleName>role_name1</RoleName>
        <Extensions>
          <Extension>
            <Id>identifier-of-extension</Id>
          </Extension>
          ...
        </Extensions>
      </Role>
    </NamedRoles>
  </ExtensionConfiguration>
</UpgradeDeployment>

下表介绍了请求正文中的主要元素:

 

元素名称 说明

Mode

必需。要开始的更新类型。在部署服务时将角色实例分配给更新域。可在每个更新域中手动开始更新,也可以在所有更新域中自动开始更新。可能的值有:

  • Auto

  • Manual

  • Simultaneous

如果未指定,则默认值为 Auto。如果设置为 Manual,则必须调用 WalkUpgradeDomain 以便应用更新。如果设置为 Auto,则更新将按顺序自动应用于每个更新域。

仅在 2012-12-01 版或更高版本中才可以使用 Simultaneous 设置。

PackageUrl

必需。引用 BLOB 服务中服务包的位置的 URL。服务包可位于同一个订阅下的存储帐户中,也可位于任何存储帐户的共享访问签名 (SAS) URI 中。有关共享访问签名的详细信息,请参阅使用共享访问签名委托访问 (REST API)

Configuration

必需。部署的 Base-64 编码的服务配置文件。

Label

必需。Base-64 编码的云服务的名称。该名称的长度最长可以为 100 个字符。

建议该标签在说明内唯一。该名称可用于标识云服务,以便进行跟踪。

RoleToUpgrade

可选。要更新的特定角色实例的名称。

Force

必需。指定甚至在回滚将导致本地数据从某些角色实例中丢失时回滚是否应继续。如果回滚应继续,则为 True;否则为 false

仅在 2011-10-01 版或更高版本中才可以使用 Force 元素。

Name

可选。表示某个扩展的云服务属性的名称。每个扩展属性都必须有定义的名称和值。最多可有 25 个扩展属性的名称/值对。

Name 元素的最大长度为 64 个字符,仅字母数字字符和下划线在名称中有效,并且该名称必须以字母开头。尝试使用其他字符、以非字母字符开头或者输入与同一云服务所拥有的其他扩展属性名称完全相同的名称都将导致状态代码 400(错误请求)错误。

仅在 2012-03-01 版或更高版本中才可以使用 Name 元素。

Value

可选。表示某个扩展的云服务属性的值。每个扩展属性都必须有定义的名称和值。最多可有 25 个扩展属性的名称/值对,并且每个扩展属性值的最大长度为 255 个字符。

您可以通过将该值设置为 NULL,删除扩展属性。

仅在 2012-03-01 版或更高版本中才可以使用 Value 元素。

ExtensionConfiguration

可选。表示添加到云服务的扩展。在 Windows Azure 中,进程可作为云服务的扩展运行。例如,远程桌面访问或 Windows Azure 诊断代理可作为云服务的扩展运行。您必须首先通过使用 添加扩展 向云服务添加某一扩展插件,然后才能在更新过程中将该扩展插件添加到部署中。

仅在 2013-03-01 版或更高版本中才可以使用 ExtensionConfiguration 元素。

表示添加到云服务的扩展。

 

元素名称 说明

AllRoles

可选。指定应用于部署中所有角色的扩展的列表。

Extension

必需。表示要部署到云服务中某个角色的扩展。

NamedRoles

可选。指定应用于部署中指定角色的扩展的列表。

表示要部署到云服务中某个角色的扩展。

 

元素名称 说明

Id

必需。扩展的标识符。向云服务添加扩展时,即创建标识符。可使用 列出扩展 找到添加到云服务的扩展的 ID。

指定应用于部署中指定角色的扩展的列表。

 

元素名称 说明

Role

必需。表示将扩展添加到的特定角色。

RoleName

必需。指定角色的名称。

Extension

必需。表示要部署到云服务中某个角色的扩展。

响应包括 HTTP 状态代码和一组响应标头。

由于 Upgrade Deployment 是异步操作,因此它始终返回状态代码 202(接受)。若要在完成操作后即确定其状态代码,请调用 获取操作状态。状态代码嵌入在此操作的响应中;如果成功,将为状态代码 200(“正常”)。有关状态代码的信息,请参阅服务管理状态和错误代码

此操作的响应包括以下标头。该响应还可能包括其他标准 HTTP 标头。所有标准标头都符合 HTTP/1.1 协议规范

 

响应标头 说明

x-ms-request-id

一个值,它唯一地标识对管理服务做出的请求。对于异步操作,可使用该值调用获取操作状态以确定操作已完成、失败还是仍在进行中。有关详细信息,请参阅跟踪异步服务管理请求

无。

可使用任何与 <subscription-id> 指定的订阅关联的管理证书对此操作进行身份验证。有关其他详细信息,请参阅对服务管理请求进行身份验证

若要执行部署的自动更新,请调用 升级部署更改部署配置 并且将 Mode 元素设置为 automatic。更新将从该点继续并且无需进一步的输入。您可以调用 获取操作状态 以便确定更新何时完成。

若要执行手动更新,请首先调用 升级部署 并且将 Mode 元素设置为 manual。接下来,调用 遍历升级域 以更新部署中的每个域。您应该在更新下一个域之前通过调用获取操作状态确保该操作完成。

Important重要提示
添加或删除角色实例的更新将导致对云服务中部署的所有角色进行配置更新。需要向现有角色实例通知新的角色实例,以使所有角色实例均可在云服务中进行通信。

默认情况下为一个云服务部署 5 个更新域,在就地更新期间一次一个地更新这些域。有关修改服务定义文件中更新域数量的信息,请参阅Windows Azure 服务定义架构(.csdef 文件)

若要确定在 Windows Azure 中运行某个特定实例的更新域,请使用 UpdateDomain 类的 RoleInstance 属性。有关详细信息,请参阅 Azure Developer References

Microsoft 正在进行一项网上调查,以了解您对 MSDN 网站的意见。 如果您选择参加,我们将会在您离开 MSDN 网站时向您显示该网上调查。

是否要参加?
显示:
© 2014 Microsoft