Azure service configuration有两个参数 - osFamily
和osVersion
。 osFamily
可以1
表示Windows Server 2008(默认值)或2
表示Windows Server 2008 R2。 osVersion
默认为*
,表示“无论如何,这取决于Azure基础架构”。
现在我想从默认值切换到R2。我打开了配置文件并添加了osFamily="2"
,现在当我尝试部署服务时,我收到以下错误消息:
.cscfg文件无效。如果在.cscfg文件中设置了osFamily属性,则还需要设置osVersion属性。 osVersion属性可以是“*”,用于自动操作系统升级,也可以是特定操作系统版本的名称。
以某种方式暗示现在我必须指定确切的操作系统版本。
我不想指定确切的版本,我宁愿拥有“无论如何,这取决于Azure,只是让它成为一些Windows Server 2008 R2”。
如何在未明确指定操作系统版本的情况下切换到Windows 2008 R2?
答案 0 :(得分:3)
如果我正确阅读了您的问题,您的.cscfg文件中有一行看起来像这样
<ServiceConfiguration serviceName="MyService" osFamily="2" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
根据错误消息告诉您的内容,虽然osVersion
可能默认为*
,但如果您指定osFamily
,则还必须指定osVersion
。在您的情况下,您要添加属性并将其设置为*
,如下所示。
<ServiceConfiguration serviceName="MyService" osFamily="2" osVersion="*" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">