【问题标题】:Exception on deploying Azure bot in Azure ILB ASE在 Azure ILB ASE 中部署 Azure 机器人时出现异常
【发布时间】:2020-11-30 06:37:37
【问题描述】:

为确保监控到机器人的所有往返流量,我们需要将 Azure 机器人部署到 ILB ASE。但是,当我们尝试将 Azure bot 基本机器人 (OOBTB Azure web chatbot) 部署到 ILB ASE 的 ASP 中时,我们面临着 ResourceDeploymentFailure 异常。 ASE 的健康状况,ASP 很好,NSG 的都设置好了。有没有人遇到过类似的问题并解决了,求大神帮忙。或者在 ILB ASE 中部署 Azure bot 是否有任何限制,它在外部 ASE 中工作。 PFB 详细异常。 谢谢, 尼维迪塔

exception : {"code":"DeploymentFailed" ,"message":"At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/DeployOperations for usage details." ,"details":[{"code":"Conflict" ,"message":"{
"status": "failed" , \"error\": { "code\": \"ResourceDeploymentFailure\" , \"message\": "The resource operation completed with terminal provisioning state 'failed'.\" , \"details\": [ { \"code\": \"Failed\" , \"message\": \"Failed to download package.
ARM-MSDeploy Deploy Failed: 'System.AggregateException: One or more errors occurred. ---> System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send. ---> System.IO.IOException: Authentication failed because
the remote party has closed the transport stream. at System.Net.TlsStream.EndWrite(IAsyncResult asyncResult) at System.Net.PooledStream.EndWrite(IAsyncResult asyncResult) at System.Net.ConnectStream.WriteHeadersCallback(IAsyncResult ar) --- End of inner
exception stack trace --- at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Net.WebClient.GetWebResponse(WebRequest request, IAsyncResult result) at System.Net.WebClient.DownloadBitsResponseCallback(IAsyncResult result) ---
End of inner exception stack trace --- at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout , CancellationToken cancellationToken) at System.Threading.Tasks.Task.Wait(TimeSpan
timeout) at Microsoft.Web.Deployment.WebApi.AppGalleryPackage.<Download>d__13.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Web.Deployment.WebApi.AppGalleryPackage.<Download>d__11.MoveNext() --- End of stack trace from previous location where exception was thrown
--- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Web.Deployment.WebApi.DeploymentController.<DownloadPackageAndSettings>d__26.MoveNext()
--- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Web.Deployment.WebApi.DeploymentController.<DownloadAndDeployPackage>d__25.MoveNext() ---> (Inner Exception #0) System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send. ---> System.IO.IOException:
Authentication failed because the remote party has closed the transport stream. at System.Net.TlsStream.EndWrite(IAsyncResult asyncResult) at System.Net.PooledStream.EndWrite(IAsyncResult asyncResult) at System.Net.ConnectStream.WriteHeadersCallback(IAsyncResult
ar) --- End of inner exception stack trace --- at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Net.WebClient.GetWebResponse(WebRequest request , IAsyncResult result) at System.Net.WebClient.DownloadBitsResponseCallback(IAsyncResult
result)<--- '\" } ] } }"}]}

【问题讨论】:

    标签: azure azure-bot-service azure-app-service-plans azure-app-service-envrmnt azure-ilb


    【解决方案1】:

    外部 ASE 和内部 ASE 之间的最大区别在于 ILB ASE 中应用程序的发布端点无法通过 Internet 访问。如果您有 ILB ASE,则 ILB 地址的地址是 HTTP/S、FTP/S、Web 部署和远程调试的端点。有关详细信息,请阅读应用服务环境的网络注意事项。

    ILB ASE 中应用程序的发布端点使用的域 ILB ASE 是用它创建的。您可以在应用程序的发布中看到它 个人资料和应用程序的门户窗格中(在概览 > 基础和 也在属性中)。

    对于错误消息,它看起来像 SSL 连接或网络相关错误。在 Azure ILB ASE 中部署 Azure bot 时,可以验证 networking considerations for an App Service Environment。您可能需要Integrate your ILB App Service Environment with the Azure Application Gateway 才能从 Internet 访问。

    【讨论】:

    • 感谢您的回复。我们已经将 Azure 应用程序网关与 ILB ASE 集成。日志没有提供太多信息,是的,来自异常日志,它似乎是 SSL 证书或 SAS 令牌问题,但作为 Azure Bot 部署的一部分,它确实从 Azure 门户寻求任何此类信息。我不确定我们是否遇到了以下链接中提到的问题,这是 2 年前报告的,因此想确认一下。feedback.azure.com/forums/169385-web-apps/suggestions/…
    • 我没有更多好主意,您可以联系MS支持直接确认。
    猜你喜欢
    • 2019-06-18
    • 1970-01-01
    • 1970-01-01
    • 2018-05-26
    • 2019-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多