Hyperledger Fabric在阿里云安装出现的一些问题解决
1. [signal SIGSEGV: segmentation violation code=0x1 addr=xxx pc=xxx] 类似的错误:
原始错误的代码(来自peer节点):
1 | 2018-08-19 22:43:43.665 CST [couchdb] handleRequest -> WARN 016 Retrying couchdb request in 125ms. Attempt:1 Error:Get http://couchdb:5984/: dial tcp 172.18.0.4:5984: getsockopt: connection refused |
解决方法:
修改自己阿里云ecs机器里面的/etc/resolv.conf,把里面的 options timeout:2 attempts:3 rotate single-request-reopen 这一行内容注释掉 :
例如我的/etc/resolv.conf :
1 | # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) |
然后问题就解决了
原因解析:
这个问题是出在go的DNS解析问题,由于go的Resolver不支持options single-request-reopen
从而走了CGO Resolver
方法导致失败了,因此只需要把/etc/resolv.conf
里面的single-request-reopen
这一行注释掉即可
参考为什么通过CGO Resolver失败的原因: Static Cgo Builds, What Could Go Wrong?