Amazon EC2不同账号之间实例共享(国外服务)
从已有的机器自己制作EC2的AMI
我一直用Amazon AWS提供的免费虚拟主机来服务我的网站可靠云服务. 根据我的观察,虽然是t1.micro的机型,但是稳定性非常好,比hostmonster的VPS稳定多了.
然后我用另外一张信用卡申请了另一台机器,打算再部署一个网站.
我用的系统映像文件(AMI)是亚马逊提供的Ubuntu 12.04,这个AMI挺方便的,就是太简洁了, Apache,PHP,MySql都要安装,要是新机器上我再装一遍,估计能花掉我一晚上时间.
我就想:”何不从老机器上自制一个AMI,供新机器使用?” 事实证明, Amazon的支持机制非常完备,一路非常顺利!
1. 从已有的机器自己制作EC2的AMI.
这个很简单,直接上图.
图片说明
期间有一些选项,基本不用动,使用默认的就好了. 提交之后, AWS大概需要五分钟左右来完成任务. 当看到AMI的状态为从pending变成available的时候,就表示AMI制作好了
2. 把AMI分享给另外一个AWS账号.
还是上图
图片说明
然后你得到
图片说明
选择Permission之后,你要是完全没有安全上的考虑,可以把AMI设置为public,那也就是说任何一个人都可以使用你的AMI. 不过这个对我不适用,我选择保持permission为private,但是给我第二个账号增加使用权限. 注意这里需要的是Account Number,不是Account Name.
2使用AMI创建新EC2 Instance
3. 使用AMI创建新EC2 Instance
还是上图,一图解千言.
图片说明
先选择My AMIs,然后在搜索框里填写你刚才创建的AMI的名字,下面就筛选出来了,点解”select”就可以往下走.
后面的步骤很简单,值得注意的是,在Create Key Pair的时候,选择Proceed without a Key Pair. 为什么?因为你用的AMI里已经有了你的公钥对啊.
4.修改新EC2 Instance的安全规则.
不知道Amazon AWS搞什么飞机,新机器只有一个默认安全组,其规则是只允许内网访问,并且AWS现在还不支持机器更改安全组.所以你需要手动修改新机器所在的default securitygroup的权限. 一般来说,你需要添加 TCP 22, TCP 80, TCP 443这三个端口的访问权限. 上图:
图片说明
5.访问你的新机器.
修改后的防火墙规则差不多是一分钟左右就生效的,你等上一分钟,就可以用telnet访问22端口了.
Ubuntu的AMI是不支持密码登陆,只支持公钥登录. 由于公钥已经由AMI带过来了,因此你用客户端,比如SecureCRT,访问新机器的时候,只需要复制一个新session,然后改一下主机地址就好了,省去了登录时候创建公私钥对的麻烦.
如果你一路没有问题走到这里,你的新机器就ok了,实际上我这次复制新机器的时间,还没有我写这篇文章的时间长.