[转载]Amazon AWS 漫游指南

奔着Amazon AWS打着的免费旗号,今天我也开通了Amazon AWS帐号。本来想把开通流程写下来的,发现已经有网友写有详细的流程,故转载之。
原文地址 http://yinhm.appspot.com/2010/10/amazon-ec2-micro-instance-and-tunnel-guide

本文适用对象

  • 您希望建立自己的英特网漫游隧道
  • 您有一张可以刷外币的信用卡,比如VISA。手机。
  • 您有基本的英文阅读技能

开始前需要注意

  • 本文作者不对任何因本文造成的费用负责;
  • Amazon包含750小时的free tiers活动从2010年11月1日开始,10月20日后注册的新用户 都可以享受此项服务;
  • Free tires包含10GB EBS,30GB带宽(SSH proxy的话,实际上只有15GB),超出部分仍然需要付费;
  • 本文作者不熟悉Amazon EC2等服务,部分描述或理解可能有差错。

注册Amazon AWS账户

注册Amazon账户

启动浏览器,访问 http://aws.amazon.com/ ,点击”Sign Up Now”:

转入amazon账户登陆页面,如果您已经是amazon的用户,可以直接登陆,本文假设您还没 有amazon账户,注册新用户:

  1. 输入email地址
  2. 选中”I am a new user.
  3. 点击”Sign in using secure server”

转入新用户注册页面:

  1. 姓名
  2. email地址
  3. 重复email地址
  4. 账户密码
  5. 重复密码
  6. 点击”Create account”

转入联系信息页面:

  1. 联系地址:街道,公司,必填
  2. 联系地址:几单元门牌号等,按需填写
  3. 城市
  4. 省份
  5. 邮编
  6. 国家:china
  7. 电话号码:直接填写,无需 +86
  8. 协议
  9. 验证码

注册AWS账户

联系信息提交成功后转入AWS登陆页面,输入email,密码,登陆后,转到AWS联系信息页面,虽 然之前注册Amazon账户已经填写过联系信息,注册Amazon AWS账户还是需要充填一遍,按 照原先输入的信息表单会自动补全。

联系信息提交成功后,AWS账户注册步骤完成了。Amazon AWS会email通知告诉你接下来 如何如何。

填写信用卡信息

Amazon EC2一般的付费模式是On Demand按需付费,不用不付费。在使用之 前需要关联信用卡信息到您的AWS账户。

点击上面邮件中的account链接,或直接访问:http://aws.amazon.com/account,点击 Payment Method ,登陆后转到支付方式页面,输入你的信用卡信息 Continue。

继续转到账单地址页面,选择注册AWS时提供的地址 Continue

信用卡验证会刷掉1美金(我的理解是预付费,验证不会真的扣钱,这点我并未去证实),如果没有成功会收到邮件通知更正信用卡信 息,Account Activity页面也会提示你更新信用卡信息或者用已有信息 重新验证。

开通 AWS EC2 等服务

开通AWS相关服务需要登陆AWS管理后台console。访问 https://aws.amazon.com/console ,点击 Sign in to the AWS Console,登陆后转到AWS后台。

默认登陆console后转到 Amazon S3 管理页面,点击 Amazon EC2 转到 EC2 管理页面,点 击 Sign Up For Amazon EC2
转到电话验证页面

  1. 选择China
  2. 填写手机号码,无需+86
  3. 点击 “Call Me Now”

点击后,此页面转到第二步,显示 PIN 验证码。

同时接收到亚马逊电话验证,输入您浏览器页面中的PIN码,信息验证完成。 转到第三步,点击Continue。

转到完成启用服务确认页面,这个页面展示不同机房不同服务的收费情况,并非配置页 面,直接Complete Sign Up

系统提示正在启用订阅,订阅后会发送邮件到你的邮箱。

至此EC2服务已经开通。可以进入console跑instance啦!

启动实例

打开 https://console.aws.amazon.com/ec2/home 进入 EC2 console:

  1. Amazon S3: S3存储服务,可不用
  2. Amazon EC2: 类似传统的VPS服务,可以在这里启动Instance,增加EBS硬盘
  3. Region: 四个可选区域,一般来讲国内连西海岸加州机房较快,如果对国内提供web服 务,也可以考虑新加坡机房,新加坡机房价钱要贵一些。
  4. Instances: 所有实例(VPS)
  5. AMIs: 所有AMIs,可以看成是不用安装的操作系统,选择一个启动即得到一个 Instance。
  6. Volumes:EBS硬盘,EC2默认不带存储,虽然可以通过存储在S3的AMI启动,但当你关 闭或重启Instance后,所有数据都会消失。而通过存储在EBS的AMI启动则不会有这个问题。 所有数据变更保存到EBS中。您也可以添加额外的EBS挂在到某个Instance。
  7. Snapshots: 增量备份的系统快照。
  8. Elastic IP: EC2的Instance是变化的,如果你需要固定的IP,可以在这里设置,不过 需要注意,如果你分配了固定IP但是没有挂载到任何Instance上,你会被Amazon惩罚性收费。
  9. Launch Instance: 点击启动新的Instance实例。

点击 Launch Instance, 打开实例向导窗口:

