Download - Amazon ec2
主機建置與LAMP環境架設
2012/10/4
Amazon EC2
雲端服務類型: 第一種是「軟體即服務」(Software as a Service, SaaS),提供使用
者網路的軟體應用,例如Yahoo電子信箱、Google地圖、Youtube、
Facebook…等,甚至是趨勢科技的雲端防毒,都是我們最常見到的雲
端服務類型。
第二種是「平台即服務」(Platform as a Service, PaaS),指的就是
提供了平台來提供運算或解決方案,並提供了整合的API(應用程式介
面),可以讓客戶的應用程式放在該平台代管,佈署更簡便,而且節省
成本。例如微軟的Windows Azure、Google的 App Engine、Yahoo的
Application Platform、Salesforce的AppExchange平台…等就是
PaaS。
第三種是「基礎設施即服務」」(Infrastructure as a
Service, IaaS),直接提供硬體的環境及網路頻寬給企業用戶使用,例
如中華電信的HiCloud、IBM的Blue Cloud、HP的Flexible Computing
Services及亞馬遜的EC2…等。
Amazon雲端服務簡介 Amazon的雲端運算產品總稱為Amazon WebService(亞馬遜網絡服務,簡
稱AWS)
1. S3(SimpleStorageService,簡單儲存服務)
2. EC2(Elastic ComputeCloud,彈性雲端運算)
3. SimpleDB,類似Google BigTable的key-value database服務
4. VPC(Virtual Private Cloud,虛擬私有雲)、SimpleDB…等。
Amazon為了拓展業務,這個月開放了免費、為期一年的,只要是新客戶
均可免費註冊使用一年的雲端服務
AWS Free Usage Tier提供了每個月的免費用量有:
750小時的EC2 Linux Micro Instance使用(613MB RAM, 32/64位元平台)
5GB的S3儲存空間(兩萬次下載/兩千次上傳),30GB的網路總流量(上傳/下載各
15GB)
25小時的Amazon SimpleDB使用及1GB的儲存空間
※如果你的使用超過以上用量,則超出部份必須收費。
系統乘載量擴展性
網站應用常見的瓶頸除了頻寬不足之外,再來就是伺服器的效能不足而無法承受太多的連線需求,此時就該進行擴展(Scale);當伺服器效能不足需要擴展時,可採用水平擴展或垂直擴展:
《垂直擴展》意指更換伺服器或改善伺服器的硬體效能,例如增加記憶體、CPU數量,或是汰換舊機改用更高等級的伺服器。在Amazon EC2中共有五種等級可選用(2種32 bit系統、3種64 bit系統),若搭配S3運用,可在30分鐘內完成垂直擴展。
《水平擴展》
意指增加伺服器分散負載,以加速網站的服務,例如把資料庫、網站的服務移至不同台的伺服器。網站服務(httpd)的水平擴展經常使用HAProxy、Nginx或Apache來提供Loading balance
資料庫(mysqld)的水平擴展經常使用R/W Splitting、MySQL Proxy並搭配MySQL-Replication來應用,運用讀寫分流來增加資料庫運作效率。
Amazon RDS:一種類似MySQL的關聯式資料庫,強調不必自行處理擴展問題,完全相容於MySQL 5.1
申請了AWS的雲端之後有什麼用呢?
其實Amazon EC2就等於是一台虛擬主機,裡面可
以選擇安裝Linux或Windows Server 2008,只要
你會簡單的Linux或Windows架站技術,就可以透
過遠端連線的方式來安裝、管理這台虛擬主機,用
來架設網站或提供其他網路服務。
而Amazon S3可以當成你的儲存空間,每個月還
有上下傳各15GB的流量可以使用,拿來當異地備
援相當方便。
Xen架構 一般主機虛擬化軟體分為「Host OS型」和「Hyperhypervisor型」兩種
1.「Host OS型」的虛擬化層安裝在Windows、Linux等OS的上面,虛擬化層的上面再安裝其他的OS,虛擬化層下面的OS稱為「Host OS」,上面的OS稱為「Guest
OS」。
2.「Hyperhypervisor型」是直接安裝在主機上面,其他的OS安裝在它的上面,省掉「Host OS」所需要的資源,性能的表現較佳,CPU、Memory、Network、Storage
等的資源管理也較容易。
Xen採用的「Hyperhypervisor型」又分為,「準虛擬化」(Para-Virtualization)和「完全虛擬化」(Full-Virtualization)兩種。
1.「準虛擬化」的「Guest OS」必須要做修正,像開放程式碼的Linux等OS,可以針對Xen做些修正和調整,減輕負擔以及提升效能。
2.「完全虛擬化」的「Guest OS」完全不能做修正,適合像Windows的安裝
建立EC2主機
1.選擇EC2
選擇機房
1.建議選擇「US West」的北加州機房,對台灣速度較快(ping值大
約在130~140ms左右)。
2.按下Launuch Instance
選擇作業系統
挑選作業系統:這邊選擇Amazon Linux AMI 1.0 32/64位元版本,因為
其他的作業系統硬碟都需要10GB以上,免費的方案只有10GB,所以只
能選前兩種。
選擇方案
1.選擇「Micro」方案,不然其他方案可是要被收錢的
2.區域可選擇1a,1b
選擇Kernel,RAM編號
選擇第一個即可
設定連線金鑰
1.可以隨意輸入
2.下載.pem檔案 (SSH時要使用puttygen,轉解密成.ppk檔案)
系統安裝完畢
Linux常用指令 sudo –i 切換root權限
uname –r 確認OS版本
yum install XXX 安裝套件
Service httpd restart-重新啟動服務
open 80 port
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
service iptables save
參考網站 Amazon EC2 申請教學
http://blog.soft.idv.tw/?p=824
如何挑選Hosting
http://blog.xdite.net/posts/2012/04/18/startup-hosting-plan/
用yum來安裝LAMP
http://www.flash888.com/?p=216
http://blog.eukhost.com/webhosting/amping-a-server-in-10-minutes-using-yum/
Nginx Server
http://blog.wu-boy.com/2012/05/install-nginx-php-fastcgi-on-amazon-linux/
動態DNS設定
http://40era.com/1567/
Install phpmyadmin
http://blog.xuite.net/pippeng/blog/19089526
Amazon服務詳解
http://www.tts.bz/archives/103
Scalable
MySQL Proxy
http://kevyu.blogspot.tw/2011/08/mysql-proxy-
amoeba.html
MySQL Master-Master Replication
Manager(MMM)
http://blog.longwin.com.tw/2008/10/mysql-master-
replication-manager-mmm-intro-2008/