應用程序的性能表現可能會隨著系統管理員做出的決定而發生變化。對于網絡、I/O、內存和CPU來說,企業需要根據自身需求作出選擇。這篇文章是介紹影響虛擬應用程序性能表現因素系列文章的第二部分。
網絡是應用程序之間相互通訊的橋梁,也是用戶使用應用程序的前提條件。對于應用程序來說,網絡是必要組成部分,但是應該如何在應用程序當中進行配置呢?我們都知道網絡對于基礎架構十分重要;然而,應用程序和基礎架構在網絡方面的需求并不完全相同。現在數據中心當中最為常見的網絡帶寬是1GB,除了網絡備份之外,很少有應用程序能夠完全占用全部帶寬。這主要是因為限制應用程序性能表現的硬件瓶頸主要在于硬盤,而且大多數應用程序都經過良好設計,在通訊方面進行了優化。
如果對30臺擁有1GB網絡連接的物理服務器進行虛擬化,那么通過簡單的數學計算可以得出總共需要30GB的網絡帶寬。然而,如果每臺服務器只占用100MB的帶寬,那么30GB的網絡帶寬需求將會銳減為3GB。盡管并非所有應用程序都擁有相同的網絡需求,但是通常應用程序都會受到硬件因素的限制,網絡帶寬并不能成為性能瓶頸。現在網絡連接已經開始超過10GB,并且向25GB和100GB的范圍發展,因此大多數應用程序都不會遇到網絡方面的限制。對于應用程序領域當中的軟件定義網絡技術來說,應用程序服務器自身應該并不知道網絡基礎架構的存在,因為其位于虛擬化的“物理層”之下。所以是否使用SDN需要由業務部門和基礎架構部門共同決定。這種技術能否成為未來的發展趨勢?很有可能,但是企業選擇的時機將會成為關鍵因素。
管理IOPS以減少性能瓶頸
I/O才是整個環境當中真正的限制性因素。在影響數據中心性能表現的四個硬件因素當中,存儲發生了最為劇烈的變化。對于傳統服務器來說,受制于天生的機械特性,存儲通常會成為服務器性能表現的瓶頸。不同于CPU和內存,存儲的物理構造有可能限制應用程序的性能表現。如果在同一個存儲系統當中同時運行多個虛擬機,那么這種性能瓶頸將會變得更加明顯。然而,更大的RAID組、Meta-LUN和固態磁盤(SSD)已經極大地提升了存儲系統能夠提供的IOPS。在融合基礎架構當中存儲擁有和服務器相同的架構,因此IOPS得到了進一步提升。但存儲是所有因素當中唯一一種新技術不能簡單取單傳統技術的因素。SSD并沒有完全替代傳統機械硬盤,盡管其性能表現已經得到大幅提升,但是隨著容量增加其價格也會快速提升,這是一個無法忽略的因素。
如何構建網絡和存儲基礎架構
這種情況通常會產生機械硬盤和SSD兩者同時存在的混合環境。從磁盤價格差異方面來說,這不再是一種性能表現問題,而是成本問題。如果讓應用程序所有者在性能或者容量方面做出選擇,那么通常會得到相同的答案:SSD。采用廠商推薦的解決方案應該更加實際一些,但是這些仍然只停留在理論階段,而不是實際生產環境當中。監控應用程序I/O是唯一的正確方式,因為其能夠反映環境當中用戶的真實操作情況。通常使用之后再進行監控當然不能幫助你在購買時做出選擇——除了存儲。存儲在四種因素當中是最為特殊的,因為其通常最容易進行更改和擴展。向大多數存儲架構當中添加新磁盤都不會產生中斷,并且大多數存儲系統都能夠支持多種不同級別的存儲。
由于管理員能夠在不同級別的存儲當中移動虛擬負載,并且不會產生中斷,因此虛擬環境當中最難決定的問題之一變成了最簡單的問題之一。而容量方面則相對簡單一些,可以利用薄置備技術來幫助滿足需求。借助于廠商提供的指導方案,管理員能夠輕松找到部署存儲的出發點,根據應用程序需求來擴展存儲。分散購買所有設備可以讓企業更加靈活地分析性能瓶頸在哪里,隨后做出相應調整。由于存儲通常是一個共享環境,因此能夠深入分析不同應用程序之間會產生哪些相互影響。這種方式能夠幫助企業避免一些常見問題,比如VDI啟動風暴或者備份等。
對應用程序進行深入分析是判斷如何擴展虛擬環境的最佳方式。虛擬化擁有多種特性,這些特性能夠對基礎架構和企業產生巨大影響。也許基礎架構能夠吸引大量注意力,但是不要忘記應用程序以及如何使用虛擬化來支持它們才是關鍵。