Обновление развертывания
Асинхронная операция Upgrade Deployment
инициирует обновление экземпляров роли в развертывании с помощью указанных вами пакета и конфигурации.
Запрос
Запрос Upgrade Deployment
можно указать следующим образом. Замените <subscription-id>
идентификатором подписки, <cloudservice-name>
именем облачной службы, <deployment-slot>
staging
или production
<deployment-name>
именем развертывания.
Метод | Универсальный код ресурса (URI) запроса |
---|---|
POST | https://management.core.windows.net/<subscription-id>/services/hostedservices/<cloudservice-name>/deploymentslots/<deployment-slot>/ |
POST | https://management.core.windows.net/<subscription-id>/services/hostedservices/<cloudservice-name>/deployments/<deployment-name>/ |
Параметры URI
Параметр URI | Описание |
---|---|
comp=upgrade |
Обязательный. Указывает, что развертывание необходимо обновить. |
Заголовки запросов
В следующей таблице описаны заголовки запросов.
Заголовок запроса | Описание |
---|---|
Content-Type |
Обязательный. Задайте для этого заголовка значение application/xml . |
x-ms-version |
Обязательный. Задает версию операции, используемой для этого запроса. Этот заголовок должен иметь значение 2009-10-01 или выше. |
Текст запроса
Далее приведен формат текста запроса.
<?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>
<State>state-of-extension</State>
</Extension>
</AllRoles>
<NamedRoles>
<Role>
<RoleName>role_name1</RoleName>
<Extensions>
<Extension>
<Id>identifier-of-extension</Id>
<State>state-of-extension</State>
</Extension>
</Extensions>
</Role>
</NamedRoles>
</ExtensionConfiguration>
</UpgradeDeployment>
В следующей таблице описываются элементы текста запроса.
Имя элемента | Описание |
---|---|
Режим | Обязательный. Указывает тип запускаемого обновления. При развертывании службы для обновления доменов выделяются экземпляры ролей. Обновления можно начать вручную в каждом домене обновления либо автоматически во всех доменах обновления. Возможны следующие значения: - Auto - Manual - Simultaneous Если не задано, по умолчанию используется значение Auto . Если задано значение Manual , необходимо вызвать WalkUpgradeDomain , чтобы применить обновление. Если это значение равно Auto , то обновление автоматически применяется к каждому домену обновления по очереди.Параметр Simultaneous доступен только в версии 2012-12-01 или более поздней. |
PackageUrl | Обязательный. Задает URL-адрес, который указывает на расположение пакета служб в службе BLOB-объектов. Пакет служб может находиться либо в учетной записи хранения в той же подписке, либо по идентификатору URI подписанного URL-адреса (SAS) с любой учетной записи хранения. Дополнительные сведения о подписанных URL-адресах см. в статье Делегирование доступа с помощью подписанного URL-адреса. |
Конфигурация | Обязательный. Задает файл конфигурации службы для развертывания (в кодировке Base64). |
Метка | Обязательный. Указывает имя для облачной службы в кодировке base-64. Имя может содержать до 100 символов. Рекомендуется использовать в подписке уникальную метку. Имя может определять облачную службу в целях отслеживания. |
RoleToUpgrade | Необязательный элемент. Указывает имя конкретного обновляемого экземпляра роли. При обновлении с одной ролью все остальные роли по-прежнему могут быть переработаны, если запланировано внутреннее обновление Azure. В этом сценарии гарантируется домен обновления. |
Force | Обязательный. Указывает, должно ли продолжаться обновление даже в том случае, если оно приводит к потере локальных данных в каких-либо экземплярах роли. True Значение , если обновление должно продолжаться; в противном случае false .Элемент Force доступен только в версии 2011-10-01 или более поздней. |
Имя | Необязательный элемент. Задает имя расширенного свойства облачной службы. Каждое расширенное свойство должно иметь и заданное имя, и значение. У вас может быть не более 25 пар расширенных имен свойств и значений. Максимальная длина элемента Name - 64 символа, в имени допустимы только буквенно-цифровые символы и подчеркивания, имя должно начинаться с буквы. Попытка использовать другие символы, начать имя не с буквы или ввести имя, которое уже имеется у другого расширенного свойства в той же облачной службе, приведет к ошибке с кодом состояния 400 (неправильный запрос).Элемент Name доступен только в версии 2012-03-01 или более поздней. |
Значение | Необязательный элемент. Указывает значение расширенного свойства облачной службы. Каждое расширенное свойство должно иметь и заданное имя, и значение. Можно задать не более 25 пар из имени и значения расширенных свойств, максимальная длина каждого расширенного свойства — 255 символов. Расширенное свойство удаляется путем задания для него значения NULL. Элемент Value доступен только в версии 2012-03-01 или более поздней. |
ExtensionConfiguration | Необязательный элемент. Указывает расширение, добавляемое к облачной службе. В Azure процесс может выполняться как расширение облачной службы. Необходимо добавить расширение в облачную службу с помощью команды Добавить расширение , прежде чем его можно будет добавить в развертывание во время обновления. Элемент ExtensionConfiguration доступен только в версии 2013-03-01 или более поздней. |
ExtensionConfiguration
Указывает расширение, добавляемое к облачной службе.
Имя элемента | Описание |
---|---|
AllRoles | Необязательный элемент. Задает список расширений, применяемых ко всем ролям в развертывании. |
Расширение | Обязательный. Указывает расширение для развертывания в роли в облачной службе. |
NamedRoles | Необязательный элемент. Задает список расширений, применяемых к конкретным ролям в развертывании. |
Расширение
Указывает расширение для развертывания в роли в облачной службе.
Имя элемента | Описание |
---|---|
Идентификатор | Обязательный. Указывает идентификатор расширения. Идентификатор создается при добавлении расширения в облачную службу. Идентификатор расширения, добавленного в облачную службу, можно найти с помощью списка расширений. |
Состояние | Необязательный элемент. Указывает состояние расширения. Этот элемент применяется только к настроенным расширениям JSON. Возможны следующие значения: - Enable - Disable - Uninstall Значение по умолчанию — Enable .Элемент State доступен только в версии 2014-06-01 или более поздней. |
NamedRoles
Задает список расширений, применяемых к конкретным ролям в развертывании.
Имя элемента | Описание |
---|---|
Роль | Обязательный. Указывает конкретную роль, в которую добавляется расширение. |
RoleName | Обязательный. Указывает имя роли. |
Расширение | Обязательный. Указывает расширение для развертывания в роли в облачной службе. |
Ответ
Ответ включает код состояния HTTP и набор заголовков ответа.
Код состояния
Успешная операция возвращает код состояния 200 (ОК).
Заголовки откликов
Ответ для этой операции включает следующие заголовки. Ответ может также включать дополнительные стандартные заголовки HTTP.
Заголовок ответа | Описание |
---|---|
x-ms-request-id |
Значение, которое однозначно определяет запрос к службе управления. Для асинхронной операции можно вызвать Get Operation Status со значением заголовка, чтобы определить, завершена ли операция, завершилась ли она сбоем или все еще выполняется. |
Текст ответа
Нет.
Remarks
Чтобы выполнить автоматическое обновление развертывания, вызовите обновление развертывания или изменение конфигурации развертывания с элементом Mode
, для параметра задано значение automatic
. После этого обновление продолжится, никаких дополнительных данных вводить не потребуется. Вы можете вызвать Get Operation Status , чтобы определить, когда обновление будет завершено.
Чтобы выполнить обновление вручную, сначала вызовите Upgrade Deployment с элементом Mode
, для свойства задано значение manual
. Затем вызовите WalkUpgradeDomain , чтобы обновить каждый домен в развертывании. Необходимо убедиться, что операция завершена, вызвав получение состояния операции, прежде чем обновлять следующий домен.
Обновление, добавляющее или удаляющее экземпляры ролей, приведет к обновлению конфигурации для всех ролей, развернутых в облачной службе. Существующим экземплярам ролей следует отправить уведомления о новых экземплярах ролей, чтобы все экземпляры ролей могли работать совместно в облачной службе.
По умолчанию облачная служба развертывается с 5 доменами обновления, которые обновляются по одному во время обновления на месте.
Для определения домена обновления, в котором выполняется конкретный экземпляр, воспользуйтесь свойством UpdateDomain
класса RoleInstance
.