[Windows Azure] EasyAzure Framework Library

各位觀眾,佛心專案又來啦,這次是給 Windows Azure Platform 的 Service Management APIs 的開發人員,一個簡易的服務管理應用程式元件,稱為 EasyAzure Framework Library,可以在 http://easyazure.codeplex.com/ 中下載。

各位觀眾,佛心專案又來啦,這次是給 Windows Azure Platform 的 Service Management APIs 的開發人員,一個簡易的服務管理應用程式元件,稱為 EasyAzure Framework Library,可以在 http://easyazure.codeplex.com/ 中下載。

EasyAzure Framework 是在 Microsoft Tech.days 2011 Taiwan 的大會主題演講時建立,在 COS304: Designing and Developing Cloud Management Application by using Windows Azure Service Management APIs 課堂中正式發表,配合一個 Lazybone Cloud Management Sample Application,讓學員可以了解整個服務管理 API 的功能以及實際的展際和用法。

要使用這個 Framework 開發服務管理的應用很簡單:

1. 自 http://easyazure.codeplex.com 中下載 Binary Code,也可以下載 Source Code 後編譯。
2. 在專案中加入 EasyAzure.Core.dll, EasyAzure.WindowsAzure.dll 和 EasyAzure.SqlAzure.dll 三個組件的參考。
3. 準備好 Windows Azure 的管理憑證 (management certificate),並手動上傳到所屬訂閱 (subscription) 的管理憑證資料庫內。
4. 在程式碼中初始化 EasyAzure.Core.ServiceManagementContext 物件,並傳入管理憑證以及訂閱的代碼 (管理憑證可用 System.Security.Cryptography.X509Certificates 命名空間的 X509Certificate2 類別載入)。

EasyAzure.Core.ServiceManagementContext serviceContext =
    new EasyAzure.Core.ServiceManagementContext(
        new X509Certificate2(Environment.CurrentDirectory + @"\mycert.pfx", "mycertpassword"),
        "mysubscriptionid");


5. 使用 ServiceManagementContext 中的 Load 方法來載入想要使用的服務管理 API 物件:

// load service context.
serviceContext.LoadOSManagmentProvider(new EasyAzure.WindowsAzure.WAOSInformationService());
serviceContext.LoadLocationManagmentProvider(new EasyAzure.WindowsAzure.WALocationService());
serviceContext.LoadCertificateManagementProvider(new EasyAzure.WindowsAzure.WACertificateService());
serviceContext.LoadAffinityGroupManagmentProvider(new EasyAzure.WindowsAzure.WAAffinityGroupService());
serviceContext.LoadHostingManagmentProvider(new EasyAzure.WindowsAzure.WAHostingService());
serviceContext.LoadStorageManagmentProvider(new EasyAzure.WindowsAzure.WAStorageService());
serviceContext.LoadSQLAzureManagementProvider(new EasyAzure.SqlAzure.ServerManagement());
serviceContext.LoadTrackingManagmentProvider(new EasyAzure.WindowsAzure.WATrackingOperationService());

這樣,就可以用 ServiceManagementContext 的屬性來取用不同的服務管理 API 物件了。

Sample Code and Binary Code Downloads: http://easyazure.codeplex.com