
我的開發人員正在建立一個最終可能託管在 Windows Azure 中的應用程式。然而,出於多種原因,我們希望首先在內部託管它。他們向我介紹了「私有雲」的概念。這聽起來很酷,但好得令人難以置信。
我有一個 Windows Server 2008 R2 伺服器,將在內部用於該應用程式。如果應用程式運作良好,我們希望本質上翻轉開關並將應用程式託管在 Azure 中。我的問題是,有辦法做到這一點嗎?我看見本文。
一旦他們開始談論系統虛擬機器管理器和自助服務門戶,我們似乎就離 Azure 太遠了。如果我完成所有這些,我是否能夠輕鬆地將這個應用程式推廣到 Windows Azure?
答案1
那個該死的雲單字
請記住,私有雲實際上與當今大多數內部 Web 伺服器和應用程式沒有什麼不同。您提供的文章更進一步,本質上允許您的開發團隊創建、擴展和控制自己的虛擬機器。但最後,根據您提供的信息,您真正需要的只是 IIS 來運行您擁有的任何應用程式。
Azure 和 IIS 之間有差別嗎?
Azure Web 應用程式與在 IIS 上執行的應用程式之間的主要差異非常簡單,一個將 Azure 應用程式容器新增至解決方案中,而另一個則沒有。 Azure 的產品已經擴展,您現在可以更好地控制底層虛擬機,甚至您自己的虛擬機,但我將從最基本的角度來解決這個問題,使用 Azure 作為 PaaS 或平台即服務模型。
視覺工作室配置
在 Visual Studio 中產生多個建置配置非常容易,一個專門用於 IIS,另一個專門用於 Azure。這只是定義了建置機制,透過設定 Azure 部署套件或僅建立 IIS 套件來準備應用程式。
請記住,Azure 本質上是 IIS,只是具有必須與應用程式一起使用的設定和設定檔。
IIS 配置
除了這裡所需的標準 Web 伺服器設定之外,實際上沒有太多的內容。您可能有其他要求,例如文件儲存甚至快取(請參閱伺服器和天藍色AppFabric/快取)。您必須與您的開發團隊合作,確定需求是什麼,並設定任何必要的系統來支援這些需求。
解決方案注意事項
您的開發團隊還需要了解一些重要的事情:design and build the application to run in any environment.
我的意思是,無論最終的部署媒體和路徑如何,應用程式都應該正常運作。因此,在您的情況下,他們很可能希望使用依賴項注入進行文件存儲,以便可以調用 Azure 存儲 API,或者它可以恢復為標準 System.IO 文件存儲機制。無論哪種方式,僅僅設定硬體來支援應用程式是不夠的,它還必須設計為支援多種環境。
答案2
這是一群行銷垃圾。 「雲」並不是一個可以輕易定義的東西。它是一個冗餘、高度可用的儲存和伺服器硬體池,這些硬體通常位於不同的地理位置,使人們能夠根據需要快速、安全地擴展或縮減其操作。
「私有雲」只是虛擬化伺服器環境的行銷廢話,虛擬化伺服器環境能夠透過一組 API 進行抽象,並像「公有雲」一樣自動擴展。
Azure 是微軟的公有雲產品。 「私有雲」可能很接近它,但它並不相同。
我建議您擁有兩個 Azure 執行個體。如果您選擇使用此服務,則取得一項用於開發/測試,另一項用於生產。這樣,當您將應用程式轉移到生產環境時,您就可以準確地知道應用程式將執行什麼操作,因為它已經位於 Azure 上。