![在 K8S 实例中运行但在节点主机上的 docker 中不运行时,Azure 服务总线 TimedOut 异常](https://linux22.com/image/762510/%E5%9C%A8%20K8S%20%E5%AE%9E%E4%BE%8B%E4%B8%AD%E8%BF%90%E8%A1%8C%E4%BD%86%E5%9C%A8%E8%8A%82%E7%82%B9%E4%B8%BB%E6%9C%BA%E4%B8%8A%E7%9A%84%20docker%20%E4%B8%AD%E4%B8%8D%E8%BF%90%E8%A1%8C%E6%97%B6%EF%BC%8CAzure%20%E6%9C%8D%E5%8A%A1%E6%80%BB%E7%BA%BF%20TimedOut%20%E5%BC%82%E5%B8%B8.png)
在 K8S 中运行的 docker 容器中运行 .net core 3.1 应用程序时,我收到“ServiceBusCommunicationException”原因“连接超时 ErrorCode: TimedOut”和内部异常“SocketException”原因“连接超时”。
K8S 在 Ubuntu 20.04 LTS 上运行
当我直接在节点本身的主机上运行容器时(即不在 K8S 中),连接正常,并且它可以正常处理消息,但在 K8S 中我收到上述错误。主机上没有运行防火墙。容器基于 mcr.microsoft.com/dotnet/runtime:3.1-buster-slim 映像。没有添加任何其他内容或进行任何其他调整。
这表明 K8S 存在问题,可能是网络问题,与 AQMP 端口本身有关。
K8S 报告没有实施网络策略。
作为同一容器的一部分,我运行了一个 chron 作业,该作业对 google URL 进行 http GET。这会持续报告 OK (200)。
因此(至少对于 HTTP)pod 可以很好地与互联网通信。
如果我将身份验证凭据更改为“不好”的内容,我会收到未经授权的错误...因此,它似乎可以通过授权进行路由,但实际连接以执行某些工作时却不行。
我不知道该怎么办。有什么建议吗?