为什么手动修改 azure 云包并部署它以更改实例大小失败?

Why does manually modifying azure cloud package and deploying it for changing instance size fail?

现在 I got to know 我们无法在不重新部署包的情况下更改云服务实例大小。但是考虑这样一个场景,我们只直接拥有包而无权访问代码。而且这个包在 ServiceDefinition.csdef 文件中提到了错误的实例大小。如果我们想手动修改实例大小怎么办?

所以我尝试通过首先将扩展名更改为 .zip 来手动修改 .cspkg 文件。然后里面有一个 .csdx 文件;我再次更改为 zip,里面有 ServiceDefinition.csdef 文件。

我将 VM 实例大小更改为所需大小,基本上对上述步骤进行了反向操作并再次创建了 .cspkg请注意,我非常小心地维护了包中每个文件的级别

但是当我尝试部署这个修改后的包时,我在门户中遇到一个异常,它不是一个有效的服务包。

知道为什么会失败吗?我的意思是,实例大小还取决于其他因素吗? .cspkg 包中的内容是什么?

我也参考了以下链接。

Is there way to change to instance type in Azure Cloud Services

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

您可以使用 cspack 工具重新打包带有新 csdef 文件的二进制文件。参考:https://azure.microsoft.com/en-us/documentation/articles/cloud-services-model-and-package/