2012-12-17 49 views
4

我得到以下错误:Azure的云中部署保持回收

Recycling (Waiting for role to start... Sites are being deployed. [2012-12-17T05:30:10Z])

Running One or more role instance is unhealthy. 1 Instance: 1 Unhealthy

实际上,我是想我的web应用程序转换到云的一个应用。

这里是我做过什么:

我加了一个云项目到我的解决方案, 我添加了链接到我的web应用程序 我创建一个SQL Azure数据库并复制了我的整个结构的webrole,也是数据到db 我在我的webconfig中插入了连接字符串,并试图在仿真中运行它,这很好运行 然后试图通过创建云服务来部署它,运行构建器来创建软件包并在“分段”模式。这是我得到错误的地方。

我试图创建一个空的云应用程序并添加一个默认的webrole并将其加载到云,这工作正常。所以我想,也许我在我的webrole的设置中有错误。 我检查了两者之间的差异,我注意到在两个解决方案中,诊断程序已启用,但存储帐户在我自己的解决方案中为空,所以我在此插入“UseDevelopmentStorage = true”。这并没有改变任何东西。我还看到一个差异在“packages.config”

默认角色有:

<package id="Microsoft.WindowsAzure.ConfigurationManager" version="1.7.0.0" targetFramework="net40" /> 
    <package id="System.Web.Providers" version="1.1" targetFramework="net40" /> 
    <package id="System.Web.Providers.Core" version="1.0" targetFramework="net40" /> 
    <package id="WindowsAzure.Storage" version="1.7.0.0" targetFramework="net40" /> 

矿山有:

<package id="Microsoft.WindowsAzure.ConfigurationManager" version="1.7.0.0" targetFramework="net35" /> 
    <package id="WindowsAzure.Storage" version="1.7.0.0" targetFramework="net35" /> 

我想在此和上传改变,什么也没做

我不使用工作者角色,我只有1个运行实例(与默认相同)

我的应用程序在global.asax中使用了一些身份验证,它尝试从User.Identity.Name读取并与数据库中的用户(该用户插入到sql azure数据库中)进行比较。起初我认为这可能是问题的原因,但即使我注释掉这些代码,应用程序也不会在云上运行。

VM尺寸小,信任级别=完全信任

我也看到了在那里我有远程访问参数的设置有所不同。我试图删除所有这些只是为了排除问题

我读了一些关于设置引用“复制本地是真实的”,但我不知道这是否会有所作为。

任何想法,因为我真的不知道该怎么办了

编辑:

我修改所有引用“复制本地是真的”,我禁用诊断只是要确定没有什么它错了。

,但现在我得到的错误:

<!-- Web.Config Configuration File --> 

<configuration> 
    <system.web> 
     <customErrors mode="Off"/> 
    </system.web> 
</configuration> 

有趣的是,在我的webconfig这个已被设置......我只能找到1个webconfig。 我不太清楚我在做什么错

+0

当您启用了诊断和'UseDevelopmentStorage =真',那么你将永远不会得到一个正在运行的云服务。为此用户提供真正的Azure存储连接字符串。 – astaykov

+0

我不同意,我想你会得到一个正在运行的云服务,你就不会得到任何诊断信息。 –

+1

我怀疑你有一个缺失的依赖项,你需要追求那些'复制本地是真实的'参考。如果您拥有Visual Studio Ultimate,则可以下载intellitrace日志,这些日志可能包含更多信息。 –

回答

3

问题是,我有一些引用的项目是有一个字符串的app.config文件到本地数据库

6

“保持再造”几乎总是意味着有,当你启动应用程序,发生了一些异常。您可能无法通过Diagnostics Montor查看任何错误或异常,因为在配置和启动诊断之前可能会发生异常。

我建议您启用时的IntelliTrace选项部署。如果您使用Visual Studio,这很容易。然后,您可以通过Visual Studio检索IntelliTrace结果,并找出发生了什么异常。我强烈地认为在azure上有一些参考文献错过了您需要设置Copy Local = true。但是你需要IntelliTrace来找到它们。