以往 Windows Azure 上可執行應用程式的角色,只有 Web Role 和 Worker Role,這兩個角色都要由開發人員上傳應用程式套件到雲上,而且還要自行設定許多的組態 (ex: Database) 才能啟用,就算使用者只想要用簡單的方式來建置自己的網站,也還是要先學習 Visual Studio 和 Windows Azure 開發才行,似乎對一些只有簡單需求的使用者來說門檻有點過高了,而且微軟自己已經有了一個 Web Platform Installer,裡面有豐富的 Web Application Gallery,許多開放原始碼的現成套件都在裡面,使用者也許只需要用這樣的套件,而不是一定要自己親手開發。
以往 Windows Azure 上可執行應用程式的角色,只有 Web Role 和 Worker Role,這兩個角色都要由開發人員上傳應用程式套件到雲上,而且還要自行設定許多的組態 (ex: Database) 才能啟用,就算使用者只想要用簡單的方式來建置自己的網站,也還是要先學習 Visual Studio 和 Windows Azure 開發才行,似乎對一些只有簡單需求的使用者來說門檻有點過高了,而且微軟自己已經有了一個 Web Platform Installer,裡面有豐富的 Web Application Gallery,許多開放原始碼的現成套件都在裡面,使用者也許只需要用這樣的套件,而不是一定要自己親手開發。
微軟雖然沒有打算要搶各大 Hosting 廠商的市場,但是也聽到了這個需求,因此微軟將 Web Role 和 Web Platform Installer 平台做了整合,為了要讓使用者能直接取用 Web Application Gallery 的資源,微軟勢必要在 Web Role 內添加許多東西,例如要讓 WordPress/Drupal/Joomal 等套件執行的 PHP + MySQL 以及 Orchard CMS/DotNetNuke 所需的 .NET Framework + SQL Server,對後者而言相當簡單,因為那是微軟的本家技術,而前者就需要花點時間,所幸微軟在 PHP 耕耘已久,在整合 PHP 和 MySQL 到 Web Role 的工作沒有特別困難,這些努力最後成為這次 Spring Release 的重要亮點之一:Windows Azure Website Services。
Website 角色最重要的特別是:
- 同時支援 .NET Framework + SQL Database 以及 PHP + MySQL。
- 支援重要的開放原始碼套件,像 WordPress, DotNetNuke, Drupal, Orchard CMS, Umbraco CMS 等。
- 支援由 FTP, TFS 或 GitHub 發行。
- 支援 Visual Studio, WebMatrix 等開發工具。
Website 角色目前是列 Preview Feature 之內,如果要使用它的話必須要在帳戶管理功能中申請試用,才能獲得存取權,和 Virtual Machines 一樣,申請大約一個小時內就能啟用。
當申請完成後,進入 Management Portal,就能看得到 Web Sites 這一項。
請按 “NEW”,我們也可以看到 Web Site 這一項,點它,可看到三個選擇:
- Quick Create: 只需設定幾項資訊就能完成。
- Create With Database: 建立角色時一併建立資料庫。
- From Gallery: 由 Web Application Gallery 中選擇要建立的套件作為應用程式。
Quick Create 模式只需要填入 URL 前碼 (一律以 [prefix].azurewebsites.net 為標準 URL) 以及區域就能簡單生成:
Create with Database 模式則是可以允許使用者在建立 Website 角色時一併建立資料庫,資料庫可以是 SQL Database,也可以是 MySQL Database,MySQL 資料庫也像 SQL Database 一樣,但由精靈的畫面來看,MySQL 資料庫應該是由另一個供應商 ClearDB 提供的,而不是來自 Microsoft Datacenter。
From Gallery 則是由 Web Application Gallery 中的應用程式套件作為 Website 執行的應用程式之用,而這也是本文會用到的例子。
我們選擇 WordPress,然後按右下的 “->”按鈕,進入設定頁:
完成以後按右下的 “->”按鈕,進入設定 MySQL Database 的頁面:
設定完後按 “v” 的按鈕即可完成,Website 角色的建置速度其實還蠻快的:
進入 springreleasewordpress Website 角色後,可看到更多的控制資訊:
我們按 Site URL 即可進入後續設定:
這部份網路上的說明就很充份了,我就不多作介紹了。
當 Website 部署完成後,我們可以在 CONFIGURE 頁面中給予更多的設定,其中剛才建立的 MySQL 資料庫連線字串也可以在這個頁面看到:
我們也可以透過 SCALE 功能來設定做 VM 數量的擴充,不過目前 Website 角色固定使用 Small Instance Size,所以不能設定。另一個需要特別說明的是 Web Site Mode,預設是 Shared,表示與其他 VM 共用伺服器資源,Dedicated 則是使用專屬的 Server 資源,適用高流量的網站應用程式,只是這裡的設定會影響這個 Website 的計費方式。
Website 角色是一個基於 Web Role 上的改良服務,它不但擁有類似 Hosting 的能力,而且它仍然保留了 Windows Azure 的 Scalable 能力,可允許使用者視需求擴充自己的 Website 角色數量,亦可選擇使用 Dedicated 模式以獲得更大的運算資源。
更重要的是,現在只要申請了 Windows Azure 90 天試用訂閱,可以立馬獲得下列 Website 角色資源一年的免費額度喔:
- 10 個 Website 角色。
- 每天 165MB 的輸出,無限的輸入流量。
- 1GB 的儲存。
- 20MB MySQL 資料庫。
Reference:
https://www.windowsazure.com/en-us/manage/services/web-sites/