Amazon的aws服务使用笔记 博客分类: 云计算 应用服务器lighttpdSSHGAE云计算
注明:其实不用下列那么麻烦,SecureCRT的新版本是可以直接访问亚马逊Amazon EC2主机。有网友回复说:刚发现新版本的SecureCRT直接就支持Amazon EC2的密钥了,还是去升级SecureCRT吧。
以下是提供给linux用户访问aws服务使用的。
申请
参看这篇图文教程:
http://yinhm.appspot.com/2010/10/amazon-ec2-micro-instance-and-tunnel-guide
登录
我选择的amazon linux,是amazon基于centOS的修改版本。安装后默认用户名是ec2-user。amazon linux默认情况下只支持ssh登录,不支持用户名密码登录。
linux使用如下命令登录
ssh -i .ssh/axu.pem ec2-user@xxxxxx.compute.amazonaws.com
我绑定了域名,可以直接用域名登录,也可以用ip。
ssh -i .ssh/axu.pem ec2-user@axu.com.cn
登录后是普通用户权限,操作经常要sudo获得权限,有点麻烦。可以用命令sudo -i换成root帐号。
window可以使用putty,secureCRT等SSH终端执行上述命令。
上传文件
使用scp命令对linux用户来说是最简单的上传文件方式
先SSH登陆到主机,然后将文件夹加上写权限:
sudo chmod 0777 /var/www/
最后拷贝文件
(命令在本机执行,非aws主机)
scp -i .ssh/axu.pem blog.zip ec2-user@axu.com.cn:/var/www/blog.zip
其他系统的用户可以尝试一下下面的两种传文件方式:
firefox 插件
http://aws.amazon.com/developertools/609?_encoding=UTF8&jiveRedirect=1
FTP
http://www.cloudzone.it/forum/amazon-web-services/installazione-e-configurazione-di-un-server-ftp-su-ec2-t18.html
绑定域名
要绑定域名,最好先使用免费的Elastic IPs服务获得一个固定IP,否则每次重启服务器ip都会变动。然后将申请到的ip与相关实例(Instance)绑定(Associate),最后将A记录指向该IP就行了。
如果绑定二级域名,还可以使用CNAME的方式。
安装lighttpd 和 PHP
安装完官方推荐的标准镜像后,系统自带了apache。但我喜欢用lighttpd。主要原因是lighttpd基本上能满足我的所有需求,而apache 太庞大,性能不够好。Nginx也是比较热门的web服务器,性能比lighttpd要好,是目前PHP应用的最佳选择。不用Nginx主要是因为它对 python支持不好。
安装命令:
sudo yum install lighttpd php
具体配置参照网上的相关文章
如果找不到各程序以及配置文件路径,可以用whereis 命令查找。例如:
whereis php
whereis php-cgi
whereis lighttpd
网站根目录在/var/www/lighttpd
如果lighttpd起不来,多半是各种目录没有可写权限的问题。php文件要加可执行权限。
可以查看lighttpd的日志查看哪里出了问题。
sudo cat /var/log/lighttpd/error.log
可以用如下命令给网站根目录下所有文件和目录加上读,写,执行权限:
sudo chmod -R 0777 /var/www/
安装完PHP后要给存放的session目录加上可写的权限,否则session功能会失效。
sudo chmod 0777 /var/lib/php/session
体会
整个aws ec2使用过程还是比较顺畅的。对于我这个第一次接触的人,从申请服务,安装linux系统和程序,上传网站文件,绑定域名到开通网站,一共用了不到1个小时。如果换成在国内DIY一个独立主机,一个小时装个系统都不够。这充分体现了云计算的优势。
在我看来,“云计算”服务要满足大部分的互联网领域的需求,需要:
1.和VPS一样提供完整的操作系统以及抽象的硬件层能力。如果不能提供完整的操作系统,包括root权限,开发程序就难免受限。而互联网应用程序和底层所用的硬件类型其实相关不大。提供抽象硬件层,则能做到按需付费,提高系统灵活性,节省成本。
2.规模化带来的极具竞争力的价格。
3.各种其他能解决通用问题的附加服务。计算机的一个优势是能将重复劳动的工作自动化,而且自动化后服务的成本将极低。云计算如果能提供一些通用问题的自动化解决方案,则在低成本的同时能帮用户节省大量人力物力,达到双赢的效果。
如果能做到这几点,自定义diy主机几乎就没什么优势了,云计算提供商就能变成和电信运营商一样的基础设施提供商。
从目前amazon提供的云计算aws服务内容来看,基本上都较好得满足了上面几点。aws适合从在校学生,创业公司,到中型互联网公司(例如zynga)的各种用户群。
比较google的GAE和Amazon 的AWS,也是有意思的一件事情。google 提供的GAE并没有提供完整的操作系统,其实更像一个内部使用的系统,而不是适合其他公司商业应用的云计算。粗一看,似乎更应该是google推出aws 这样的更符合geek,创新小公司等使用的云计算服务,而amazon这种电子商务公司应该推出像网店系统一样的GAE。为啥情况刚好反过来呢?
仔细分析一下,这也倒符合两者的商业逻辑。google提供的产品,如搜索,gae,google docs等,其实都更像一个软件产品,没有摆脱微软的路子,google本质上更像软件公司。
amazon表面上是一个卖各种产品的大卖场,但实际上它扮演的是物流服务提供者的角色。它除了kindle并不自己生产产品。它起的作用就是让产品更低成本得从商家流通到消费者手中。它赚的是规模化带来的低物流成本的钱。
kindle也是这样。众所周知,对于amazon来说,卖kindle的重点并不是卖这一款产品,而是卖电子出版这种服务。amazon做的是让图书更低成本得从出版社流通到读者手中,amazon赚的是电子物流的钱。
而现在aws所做的是提供低成本的计算能力的服务,赚的还是规模化后低成本的钱。
可以说,amazon不是一家传统的电子商务企业,更像一家网上的基础设施服务提供商。另外它的CEO肯定是个技术大牛。在可预见的将来,amazon 的云计算将对于整个行业产生非常大的影响和正面促进作用,可能像之前的amazon网站和kindle一样颠覆所在行业的游戏规则。