删除 Azure 批处理证书时超时



>我在门户中收到以下内容:

删除 [此处的指纹] 时出错。服务器 返回 500 错误。是否要再试一次?

我怀疑证书上挂着一个 azure batch 池/节点,但是使用该证书的池/节点已被删除(至少它们在门户中不可见(。

有没有办法强制删除证书,在正常操作中,我的发布管道依赖于能够删除证书。


使用提琴手拦截 azure powershell,我可以在 http 响应中看到这一点,因此它似乎超时了。

{
"odata.metadata":"https://ttmdpdev.northeurope.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element","code":"OperationTimedOut","message":{
"lang":"en-US","value":"Operation could not be completed within the specified time.nRequestId:[REQUEST ID HERE]nTime:2017-08-23T16:54:23.1811814Z"
}
}

我也删除了任何相应的任务和时间表,仍然没有运气。

(披露:在撰写本文时,我在Azure Batch团队工作,但不是核心服务。

500 错误通常是暂时性的,可能表示批处理内部负载较重(与 503 错误相反,503 表示批处理 API 本身的重负载(。 内部超时错误反映了这一点。 对特定 API 的需求可能会出现意外激增,这些 API 成本高,但通常使用率较低。 我们监视并缓解这些问题,但有时具有异常使用模式的极高负载可能会影响服务响应能力。 我建议您每 10-15 分钟尝试一次,如果它在几个小时内没有自行清除,请尝试提出支持票证。

目前无法强制删除证书。 这是一种内部安全机制,可确保 Batch 永远不会处于必须部署不再具有副本的证书的位置。 您可以通过批处理用户语音请求此类功能。

最后,关于您的特定方案,您可以查看重新调整工作流是否可行,使其不依赖于证书删除。 例如,你可以有一个垃圾回收工具(可能使用 Azure Functions 或 Azure 计划程序运行(,该工具会定期清除旧证书。 可以说,这增加了更多的复杂性(可以说不是必需的(,但它提高了弹性,并以其他方式简化了解决方案,因为您的主要路径不再需要担心延迟和超时。 如果您想探索这条道路,那么可以在 Batch 论坛上发帖,并与团队开始讨论可能的设计方法。

最新更新