2016年3月30日 星期三

AWS 隨意筆記 (2) S3基本設定

2

上一篇完成了註冊與基本設定,接下來嘗試使用S3。


S3是什麼:

全稱為 Amazon Simple Storage Service,簡稱S3,超簡單的說,就是雲端儲存資料的服務。詳細介紹請看官網 AWS S3

是依照:「存取請求次數」、「資料傳輸量(流量)」、「資料類型(常用程度) x 儲存量」、「資料存放所在區域、資料傳輸目的地區域」來計算費用。

(並非像Google Drive之類雲端硬碟服務,只單純根據「儲存量」來計費。)


新手免費方案包含 :

註冊後,新的 AWS 客戶在第一年每月可以獲得 5 GB 的 Amazon S3 標準儲存、20,000 個 Get 請求、2,000 個 Put 請求,以及 15 GB 的資料傳出。

超出以上用量部分,會按照 Amazon S3 定價 收費。


創建儲存桶(Bucket):

建立bucket之前要思考一下,因為bucket類似於最底層根目錄,創建後名稱不能再修改,要想清楚這個bucket的用途與確認好相關網址,以免後續工作混亂。

例如:想架設一個網址為www.asdf.com的網站,可以建立叫做asset.asdf.com的儲存桶專門用來放網站的圖片、影片、較肥大的程式碼等等。

在AWS主控台的左邊可以找到「S3 可擴展的雲儲存」。

如圖:

點進去之後,按左上角「創建儲存桶」,出現如下畫面。

名稱:例如  asset.asdf.com (如果要用自訂網址存取資料,請參考下方「以自訂網址顯示資料」的說明來取名。)

區域:選擇資料要存放在那個區域的主機裡,例如對台灣網速比較有利的就是Tokyo(日本東京)。不同區域也有不同費率,就在成本與速度間考量一下吧。

設置日誌記錄:會在儲存桶裡產生日誌檔,如果有需要就開啟。

圖一:


資料的公開化(Make Public):

bucket創建完成後,就可以在其中很容易的建立各層資料夾、上傳各種資料......。

如下圖,上傳了一張01.png的圖片,到asset.asdf.com的bucket的img資料夾中。(目前上傳資料到S3並不會產生傳輸流量費用)

左邊點選此圖片後,再點選右上方「屬性」,就可以看到這張圖片的終端節點網址(endpoint  address),例如 http://s3-ap-northeast-1.amazonaws.com/asset.asdf.com/img/0001.png

圖二:

但是用這個網址去開啟圖片,只會顯示如下畫面,表示「Access Denied (403 Forbidden 存取被拒絕)」。

圖三:

如果想讓任何人都可以使用這個網址的話,需要將此資料公開化(make public)。如下圖,選取資料後再按「公開化」。

圖四:

公開化後,再用同樣的網址去看,就可以正常顯示此圖片了。

公開化是不可復原的動作,一旦公開,任何人都可以使用此網址,也就會產生存取請求與傳輸流量了。(除非把此資料砍掉重新上傳一次...)


以自訂網址顯示資料:

如上述,可以用s3-ap-northeast-1.amazonaws.com/asset.asdf.com/img/0001.png這樣的網址來顯示資料了,但是有點冗長,如果想用自己的網址來顯示該怎麼做呢。

請觀看bucket的屬性,如下圖,可以看到紅框處為「bucket的終端節點網址」,將其複製起來。(不一定要開啟「啟用網站託管」選項。)

圖五:


然後進入網址的管理介面,每家廠商都不太一樣,但應該可以找到「DNS管理」相關功能。
,新增一筆CNAME(子網域)紀錄,例如:
CNAME: asset
值: asset.asdf.com.s3-website-ap-northeast-1.amazonaws.com (就是上面bucket的終端節點網址)

圖六:

這個設定的作用是使 asset.asdf.com 指向 asset.asdf.com.s3-website-ap-northeast-1.amazonaws.com

也就可以使用 asset.asdf.com/img/0001.png ,連上 s3-ap-northeast-1.amazonaws.com/asset.asdf.com/img/0001.png 了。

細節也可參考 官方文件:存儲桶的虛擬託管 - 使用CNAME 自定義Amazon S3 URL


P.S.  S3如果改用自訂網址預設是http,原本的endpoint網址是https。

2 則留言:

  1. 想架設一個網址為www.asdf.com的網站,可以建立叫做asset.asdf.com~請問asset的用意是?可以直接用網域名稱來命名嘛?謝謝

    回覆刪除
  2. 我的網域是.com.tw會有影響設定嗎?不好意思~我是外行入門

    回覆刪除

歡迎分享本文~