这里我们用的是默认的第一个 AMI, Basic 32-bit Amazon Linux AMI 1.0,大致解释一下:

  • Amazon Linux是Amazon基于fedora为EC2定制的AMI,默认禁止root ssh密码方式登陆, 去除不需要的服务等,默认配置更加安全。
  • 自带 Amazon 工具包。
  • Amazon每个Region都为Amazon Linux提供了软件仓库,更新软件不造成带宽费用。
  • micro instance更适合跑32-bit linux。
  • EBS boot,默认配合10GB的EBS。
  • 使用此instance没有额外费用。
  • 选择Windows instance,需按使用支付Windows授权费用。
  • 这里没有选择ubuntu的原因是因为我发现Ubuntu的AMI默认是15GB的EBS,而free tier 只提供了10GB的EBS硬盘。

点击Select,进入向导第二步:

  1. 实例数,默认为1,free tiers包含每月750小时的micro instance,如果不间断运行 的话,正好够跑一个instance。
  2. 可用区域,这里用了默认的,无特别喜好。
  3. 实例类型,必须选择Micro,除非你不准备使用免费的micro instance。
  4. 启动实例,对应的另外一个选项是”Request Spot Instances”,类似竞价方 式在空闲的机器上跑Instance,这个用默认的。

点击Continue转到高级实例选项设定,这里全部默认。

点击Continue转到Tag设定页面,可以不设定直接跳过。

点击Continue进入”Create Key Pair”:

  1. 指定一个密钥名称,如: fookey
  2. 点击生成并下载密钥,这个密钥需要妥善保存,有了这个密钥,可以随时打 开(登陆)您跑在amazon aws上的机器。

点击Continue进入”CONFIGURE FIREWARE”:

配置防火墙页面,这个设置安全组别为”Web”, 并添加了”http”, “https”,允许此台服务 器提供web服务。

点击Continue进入”Review”:

注意一下,Instance Type为 Micro (t1.micro)

点击”Launch”启动Instance。基于EBS的AMI启动大约需要1分钟。

点击View your instances on the Instances page察看Instance状态。

您应该已经看到有一个 t1.micro status为Running,至此您的micro intance已经启动,意味这您有一台可以ssh登陆的linux服务器啦。

用它来做什么

  • 用来做web服务器,跑php, python, ruby网站
  • 用来跑SSH proxy, VPN
  • 更多…

SSH proxy在Linux下很简单,一条命令即可:

  • 系统只允许通过key密钥登陆
  • 我们安装的AMI,默认登陆用户为 ec2-user
  • 用你的Public DNS代替 YOUR_AMAZON_PUBLIC_DNS
  • 跑了一个ssh forward监听本地10003端口

Public DNS可以在Instances详细信息中找到,

Windows用户

Windows默认没有ssh客户端,需要下载putty。putty默认不支持Amazon ec2的key,需要做转换,具体过程请参考官方文档

做tunnel的话还需要在putty中设定tunnel选项,如端口,动态,自动等。具体还请大家自 行测试。或者看这里: SSH Tunneling Proxy using Putty on Windows and Linux

进一步学习Linux

  • 一本linux书籍
  • 看看 fedora文档:http://fedoraproject.org/
  • 去国内的社区寻求帮助,如linuxsir

-EOF-

Godaddy 1美元特价域名优惠码(2010/10/28)

经济真是不景气啊,Godaddy的特价域名优惠码也涨了一美分,在沉寂了一个多月以后终于释放出了新的1美元特价优惠码,和以前一样只支持信用卡。

优惠码:SCARYONE
支付方式:信用卡
优惠类型:注册或转移COM, .US, .MOBI, .BIZ, .NET, .ORG, .CA, .CO.UK and .IN
优惠幅度:注册或转入仅需$1
截止日期:2010.11.27或者前10000名客户可以使用。
访问Godaddy
-EOF-

Python文件编码

Python文件编码格式声明是以源文件第一二行上的注释内容标识,以下三种用都是可以的:
1.直接进行声明

2.解释器声明后进行声明

3.或者一些编辑器可以识别的形式

实际确定文件编码其实是在源文件头两行搜索下面这个正则表达式。

如果没有进行代码级的编码声明但是文件是以UTF-8形式保存(带有’\xef\xbb\xbf’ 标识)也会被认为是UTF-8编码。如果文件带有UTF-8 BOM标识但是注释声明的不是UTF-8,则会引起错误。

下面的声明都是正确的

编码声明不在第一二行则会被忽略。

via PEP 0263
-EOF-

在Mac OS X中启用Apache与PHP

Mac OS内置了Apache和PHP的支持,需要使用只需要打开相应配置即可。

启动Apache
打开“系统设置偏好(System Preferences)” -> “共享(Sharing)” -> “Web共享(Web Sharing)”

打开浏览器访问http://localhost就可以看到”It works!”,而Mac OS系统默认用户站点访问路径是http://localhost/~username形式的,这给我们平时使用带来诸多不便,这里我们将其稍作修改使http://localhost直接访问自己的站点目录。

  1. 打开终端,进入到自己的站点目录,获得自己站点位置的路径

    此时输出
    /Users/Username/sites
  2. 运行
    找到/Library/WebServer/Documents(有两处)
    将其替换为上面得到的站点路径/Users/Username/sites
  3. 保存文件, 运行 重启Apache。

从访问http://localhost, 便是访问自己站点目录下的文件了。

启用PHP

  1. 在终端运行
  2. 找到“#LoadModule php5_module libexec/apache2/libphp5.so”,把前面的#号去掉。

  3. 保存文件, 运行

    重启Apache。

写个php文件

命名成info.php放置到站点目录下,然后访问http://localhost/info.php就可以看到PHP的相关信息了。
-EOF-