我在我的 Kubernetes 集群上创建了一个 NATS 流服务器。
和“Kubectl get services”这样的输出:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
api-gateway-srv NodePort 10.106.100.181 <none> 8080:30440/TCP 16m
auth-mongo-srv ClusterIP 10.101.9.123 <none> 27017/TCP 16m
auth-srv ClusterIP 10.102.227.91 <none> 3000/TCP 16m
radio-srv ClusterIP 10.111.20.153 <none> 3003/TCP 16m
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 3d13h
tv-srv ClusterIP 10.111.88.212 <none> 3001/TCP 16m
nats-srv ClusterIP 10.105.230.126 <none> 4222/TCP,8222/TCP 16m
在我的 nats-publisher.js 文件上像这样:
const nats = require('node-nats-streaming');
const stan = nats.connect('natsserver', 'nats-cli1', {
url: 'nats://nats-srv:4222'
});
stan.on('connect', () => {
console.log('Links publisher connected to NATS')
}, (err, guid) => {
if(err) console.log(err)
else console.log(guid)
})
我得到:
<块引用>NatsError:无法连接到服务器:错误:连接 ECONNREFUSED 10.105.230.126:4222
但在另一项服务上,我使用了相同的连接代码进行 nats 连接。并且这个服务可以成功连接nats服务器。
为什么会出现这个错误? 相同的代码在另一项服务上正常运行,但此代码如何从此服务崩溃?