【发布时间】:2018-10-29 14:52:20
【问题描述】:
我们遇到了一个奇怪的网络问题。
我们有一个用 Node.js 编写的 Hyperledger Fabric 客户端应用程序,在 Kubernetes 中运行,它与外部 Hyperledger Fabric 网络通信。
我们在此通信中随机出现超时错误。当 Pod 重新启动时,一切都会好一阵子,然后超时错误开始出现,有时会自行随机修复,然后再次变坏。
这是 Azure EKS,我们使用 Rancher 在 AWS 中设置了一个快速的 Kubernetes 集群并在那里部署了应用程序,同样的超时错误也发生在那里。
我们整夜在同一个容器中运行脚本,每分钟都会使用 cURL 和一个小的 Node.js 脚本访问外部 Hyperledger 端点,我们甚至没有收到任何错误。
我们将应用程序作为普通 Docker 容器在另一个 VM 中运行,没有问题。
我们检查了容器内的网络流量,当这个问题发生时,我们可以看到与 netstat 建立了连接,但 tcpdump 显示没有流量,甚至没有尝试发送包。
检查 Hyperledger Fabric SDK 代码,它在后台使用 gRPC 协议缓冲区。
所以有什么线索吗?
【问题讨论】:
-
这是在您的 AKS 群集上运行的唯一应用吗?还是您有更多应用?
-
应用的其他部分也运行在同一个集群的不同 pod 中,比如 UI 等。
标签: node.js kubernetes hyperledger-fabric grpc