Amazon AWS EC2 使用教學 WordPress 示範

Amazon Elastic Computing Cloud

時間 :15:51 取得文章短網址

文章分類 : News

本文會教大家利用免費  Amazon Web Services, 又名 AWS EC2 (Elastic Cloud) 來代替傳統 VPS ( Virtual Private Server) 來架設 WordPress 網站系統。現在不少企業站都托管在共享主機 (Shared Hosting)上面,通過固定的月租費用來放置網站,但在 AWS EC2 建立一個新網站和郵件伺服器可以在數十分鐘內完成。使用 AWS EC2 你的網站將有能力應付突如其來的流量,還可添加更多服務器並平衡負載。

AWS EC2 使用教學

AWS EC2 使用教學

Amazon Web Services – Elastic Computing Cloud, AWS EC2 更容易升級更新

在AWS EC2雲端建立一個新服務器可以在數分鐘內完成。使用該服務,你的網站將有能力應付突如其來的流量爆發,比如你的博客文章被推薦到了Digg或者Reddit的首頁,你可以添加更多服務器並平衡負載。

經濟有效的大規模服務能力

如果你的站點吸引了大量的用家,並且最終超過了主機的正常伺服能力,AWS EC2 將給你一個經濟有效的辦法來設計一個符合你的需求的網站服務架構,而你並不需要去僱傭一個完整的網絡運作團隊來安裝和管理網絡。這也是許多 Facebook 開發人員選擇AWS EC2  雲服務器的原因。

完善的安裝與設置

在運行 WordPress 時,這一點可能不是太重要,但如果你想使用 PHP 和 MySQL 之外的一些東西來建設你的下一個項目,則沒有必要請求主機公司的幫助,你可以就像在你自己的服務器上一樣安裝你所需要的軟件。 是否把 WordPress 站點放到 Amazon Web Services – Elastic Cloud EC2 雲端由你的博客流量決定,並且你可以根據你的實際需求來決定服務器配置。通過下面的指南,你可以了解到怎樣迅速的在 EC2 上設置和運行服務器。

第1步 – 建立Amazon 網絡服務(AWS)賬戶

在使用 AWS 雲服務之前,你需要在 Amazon 網絡服務(AWS)建立一個賬戶,去 aws.amazon.com點擊“立即註冊”註冊。

AWS EC2 使用教學

AWS EC2 使用教學

如果以前使用過 Amazon.com 的服務,這裡可以直接使用同樣的電子郵件和密碼來登陸 AWS,當然你也可以選擇「I am a new user.」建立一個新的用家。

在註冊階段,需要輸入你的聯繫訊息和信用卡訊息,以便 Amazon 向你收取服務的費用。建立賬戶是免費的,不過使用其他的服務則都是需要花錢的。

定價模型很簡單 - 以服務器運行的小時為標準來收費,不過因為選項的不同,價格的計算可能比要複雜得多。當你在Amazon上運行你得站點時,在讓服務器運行之前,最好仔細並重複檢查價格計算,免得在月底得時候被帳單嚇到。

我們的WordPress安裝不會超過一個小時,在我們完成前,我們會停止所有的服務,所以完成本指南不會花我們一分錢。

Step 2 – 開啟你的第一台服務器

服務器安裝包括兩個部分:

  • 託管在 Amazon EC2(Amazon’s Elastic Computing Cloud)上面的應用服務器,用來運行Apache和PHP,將WordPress安裝在上面。
  • MySQL 數據庫將託管在 Amazon RDS(Amazon’s Relational Database Service)。

另由一個便宜,但更麻煩的方案,你可以手動安裝MySQL服務器與PHP和Apache在同一個服務器。在本指南中,我決定使用 Amazon 的關係數據庫服務,因為這更容易使用,並且, Amazon 會考慮數據庫的備份和維護,你沒有必要擔心附加的安全細節問題。

現在我們開始建立我們的第一個應用服務器實例。

在 AWS Management Console 點擊EC2標籤, 因為是第一次使用EC2服務,你需要另外註冊該服務,點擊 「Sign Up For Amazon EC2〞 按鈕開始:


特別步驟,Amazon需要打電話給你來驗證身份。整個過程自動進行:驗證碼輸入正確後,會被重定向到下一個頁面。

在註冊過程完成後,返回到管理控制台和EC2標籤。你將看到下面的頁面,點擊 「Launch Instance」 按鈕。

網頁會彈出一個 Amazon Machine Images (AMIs) 的列表.

AMIs 是正在運行的計算機的快照

多數計算機都包含了操作系統和其他一個基礎軟件,但是你還可以根據自己的需求建立更複雜的AMIs,甚至可以包含你的完整應用。我們選擇了最基本的選項:「Basic 32-bit Amazon Linux AMI 1.0.」 點擊 「Select」 進入你選擇的AMI。

選擇了AMI之後,下一步就是選擇需要的硬件類型。根據選擇的32位或64位AMI,我們會看到不同的列表,32位的AMIs提供更便宜的選項。作為測試,我們不需要太多的記憶體或處理能力,因此我們開了一個微實例。選擇實例類型並點擊 「Continue.」

下一屏,採用默認值就好,點擊 「Continue.」

當你有多個不同規則的虛擬機後,你很容易會忘記每個機器的作用,你需要用大量的時間來查找正確的服務器。因此,對服務器的命名顯得非常重要,當然在本指南中我們只運行一個實例,所以名字就顯得不那麼重要了。

下一步,你會被問到建立一個鍵值對文件來安全地連接到服務器。Key 代替了用SSH連接到機器的密碼。命名你的Key Pair File,點擊 「Create & Download your Key Pair.」 拷貝鍵值對文件到一個安全的位置 (如果你使用Mac OSX或者Linux,~/.ssh 是一個好位置)。拷貝文件後,修改文件權限到400:

