隨著微軟云變得越來越先進,構建基礎架構即服務也變得更加容易。
當微軟公司首次推出Azure虛擬機時,只有少數幾個默認服務器大小可供使用。那么您就需要問自己一個簡單的問題:是否有一款服務器可以支持我的工作負載?但現在經過不斷發展,出現了各種服務器大小和服務器類型,可適用于不同的使用案例。這也使我們的問題發生改變。現在您必須要問自己:哪一款服務器適合我?
在公共云的初期,關鍵因素是規模經濟。前兩代或三代的公共云在整個數據中心都使用相同的硬件,這提供了巨大的價格優勢,但同時限制了用于托管基礎設施和平臺即服務的服務器的性能。開放計算項目的興起以及獲得主要云供應商的支持,通過提供這些云通用硬件標準,可以支持更多功能,而不會顯著增加成本,這使情況發生了改變。
當今的云提供各種真實服務器和虛擬機
最新一代的開放計算項目(OCP)硬件更加靈活。作為新一代Azure數據中心的基礎,微軟公司的奧林巴斯計劃(Project Olympus)機箱就是一個典型的例子,它基于 x86 架構,支持通過 GPU 或 FPGA 增加額外的處理能力。由于 GPU 技術是許多機器學習算法的核心,而FPGA可為網絡連接提速,并為像Bing這樣的服務提供專用機器學習,現在在 CPU 功能和這些服務器如何支持云服務方面有更多的靈活性。
目前,Azure 提供了 36 種獨立的虛擬機類型,主要針對六種不同的用例。這的確提供了很多的虛擬機選項,但并不是所有地區都可使用。在選擇一種類型之前,您需要仔細考慮您的工作負載,因為選擇了錯誤的類型會使您的應用程序運行成本更加昂貴。Azure 所提供的 36 個虛擬機類型可以同時支持 Windows 和 Linux 系統,因此您可以選擇適合您代碼的操作系統,從而更輕松地升級和遷移現有的應用程序,或者提供適合您開發工具鏈的端點。
正確選擇 Azure 虛擬機
微軟公司建議的 6 個用例是:
• 一般用途
• 計算優化
• 內存優化
• 存儲優化
• 圖形處理器(GPU)
• 高性能計算
一旦確定了工作負載和要使用的虛擬機類型,就可以通過選擇虛擬 CPU 的數量、可用內存量以及本地存儲的大小來進行調試。其他選項還可以添加數據磁盤并支持更多的網絡連接,這能為您提供更高的帶寬。
為了簡化問題,微軟公司已經對其虛擬機的計算性能進行了規范化處理,使其更容易進行性能比較,并且提供一個性能圖表幫助您為應用程序選擇正確的虛擬機。
一般用途的 Azure 虛擬機
一般用途的虛擬機就是您的日常服務器,類似您從惠普企業(HPE)或戴爾公司購買現成服務器時需要指定型號一樣。它們不是以某種方式提供特定服務,因此非常適合用作開發工作負載的主機以及處理現代應用程序的UI層的服務器。因為它們成本低廉,所以可以根據需要將它們打開使用,然后將其廢棄。
Azure提供的這些虛擬機所使用的硬件來自多代的數據中心硬件。您仍然需要選擇所需的虛擬機類型,因為它們的確具有不同的特性。有些虛擬機,比如A系列,因為它們托管的Azure虛擬機受到限制,所以無論采用何種底層硬件,您都看不出它們之間的性能差異。其他虛擬機,比如D系列,具有更高的性能,可以使用不同代的服務器硬件。
您可以在一般用途虛擬機上運行任何工作負載,但是無法獲得最佳的性能,尤其是在支持大量用戶的情況下。對于少量用戶來說,在開發和測試團隊將代碼轉移到更專業化的主機上之前,他們在低成本虛擬服務器上構建和測試代碼,這是一個很好的方法。
特殊用途的Azure虛擬機
Azure的特殊用途虛擬機側重于處理影響骨干企業工作負載的特定問題。一些虛擬機可提供更強的計算能力,適用于動態網頁內容、應用程序服務器和離線批處理任務。其他的虛擬機具有更大的內存,適用于您使用內存數據庫和進行分析工作,因為這些工作要求內存盡可能多地保存數據,這很重要。其他服務器具有更多的存儲帶寬,適用于當您需要大量的I/O和大量的磁盤的情況。最近微軟公司部署了新一代的存儲虛擬機,它運行在AMD硬件(而不是英特爾)之上,這是其采購策略的一個重大改變。
其他虛擬機可支持更新的工作負載,基于GPU的實例可提供Nvidia GPU。兩個版本使用CUDA和OpenCL來支持可視化工作負載和基于GPU的計算。像這樣的GPU計算實例支持使用數據并行代碼,以及構建自己的機器學習神經網絡。
作為基于GPU編程的替代方案,還提供用于高性能計算問題的虛擬機,它采用快速處理器,具有快速網絡接口。這些都是云計算的前沿技術,使云端具有相同的科學計算能力,這在過去則需要大量的投資。如果您正在使用計算工程工具,并且使用諸如有限元分析或計算流體動力學等技術,那么這些方案就很適合您和您的代碼。
虛擬機不僅僅是用于基礎設施即服務
許多工作負載不需要專用服務器,如果您設計的代碼為無狀態,則應該考慮使用Azure的托管容器,特別是現在Azure容器實例具有極大的可擴展性,并且Azure容器服務支持Kubernetes托管的應用程序和服務,現在稱為AKS 。
即便如此,仍然有必要了解用于托管容器的底層虛擬機的功能,因為這可以確定您正在使用的虛擬機的數量以及新容器部署的速度。
無論您做任何應用,都應該關注Azure門戶中的虛擬機利用率。如果虛擬機經常顯示100%的利用率,那么說明您選擇的虛擬機性能低于您的工作負載。同樣,如果您的虛擬機利用率很低,那么說明您可能選擇的虛擬機性能超出了您的工作負載。如果您的應用程序架構具有容錯功能,重新部署最新的應用程序和服務,很輕松地選擇更適合的虛擬機,那么只需很短的停機時間或無需停機。
一臺服務器不可能適合所有應用,而提供多種選擇對Azure來說很有意義。與僅使用白標x86服務器相比,像奧林巴斯計劃(Project Olympus)這樣的硬件平臺可為云服務提供更多的選擇,同時在大規模部署情況下還能帶來成本優勢。
版權聲明:本文為企業網D1Net編譯,轉載需注明出處為:企業網D1Net,如果不注明出處,企業網D1Net將保留追究其法律責任的權利。