Amazon提供的一个免费一年的微型实例产品,引起了我的注意:
为了帮助AWS(Amazon Web Services)的新客户在云中入门,AWS引入了一个全新的,可以免费使用的等级。11月1日开始,新的AWS客户可以免费使用Amazon EC2 Micro Instance一年......
但是,要在Gemstone中运行一个Seaside应用程序,一个微型的实例已经足够了吗?答案是:YES。实际上,我已经试着创建了一个已经配置好的Gemstone EC2 Linux AMI (Amazon Machine Image)。在本文中,我将会为您讲述如何使用这个已经配置好的映像把Seaside应用程序快速而免费地部署到EC2(Elastic Compute Cloud)上。
(关于Gemstone EC2 Linux AMI的创建过程,可以参考这篇博文:http://www.nickager.com/nasite/blog/Installing-Gemstone-on-an-Amazon-EC2-Linux-instance)
注意:这些说明都是基于从一个MacOS客户端连接到一个Amazon EC2实例的;对于其他Unix客户端来说,这些说明也同样适用。对于一个Windows客户端来说,你可能需要下载:
PuTTY
Cygwin
并相应地修改这些说明。
创建一个EC2实例
首先到http://aws.amazon.com注册。登陆以后你就可以导航到下面这个界面了:
*在“Region”组合框上下拉,选择离你最近的区域。
*点击“Launch Instance”按钮来打开Request Instance Wizard
选择“Community AMI”标签,然后在搜索框中输入“ami-7f9bae0b”,这是已经配置好的Gemstone/Seaside实例的AMI(Amazon Machine Image) ID。在以前的一篇博文中,我已经记录下这个映像的配置过程了,关于这篇博文,可以参考本文前面给出的链接。
注意:在记录下这个截屏以后,我才认识到,“ami-7f9bae0b”只能用于“EU-WEST”区域,Amazon没有直接把它拷贝到其他区域。在接下来的几天里,我会试着让它可以在“US”区域中使用的,在此之前,只有把你的区域设置成“EU-WEST”,你才可以找到这个AMI。
如果你想使用Amazon提供的这个免费产品,可以选择“Micro”。Amazon对微型实例的描述如下:
这个系列的实例可以持续不断地给你提供少量的CPU资源,当其他周期可用的时候,你也可以增加CPU资源。它们比较适合那些低吞吐量的应用程序,以及那些周期性地消耗掉计算周期的Web站点。
接下来,我们给这个EC2实例输入一个RSA公钥,让它支持SSH访问。密钥是使用“ssh-keygen”命令生成的:
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/nickager/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/nickager/.ssh/id_rsa.
Your public key has been saved in /Users/nickager/.ssh/id_rsa.pub.
然后,使用“~/.ssh/id_rsa.pub”命令提取出你的公钥,用下面这种格式,把它输入到到这个实例的“User Data”域中
#cloud-config
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1y........
disable_ec2_metadata: true
格式:CloudInit(syntax)
不需要输入任何键/值对
因为我们在上面那个步骤中,已经把一个SSH密钥输入到“User Data”域中了,所以,无需再指定一个密钥对了:
对防火墙进行配置,打开22端口(SSH)和80端口(HTTP):
最后,点击“Launch”按钮,等待这个实例启动:
如果这个实例启动了,把这个实例的URL(Public DNS)拷贝下来:
把你的浏览器指向你的服务器的公用的DNS地址(例如:http://ec2-46-51-165-46.eu-west-1.compute.amazonaws.com),然后,你应该可以看到熟悉的Seaside欢迎屏:
恭喜你!你已经让属于你自己的,免费的Seaside服务器运行在Amazon EC2中了。
1234下一页