chmod 400 wordpress_demo.pem

如果你使用Windows,你可以使用 PuTTY for SSH. PuTTY 使用它自己的鍵值格式(ppk),因此你需要使用Puttygen工具轉換key到ppk格式。

Key pair 建立之後,你會被要求在你的新機器上配置防火牆。默認情況下,沒有人被允許連接到該機器 - 所有端口都是關閉的。我們打開了端口22(SSH)端口80(HTTP),我們能夠通過SSH配置機器並且從瀏覽器訪問博客。

繼續,檢查配置,如果沒有發現任何不對,點 「Launch.」 完成安裝

回到Dashboard,你會注意到新建實例的狀態顯示為 「pending,」,過幾分鐘後會顯示為 「running.」 ,這就意味著服務器已經啟動並開始運行 - 你可以開始使用了。

Step 3 – 安裝需要的服務器軟件

在實例名稱的右鍵菜單中,選擇 「Connect」 ,彈出一個包含SSH命令的頁面窗口

登陸SSH的命令與下面的格式類似:

ssh -i wordpress_demo.pem root@ec2-….compute-1.amazonaws.com

如果你把pem key保存在~/.ssh,你需要在命令中包含路徑。還有,你需要修改root用家為ec2-user, Amazon 不允許新的AMIs安裝用root用家連接服務器。

登陸後,你就能像使用任何Linux主機一樣使用虛擬機。安裝軟件,我們用Yum安裝器來安裝Apache服務器,輸入下面的命令來安裝Apache:

sudo yum install httpd

下一步,用以下命令安裝PHP:

sudo yum install php

通過下面的命令安裝php-mysql擴展:

sudo yum install php-mysql

好了,安裝完成開始準備測試Apache。用下面的命令啟動Apache(你可以用「stop」或「restart」來停止或重啟Apache):

sudo /etc/init.d/httpd start

Web服務器啟動後,拷貝機器的URL到瀏覽器測試:

Step 4 – 建立數據庫機器

在安裝WordPress之前,我們需要一個數據庫。用RDS設置一個數據庫很容易,在AWS控制台,點RDS標籤,點 「Sign Up For Amazon RDS」 開始安裝數據庫機器。

安裝完以後,回到AWS控制台的RDS標籤,點擊 「Launch DB Instance.」 啟動數據庫實例

在彈出窗口設置需要啟動的數據庫屬性,比如服務器實例,分配的存儲空間等。我們為數據庫分配了5個G的空間,足夠測試用了。為數據庫服務器實例和根 用家命名,我們使用「wordpress-db」作為數據庫服務器名,「root」 / 「rootpass」, 作為管理登陸。因為做測試,我們使用簡單好記的登陸名,但如果要考慮更安全的登陸,建議採用較複雜的命名。

數據庫服務器設置完成後,你會被要求在服務器上定義一個默認的數據庫。數據庫名我們設置為「wordpress」

點 Contiune 到下一步,你可以定義數據庫的備份設置,保留默認值直接Continue進入下一步。

驗證無誤後,點 「Launch DB Instance.」

建立數據庫實例的時間比建立EC2實例的時間稍長一些,大約5分鐘左右以後,你就可以在instances標籤看到狀態為有效 「available」 了。

點擊實例可以看到更多的數據訊息,拷貝「endpoint」的值,這也就是我們用於wordpress安裝的數據庫服務器的URL。

在安裝WordPress之前還有一個步驟就是我們還需要為數據庫配置防火牆,以便應用服務器能夠訪問它。回到RDS標籤,點 「DB Security Groups.」 ,在這兒你會看到沒有任何授權的應用:

要讓應用服務器訪問數據庫,我們需要授權它的安全組到數據庫的安全組。從「No Authorizations」下面的下拉列表中選擇 「EC2 Instance」 ,並輸入安全組的名稱(「wordpress_app_server」)和你的Amazon Account ID.賬戶ID在AWS設置中是隱藏的,第一次點擊「Account」鏈接,然後點 「Security Credentials」 就可以找到。輸入需要的訊息然後點「Add」,你就可以看到安全組已經被授權了,現在可以開始安裝WordPress了。

Step 5 – 安裝WordPress

重新打開SSH連接到應用服務器,下載WordPress到服務器,默認情況下Apache配置HTML文件在 /var/www/html/目錄

cd /var/www/html
sudo chown ec2-user
wget http://wordpress.org/latest.zip
unzip latest.zip

安裝需要建立wp-config.php文件,用下面的命令修改wordpress目錄屬性:

chmod o+w wordpress

在瀏覽器輸入URL路徑開始安裝wordpress

在wordpress數據庫設置頁面,我們的數據庫名是「wordpress」,Database Host一項填寫RDS實例的URL。

成功提交後,你的wordpress就成功安裝在 Amazon 雲上了。

Step 6 - 停止所有服務

在本指南開始的時候我們提到過,AWS是按照使用的小時數來計費的,所以在測試完成後確認你不會有費用支出,確認停止所有的服務。首先,停止EC2實例。如下圖所示

停止數據庫也很容易,不過你不能重新恢複數據庫。幸運的是你在停止數據庫的時候,可以選擇保存數據快照。你以後可以使用保存的快照數據重新建立數據庫安裝。在RDS標籤,右擊數據庫實例,選擇「Delete」刪除

好了,確定服務都關閉後,退出AWS控制台,你的WordPress博客已經無法訪問了。

原文:Deploy your WordPress Blog to the Cloud

你可能會對以下文章有興趣:

2 回應關於

Amazon AWS EC2 使用教學 WordPress 示範

  1. Redapple

    Will u consider to talk more about how to develop opensource solution to EC2? Like OpenVPN, etc

发表评论

电子邮件地址不会被公开。