Articles of amazon ec2

如何在ELB内部设置SSL,并与ELB外部的节点实例进行通信

我已经使用ELB之外的ELB,自动调节,RDS和一个节点ec2实例在AWS上创build了架构(希望它不应该是错误的)。 现在我没有得到,那我怎么能在这个架构上实现SSL。 让我简单解释一下: 我创build了一个经典的负载平衡器。 在自动缩放组上创build。 将实例分配给自动调整组。 最后,我创build了一个我正在使用的节点实例,这个负载平衡器和自动调整组是不在这个范围之内的。 现在,当我将SSL实现到负载均衡器时,内部实例正在与HTTP请求上的节点实例进行通信,并且由于节点实例位于负载平衡器之外,因此请求被阻止。 有人可以帮我实施这个架构的SSL。 对不起,如果你与我的架构混淆,如果有任何其他最好的架构可能,那么请让我知道我可以改变我的架构。 谢谢,

EC2托pipe了Node.js应用程序 – 无法远程连接到端口

更新 :原来唯一的问题是,我在一个防火墙阻止了一些端口,但不是8000。 编辑: TL; DR:无法远程连接到端口9000,但端口8000是好的,我不知道为什么:( 我有这个在端口8000上运行的node.js应用程序和在端口9000上运行的另一个( http-proxy )。 在我的机器上运行它们是好的,但是当我将它们放在服务器( EC2实例 – 我确实打开了Web控制台安全组[1]中的端口)时遇到了一些问题。 应用程序工作正常,但我不能从外部连接到代理。 我试图$ telnet localhost 9000在服务器上,它连接,所以我想这是一个很好的迹象。 我注意到的另一件事是,如果我尝试单独运行应用程序,我得到相同的结果,即:8000 – 好,9000 – NOTOK:<。 但是,如果我更改端口代理使用从9000到8000,它的工作原理。 如果我切换端口,即应用程序:9000和代理:8000,我可以连接到代理,但不是应用程序。 我也尝试了其他号码,但是这也不能解决它。 我猜这是一件非常愚蠢的事情,与应用程序本身没有任何关系,而且我错过了,但是我不能把手指放在上面,所以没有人知道为什么这个设置不起作用。 server.js var express = require('express.io'); var app = module.exports = express(); require('./proxy'); app.http().io(); app.listen(8000); // … 的proxy.js var httpProxy = require('http-proxy'); var url = require('url'); httpProxy.createServer(function(req, res, proxy) { […]

不可能在EC2上安装npm的bcrypt

在Amazon EC2实例上的Ubuntu Server 14.04上,执行npm install时出错。 它没有安装bcrypt( "bcrypt": "^0.8.1"在我的package.json )。 这是我的错误: > bcrypt@0.8.1 install /home/ubuntu/app/node_modules/bcrypt > node-gyp rebuild child_process: customFds option is deprecated, use stdio instead. make: Entering directory `/home/ubuntu/app/node_modules/bcrypt/build' CXX(target) Release/obj.target/bcrypt_lib/src/blowfish.o make: g++: Command not found make: *** [Release/obj.target/bcrypt_lib/src/blowfish.o] Error 127 make: Leaving directory `/home/ubuntu/app/node_modules/bcrypt/build' gyp ERR! build error gyp ERR! stack Error: `make` failed […]

Sencha应用程序在Facebook的iFrame得到一个“不能POST /”

我有一个使用在Amazon EC2(微型实例)上运行的Node.js和Socket.io的Sencha Touch应用程序。 我想在Facebook上,在Facebook的canvas,也就是HTML的iFrame。 我得到一个空白页面Cannot POST / iframe在这里(当我做“在新窗口中打开框架”它打开应用程序)。 我不知道在这里做什么…为什么我会得到一个POST / ? 我在应用程序中使用Facebook的JavaScript SDK,但评论代码不能解决问题。

在Debian 6上安装nodejs

很多(旧的)post都提出,如果想在Debian 6上安装node.js(在我的情况下,这是我正在试验的Amazon EC2 t1.micro实例),那么需要编译自己的事实Debian软件包显着滞后于Node.js开发的疯狂步伐。 node.js网站列出了v0.10.17作为当前的稳定版本。 当前nodejs包的信息也很好的列出了(0.10.17〜dfsg1-2)这听起来不错吧? 毕竟不必做! 问题是这个请求: sudo apt-get install nodejs 产生这些结果: Reading package lists… Done Building dependency tree Reading state information… Done E: Unable to locate package nodejs 所以我的问题是这样的:当我看到一个包是PLANNED但尚未创build,或者有可能是一些apt-get问题,我的安装只是看不到nodejs包,因此无法安装它? 我坚持不得不做一个? (顺便说一句,当我尝试它时炸毁了我)。

我如何在亚马逊ec2服务器上find我的Nameservers?

最近我有一台Amazon EC2微型服务器来学习如何使用nodejs。 (我不是服务器精明BTW)。 我设法安装了所有东西,并在服务器上运行nodejs并运行它们的示例脚本。 在亚马逊我设置服务器安全组,以允许所有/ icmap – 所有/ tcp – 0 – 65535 / ssh / HTTP / HTTPS所以基本上一切都允许或多或less。 我的问题是如何find我的名称服务器,以便我可以在我已经购买的新域名上使用它们。 如果是这样的话,我可能会完全错误,错过许多步骤。 你知道一个很好的教程如何做到这一点? 感谢和遗憾的一般问题。

在amazon ec2实例中处理I / O请求

学习节点后,JavaScript和所有其余的困难的方式,我终于要释放我的第一个Web应用程序。 所以我订阅了amazon web services,并创build了一个微型实例,计划在第一年的免费层 ,让我的应用程序提供给世界。 我更关心隐藏成本。 我知道,免费层每月为Amazon EC2 EBS提供100万次I / O请求。 事情是,我开始testing我的应用程序一个EC2实例来检查一切运行正常; 而且我已经有超过10万个I / O请求 。 我基本上是迄今为止唯一使用它的实例 ( 实例运行37小时 )。 所以我很担心如果我的应用程序获得一些stream量会发生什么事情,而且我不想在本月底结束一个巨大的意外账单。 我觉得很奇怪,因为我主要服务于静态的东西,而我的服务器端代码包括: 从客户端接收search请求 1个http请求到一个网站 1 https请求的YouTube的API 将数据保存到mongoDB 将结果发送给客户端 你有什么build议,如何大幅度减less我的IO? 我目前还没有使用其他亚马逊服务,也许我错过了什么? 或者,也许亚马逊免费层在我的情况下不够,但那么它可以足够呢? 我的意思是,我的应用程序毕竟是非常简单的。 我很乐意为您提供任何帮助 谢谢!

AWS应用程序负载平衡器和socket.io

我有一个socket.io聊天室,运行的stream量越来越大,因为我们在一台机器上运行。 我们使用ws库来运行基准testing,并且它们的性能会更好,这样可以更好地利用我们的硬件。 这将花费不得不重写我们的应用程序。 我们的socket.io应用程序允许用户创build使用命名空间实现的私人聊天室。 例如 localhost:8080/room/1 localhost:8080/room/2 localhost:8080/room/3 当一切都在一个实例中时,这很容易,但现在我们正在考虑将这个容量扩展到多个节点。 我们在亚马逊的云中运行这个实例。 以前它看起来像缩放websockets是ELBs的问题。 我们已经注意到,亚马逊现在支持和应用程序负载平衡器,它支持websockets。 这听起来不错,但是在阅读完文档之后,我必须承认我并不知道这意味着什么。 如果我使用带有数千个命名空间的socket.io,我只是将这个实例放在这个ALB的后面,一切都会运行?我的主要问题是: 如果x个用户join名称空间,ALB会自动将消息redirect到适当的用户,还是自己的用户? 假设我有5个vanilla socket.io实例在ALB后面运行。 用户1创build一个名称空间。 几个小时后,传递和用户99999来,并希望join这个命名空间,是否需要有任何额外的代码写这样做,或者白蛋白会redirect它应该去的一切? 发送和接收消息也是一样的吗?

NPM问题使用AWS codedeploy部署nodejs实例

我目前正在尝试通过Github和AWS Codedeploy自动将nodejs应用程序部署到EC2实例。 我尽可能地遵循了这里的指示,但是我的AfterInstall钩子事件却遇到了麻烦。 这是我的XML文件: version: 0.0 os: linux files: – source: /backend destination: /home/ec2-user/signal permissions: – object: / pattern: "**" owner: ec2-user group: ec2-user hooks: ApplicationStop: – location: backend/app/deploy/stop.sh timeout: 10 runas: ec2-user BeforeInstall: – location: backend/app/deploy/beforeinstall.sh timeout: 1200 runas: ec2-user AfterInstall: – location: backend/app/deploy/afterinstall.sh timeout: 1200 runas: ec2-user ApplicationStart: – location: backend/app/deploy/start.sh timeout: 60 […]

Node.js获取高内存使用率的通知

我在Amazon EC2的Ubuntu 14上运行了一个Node.js应用程序。 如果内存使用量达到特定的大小,我想发送电子邮件。 我知道,PM2公开了一个API,它允许在达到一定的内存使用量时重新启动应用程序。 现在我不想在这个时候重新启动应用程序,只是为了得到一个关于它的通知,并用它来做任何我想要的(在我的情况下,发送一封电子邮件)。 我怎样才能使用PM2或任何其他免费工具?