如何使用StrongLoop Nginx控制器将{Nginx设置为负载均衡器

时间:2015-06-11 02:26:19

标签: nginx amazon-ec2 loopbackjs strongloop

我正在尝试使用StrongLoop Nginx控制器将Nginx设置为负载均衡器。 Nginx将作为独立StrongLoop流程管理器托管的StrongLoop LoopBack应用程序的负载均衡器。但是,我在使用StrongLoop the official directions之后进行Nginx部署时失败了。以下是我采取的步骤:

第1步 - 我的第一步是在AWS EC2实例上安装Nginx和StrongLoop Nginx Controller。我启动了一个EC2服务器(Ubuntu 14.04)来托管负载均衡器,并将一个弹性IP连接到服务器。然后我执行了以下命令:

$ ssh -i ~/mykey.pem ubuntu@[nginx-ec2-ip-address]
$ sudo apt-get update
$ sudo apt-get install nginx
$ sudo apt-get install build-essential
$ curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -
$ sudo apt-get install -y nodejs
$ sudo npm install -g strong-nginx-controller 
$ sudo sl-nginx-ctl-install -c 444

然后我使用自定义TCP规则在EC2实例的安全组中打开了端口444。

第2步 - 我的第二步是设置两个Loopback应用服务器。为此,我为应用程序服务器再启动了两台EC2服务器(均为Ubuntu 14.04),并为每台服务器附加了一个弹性IP。然后我在每个应用程序服务器上运行以下一系列命令:

$ ssh -i ~/mykey.pem ubuntu@[application-server-ec2-ip-address]
$ sudo apt-get update
$ sudo apt-get install build-essential
$ curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -
$ sudo apt-get install -y nodejs
$ sudo npm install -g strong-pm
$ sudo sl-pm-install
$ sudo /sbin/initctl start strong-pm

第3步 - 我的第三步是将应用程序部署到每个应用程序服务器。为此,我使用了StrongLoop Arc:

$ cd /path/to/loopback-getting-started-intermediate # my application
$ slc arc

进入StrongLoop Arc Web控制台后,我为应用程序构建了一个tar,并将其部署到两个应用程序服务器。然后在Arc Process Manager中,我连接到两个应用程序服务器。连接后,我点击“负载均衡器”,进入Nginx主机并进入表单并按下保存。这导致弹出一条消息,说“已保存负载均衡器配置。”

此时发生了一些奇怪的事情:我刚刚输入负载均衡器(主机和端口)设置的StrongLoop Arc中的字段恢复为我开始输入之前字段的原始值。 (原始端口值为555,主机字段中的原始值是我的第二个应用程序服务器的地址。)

不知道接下来该做什么 - 这是我真的不知道接下来该做什么的地方。 (我尝试打开我的网络浏览器并导航到Nginx负载均衡器的IP地址,使用几个不同的端口值。我尝试了80,8080,3001和80,在安全组中打开了每个,试图找到我需要导航的地方,以便在行动中看到“负载平衡”。但是,我没有看到任何导航到这些地方的任何地方,除了提供“欢迎来到Nginx页面”的端口80,我正在寻找什么。)

如何使用StrongLoop Nginx控制器将Nginx设置为负载均衡器?假设我列出的所有步骤都是正确的,那么该过程的下一步是什么。

1 个答案:

答案 0 :(得分:0)

我通常做的是:

sudo sl-nginx-ctl-install -c http://0.0.0.0:444

也许这可以解决您的问题。