Meteor on Multihomed Server?



有人在多主机服务器上运行Meteor的经验吗?我们正在生产一款应用程序,并且有一些服务器,每个服务器都有两张网卡。eth0上的一个接口通过Mongo集群连接到我们的内部网络,而eth1上的另一个接口则连接到DMZ。我们已经远远超过了开发阶段,并且处于捆绑后工作流程中。因此,这是一个只在eth1:上运行以下命令的问题

MONGO_URL='mongodb://mongodb:27017/?replicaSet=meteor'端口='80'ROOT_URL='http://app.domain.org'node main.js

我对节点的了解还不够,无法确切地知道如何指定单个接口。这是用环境变量指定的吗?在我们的/etc/network/interfaces文件中?iptables?还有别的吗?

我在网上找到了如下资源,但我不确定我是否在正确的轨道上使用它们。让node.js服务器在一个特定的接口上运行需要这种大惊小怪吗?有什么更容易的吗?

https://gist.github.com/logicalparadox/2142595
如何将node.js设置为专用服务器上的服务?[不能访问节点应用程序]

任何帮助都将不胜感激!谢谢
Abigail

Meteor将监听0.0.0.0(所有接口),除非您指定了环境变量BIND_IP

显式-BIND_IP的值作为hostname参数传递给http://nodejs.org/api/http.html#http_server_listen_port_hostname_backlog_callback

来源:https://github.com/meteor/meteor/blob/master/packages/webapp/webapp_server.js#L541

好了,一切都好了。第二个以太网卡未配置。

sudo nano /etc/network/interfaces    
auto eth0
iface eth0 inet static
address aaa.bbb.ccc.ddd
gateway aaa.bbb.ccc.eee
auto eth1
iface eth1 inet static
address aaa.bbb.ccc.fff
gateway aaa.bbb.ccc.ggg
sudo ifconfig eth1 up
sudo /etc/init.d/networking restart

然后必须确保防火墙正常工作。。。

sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport ssh -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT    
sudo iptables -L -n -v

然后确认该网站在正确的IP地址上运行,并带有很大的卷曲。。。

curl -XGET http://aaa.bbb.ccc.fff/main.js

相关内容

  • 没有找到相关文章

最新更新