您的位置:首頁>正文

如何正確選擇Azure雲虛擬機器

隨著微軟雲變得越來越先進, 構建基礎架構即服務也變得更加容易。

當微軟公司首次推出Azure虛擬機器時, 只有少數幾個默認伺服器大小可供使用。 那麼您就需要問自己一個簡單的問題:是否有一款伺服器可以支援我的工作負載?但現在經過不斷發展, 出現了各種伺服器大小和伺服器類型, 可適用於不同的使用案例。 這也使我們的問題發生改變。 現在您必須要問自己:哪一款伺服器適合我?

在公共雲的初期, 關鍵因素是規模經濟。 前兩代或三代的公共雲在整個資料中心都使用相同的硬體,

這提供了巨大的價格優勢, 但同時限制了用於託管基礎設施和平臺即服務的伺服器的性能。 開放計算項目的興起以及獲得主要雲供應商的支援, 通過提供這些雲通用硬體標準, 可以支援更多功能, 而不會顯著增加成本, 這使情況發生了改變。

當今的雲提供各種真實伺服器和虛擬機器

最新一代的開放計算專案(OCP)硬體更加靈活。 作為新一代Azure資料中心的基礎, 微軟公司的奧林巴斯計畫(Project Olympus)主機殼就是一個典型的例子, 它基於 x86 架構, 支持通過 GPU 或 FPGA 增加額外的處理能力。 由於 GPU 技術是許多機器學習演算法的核心, 而FPGA可為網路連接提速, 並為像Bing這樣的服務提供專用機器學習, 現在在 CPU 功能和這些伺服器如何支援雲服務方面有更多的靈活性。

目前, Azure 提供了 36 種獨立的虛擬機器類型, 主要針對六種不同的用例。 這的確提供了很多的虛擬機器選項, 但並不是所有地區都可使用。 在選擇一種類型之前, 您需要仔細考慮您的工作負載, 因為選擇了錯誤的類型會使您的應用程式運行成本更加昂貴。 Azure 所提供的 36 個虛擬機器類型可以同時支援 Windows 和 Linux 系統, 因此您可以選擇適合您代碼的作業系統, 從而更輕鬆地升級和遷移現有的應用程式, 或者提供適合您開發工具鏈的端點。

正確選擇 Azure 虛擬機器

微軟公司建議的 6 個用例是:

• 一般用途

• 計算優化

• 記憶體優化

• 存儲優化

• 圖形處理器(GPU)

• 高性能計算

一旦確定了工作負載和要使用的虛擬機器類型, 就可以通過選擇虛擬 CPU 的數量、可用記憶體量以及本機存放區的大小來進行調試。

其他選項還可以添加資料磁片並支援更多的網路連接, 這能為您提供更高的頻寬。

為了簡化問題, 微軟公司已經對其虛擬機器的計算性能進行了規範化處理, 使其更容易進行性能比較, 並且提供一個性能圖表説明您為應用程式選擇正確的虛擬機器。

一般用途的 Azure 虛擬機器

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)這樣的硬體平臺可為雲服務提供更多的選擇,同時在大規模部署情況下還能帶來成本優勢。

這在過去則需要大量的投資。如果您正在使用計算工程工具,並且使用諸如有限元分析或計算流體動力學等技術,那麼這些方案就很適合您和您的代碼。

虛擬機器不僅僅是用於基礎設施即服務

許多工作負載不需要專用伺服器,如果您設計的代碼為無狀態,則應該考慮使用Azure的託管容器,特別是現在Azure容器實例具有極大的可擴展性,並且Azure容器服務支援Kubernetes託管的應用程式和服務,現在稱為AKS 。

即便如此,仍然有必要瞭解用於託管容器的底層虛擬機器的功能,因為這可以確定您正在使用的虛擬機器的數量以及新容器部署的速度。

無論您做任何應用,都應該關注Azure門戶中的虛擬機器利用率。如果虛擬機器經常顯示100%的利用率,那麼說明您選擇的虛擬機器性能低於您的工作負載。同樣,如果您的虛擬機器利用率很低,那麼說明您可能選擇的虛擬機器性能超出了您的工作負載。如果您的應用程式架構具有容錯功能,重新部署最新的應用程式和服務,很輕鬆地選擇更適合的虛擬機器,那麼只需很短的停機時間或無需停機。

一台伺服器不可能適合所有應用,而提供多種選擇對Azure來說很有意義。與僅使用白標x86伺服器相比,像奧林巴斯計畫(Project Olympus)這樣的硬體平臺可為雲服務提供更多的選擇,同時在大規模部署情況下還能帶來成本優勢。

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示