Почему вручную изменить пакет Azure Cloud и развернуть его для изменения размера экземпляра не удается?

Теперь Мне стало известно, что мы не можем изменить размер экземпляра облачной службы без повторного развертывания пакета. Но рассмотрим сценарий, в котором у нас есть только пакет напрямую и нет доступа к коду. И этот пакет имеет неправильный размер экземпляра, указанный в файле ServiceDefinition.csdef. Что делать, если мы хотим вручную изменить размер инстанса?

Поэтому я попытался изменить файл .cspkg вручную, сначала изменив расширение на .zip. Затем внутри этого был файл .csdx; который я снова заменил на zip, а внутри него был файл ServiceDefinition.csdef.

Я изменил размер экземпляра виртуальной машины на требуемый размер и в основном выполнил операцию, обратную вышеуказанным шагам, и снова создал .cspkg. Обратите внимание, что я приложил достаточно усилий, чтобы сохранить уровни каждого файла в пакете.

Но когда я попытался развернуть этот модифицированный пакет, я получил на портале исключение, что это недействительный пакет службы.

Любая идея, почему это потерпит неудачу? Я имею в виду, есть ли другие вещи, от которых зависит размер экземпляра? И что же все они есть в пакете .cspkg?

Я также ссылался на приведенные ниже ссылки для справки.

Есть ли способ изменить тип экземпляра в облачных службах Azure

https://social.msdn.microsoft.com/Forums/azure/en-US/0652d2e7-4469-4b30-b100-dd82485ceffd/azure-resize-instance-from-small-to-medium-in-cloud-service?forum=windowsazuremanagement


person Amogh Natu    schedule 08.09.2016    source источник
comment
Я почти уверен, что пакеты облачных сервисов подписаны, что требует создания с помощью инструментов Visual Studio.   -  person David Makogon    schedule 08.09.2016


Ответы (1)


Вы можете использовать инструмент cspack для переупаковки с двоичными файлами с новым файлом csdef. См.: https://azure.microsoft.com/en-us/documentation/articles/cloud-services-model-and-package/

person AKV    schedule 08.09.2016
comment
Спасибо. Это сработало. Я разархивировал cspkg и получил csdef и фактические двоичные файлы пакета. Затем выполните приведенную ниже команду для создания другого пакета. cspack.exe path_to_csdef_File\ServiceDefinition.csdef /role:‹RoleName›;‹path_to_Binaries\approot› /out:D:\NewPackage.cspkg /rolePropertiesFile:‹rolename›;‹path_to_entry_point_file\entrypoint.txt› - person Amogh Natu; 08.09.2016