使用群集时关闭NATS Streaming Server

时间:2019-07-18 19:36:46

标签: nats.io nats-streaming-server

我有在3个VM上运行的Nats Streaming服务器,并且它们是根据NATS官方文档教程进行集群的。每次文件更改时,一个实例都会关闭,然后所有其他实例稍后关闭。

试图更改一些配置文件但没有成功

# NATS specific configuration
port: 4222
cluster {
  listen: 0.0.0.0:6222
  routes: ["nats://VM-1-IP:6222", "nats://VM-2-IP:6222"]
}

# NATS Streaming specific configuration
streaming {
  id: mycluster
  store: file
  dir: store
  cluster {
    node_id: "a"
    peers: ["b", "c"]
    bootstrap: true
    sync: true
#    log_path: store
    raft_election_timeout: "2s"
    raft_lease_timeout: "2s"

  }
}

例如:某人通过在VM-1上连接进行发布,VM-1收到了消息...片刻之后(可能是在存储消息时),我在一个实例上收到此错误,然后在另一个实例上出现此错误。

VM-0 Terminal

[10913] 2019/07/18 16:25:43.753835 [INF] VM-0-IP:60063 - rid:12 - Router connection closed
[10913] 2019/07/18 16:25:43.754294 [ERR] VM-0-IP:60063 - rid:12 - attempted to connect to route port
panic: interface conversion: stores.SubStore is *stores.RaftSubStore, not *stores.FileSubStore

goroutine 1477 [running]:
github.com/nats-io/nats-streaming-server/stores.(*FileStore).autoSync(0xc00011e600)
    /home/envoy-dns/go/src/github.com/nats-io/nats-streaming-server/stores/filestore.go:1329 +0x33c
created by time.goFunc
    /usr/local/go/src/time/sleep.go:169 +0x44
exit status 2

1 个答案:

答案 0 :(得分:0)

对不起,您的回复很晚。这是master的错误,但未在任何公开发行版中。修复于7月:https://github.com/nats-io/nats-streaming-server/pull/886