我的Visual Studio中有一个云服务,其中包含具有两个实例的工作人员角色。我已经在vsts中使用CD进行了部署,该CD是从Cloud-CI管道中提取的。
如果我继续在Azure门户中运行云服务,则部署失败。 错误:
BadRequest:您的角色实例已经回收了很多次 在更新或升级操作期间。这表明新 服务的版本或您提供的配置设置 配置服务时,将阻止角色实例运行。 确认您的代码没有引发未处理的异常,并且您的 配置设置正确,然后开始另一个更新或 升级操作。
如果我继续在Azure门户中停止云服务,则部署成功。
我找不到导致失败的主要问题,我是否每次部署前都必须停止Azure云服务(经典)?
答案 0 :(得分:1)
我们遇到了同样的问题,无论如何,最好停止服务并重新启动它,因为可能会发生配置更改。
您可以添加一个新的发布任务来停止该站点,然后再执行所有其他任务。
答案 1 :(得分:0)
我通过修复暂存的cscfg文件解决了我的问题。我已经从托管环境中对所有设置的值进行了硬编码,并在使用BlueSky Service的情况下再次托管在Azure门户上。
由于配置错误,我在azure门户中的角色显示以下问题,并且为解决此问题,我在Azure门户的云服务中诊断出了此问题。
Azure门户中的错误消息
Recovering role... Application startup task "E:\approot\Startup.cmd" is running. [2019-02-01T09:07:42Z] Last exit time: [2019/02/01, 09:06:59.666]. Last exit code: 0. Last role exception: Microsoft.WindowsAzure.Storage.StorageException, Details: Exception: Unable to connect to the remote server at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](RESTCommand`1 cmd, IRetryPolicy policy, OperationContext operationContext) at Microsoft.WindowsAzure.Storage.Table.CloudTable.Create(TableRequestOptions requestOptions, OperationContext operationContext) at Microsoft.WindowsAzure.Storage.Table.CloudTable.CreateIfNotExists(TableRequestOptions requestOptions, OperationContext operationContext) at Ascend.Azure.Extensions.CloudTableClientExtensions.CreateTableAndSchemaIfNotExist(CloudTableClient tableClient, String entitySetName, ITableEntity entity) at BlueSky.Azure.Storage.AzureTableStorageInitializer.InitializeTableStorage() at BlueSky.Azure.KernelModule.Load() at Ninject.KernelBase.Load(IEnumerable`1 m) at BlueSky.Cloud.Worker.NinjectBootstrapper.RegisterServices(StandardKernel kernel) at BlueSky.Cloud.Worker.NinjectBootstrapper.CreateKernel() at System.Lazy`1.CreateValue() at System.Lazy`1.LazyInitValue() at BlueSky.Cloud.Worker.NinjectBootstrapper.get_Kernel() at BlueSky.Cloud.Worker.WorkerRole.OnStart() at Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.InitializeRoleInternal(RoleType roleTypeEnum) at Microsoft.WindowsAzure.ServiceRuntime.Implementation.Loader.RoleRuntimeBridge.<InitializeRole>b__0() at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart() Inner Exception: Unable to connect to the remote server at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context) at System.Net.HttpWebRequest.GetRequestStream() at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](RESTCommand`1 cmd, IRetryPolicy policy, OperationContext operationContext) Inner Exception: No connection could be made because the target machine actively refused it 127.0.0.1:10002 at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress) at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception) '.