我在 mongo 建立集群时无法将本机公网 IP 写入 primary 的host
,因为在服务器上,socket 无法通过公网 IP 连接本机,mongo 就不让创建集群。
只能填写内网 IP 或localhost
,如果 secondary 节点和 primary 不在一个局域网内,就无法连接了,因为是 secondary 主动连接 primary 的,对于 secondary 来说它看到的 primary 地址是一个局域网地址。
于是我修改服务器的 host ,将xxx.com
指向127.0.0.1
,这样就将 mongo 欺骗过去了,集群中的主节点 host 成功变成xxx.com
。
我想问的是,这是标准答案吗?百度了一下没看到类似问题,难道大家的集群都在一个局域网?
1
akira 2021-11-12 04:12:28 +08:00
mongo 暴露到公网 风险是非常大的 , 一般各种服务都是会放在一个 虚拟局域网里面
|
2
defunct9 2021-11-12 06:47:57 +08:00 via iPhone
可以不在,你可以用 vxlan 、ipip 、gre 之类的打通。
|
3
litchinn 2021-11-12 09:54:32 +08:00 1
zerotier 建个局域网吧
|
4
codingBug 2021-11-13 00:26:48 +08:00
frp 内网穿透?
|