2012年4月2日 星期一

[野人獻曝] 讓你的S3上雲端(CDN的意味)

前因太複雜了,所以暫且不表(懶)。
反正後果就是我開了一個CDN來作吐圖的工作。
至於什麼是CDN,請參閱這裡的說明

而這裡嘛,我假設正在看此文的人都有對AWS的服務有些概念,
所以就直接進入正題了。

要弄出一個CDN,
你首先必須要有一組AWS S3的bucket,
並且已經註冊了AWS Cloudfront,
這樣才能繼續以下的作業。
如果可以的話,順便多弄幾個domain names,
稍後會有機會用到(但非必須)。

以上準備工作完成後,
請打開瀏覽器,登入AWS Management Console,
然後跳到Amazon Cloudfront那一頁後,
再選擇Create Distribution
會跳出以下的視窗。
這個視窗是要指示你的資料來源,
主要分成Amazon S3和你自己的來源,
因為本文是講S3的部份,因此請選擇Amazon S3後,
再選擇放檔案的bucket後按下一步。
(至於那個Download和Streaming目前就不用理會了......我想一般個人是不會有機會作Streaming吧......所以只要選Download就好了)


接著出現的視窗會跟你提示一些設定,
主要就是:

  • 要不要設定多個網域:比方說一個頁面如果用了來自一個網域的多張圖片時,因為瀏覽器的限制會導致所有圖片無法同時被載入。因此設置多個網域對應時,會增進頁面讀取速度。
  • 要不要設定log紀錄:這個嘛......基本上我是沒設定啦,因為我也不會去看那些log。如果你有需要的話可以啟用這個功能?
  • 使用的連線類型:基本上就是選HTTP and HTTPS就好,這個選項同時也會包括HTTPS。如果你的內容僅限使用HTTPS時,請選擇HTTPS Only。
  • 是否啟用:基本上是選Enable啦。不過由於在設定完成後,AWS會先進行一次同步作業,所以你也可以先設定Disable。等到好了以後再開啟他。
  • Comments:啊......就是備註,要填不填隨便你啦。
  • Default Root Object:這東西應該就像是找不到資源時所吐的預設值吧?我是沒設定啦,或許哪位可以踹踹看?

按下Continue後,
就會跳到確認頁。
若是確認沒問題的話,按下完成後就可以了。
然後你的cloudfront就會出現這樣的一項了。

如果你在上一步中並沒有設定CNAMEs時,
那麼Domain Name這一欄就是未來吐資源的網域了,
所以未來都要用 {Domain Name}/{資源路徑} 來吐資料了。
至於Status那欄則是代表同步狀態,
剛設定好時通常會停在InProgress一段時間,
等到Deployed出現後就代表搞定了。
那麼簡單又強大的CDN設定就這樣完成了。

話又說回來了,
如果你在第二步時有設定CNAMEs時,
請到你的DNS Hosting增加CNAME,
對應的是第三張圖中的Domain Name,
過一段時間後就可以開始使用了。

以上就是連猴子都會懂的CDN架設過程,
還請大家多多思考是不是可以用在自己的網站上。

那麼~下次的野人獻曝再見了~(揮手)

你看不到的後記:
是說用這個服務的話,可能要先請各位考量一下荷包深度,
不然月底帳單爆掉就好笑了。
張貼留言