2008-09-23 65 views
4

現在服務器虛擬化是一件大事,所以我的任務是在虛擬化服務器上​​安裝我們的一些軟件,看看會發生什麼。長話短說:一個rsync傳輸迅速將虛擬化服務器癱瘓。虛擬化主機是一臺沒有其他負載的健壯機器;我不認爲這會發生。 Top顯示高負載平均值,並且cpu iowait接近100%。某處存在巨大的瓶頸。服務器虛擬化:如何避免,找到並修復瓶頸?

我更像一個程序員而不是系統管理員,我缺乏關於如何去解決這個在隨機谷歌搜索之外的知識。我懷疑我並不孤單。

我想在這裏看到的是關於虛擬化的一般建議,以及指向優秀文章和其他資源的指示,我和其他人可以用它們來指導自己。

  • 什麼工具(甚至是標準的unix工具)可以用來查明瓶頸?
  • 應該遵循哪些指標以確保事情順利進行?
  • 什麼樣的事情可以有效地虛擬化?
  • 什麼樣的設置註定要失敗?

我對問題的寬度表示歉意。我只是沒有這方面的知識來問一些有用的具體問題。

編輯:更多關於我的具體問題:

  • XAN半虛擬化,3個客人的CentOS
  • 本地SCSI磁盤上的所有客人,有一個完全硬件RAID控制器
  • rsyncd的1位客人正在運行os,從遠程非虛擬化服務器通過100mbps局域網發起的傳輸

就像我之前說過的,我真的無法提供大量有用的數據。我並不期望得到這個問題的直接解決方案,我很樂意指出在哪裏開始構建所需的技能,以更好地理解這些問題。

+0

rsync是從虛擬機讀取還是寫入虛擬機?或者你看到相同的行爲嗎? – 2008-09-23 15:50:23

回答

2

我打算把這個評論,但我認爲這是比較有用的開放:

你可以添加更多的詳細介紹您的設置:

  • 哪個VM服務器?
    (VMware服務器,VMware ESX,MS虛擬服務器,MS Hyper-V,別的嗎?)
  • 客人的哪個操作系統?
    (Windows,Linux,32位,64位?)
  • 客戶存儲在哪裏?
    (本地磁盤,還是在NAS或SAN上?)
  • 您是在同一VM服務器上的guest虛擬機之間,還是在guest虛擬機和物理服務器之間rsyncing?
  • 如果通過網絡,網絡速度有多快?

任何環境下的性能調整都是90%的數據收集和10%的分析。與物理環境相比,虛擬化環境需要考慮更多變量,但更重要的是,它們具有與物理環境不同的響應曲線。某些應用程序在虛擬環境中的表現可能比物理環境更好;別人不會。您必須瞭解應用程序的要求以及實施的限制。

如果您注意細節,我不認爲有任何軟件應用程序無法在虛擬服務器上成功部署。 (需要無法成功虛擬化的定製硬件的應用程序是一個不同的問題。)

+0

目前我仍然非常緊張的'收集數據'的一部分,因爲我沒有工具的經驗,我真的不知道在哪裏看。但是,你的文章讓我想到了,也許我應該首先閱讀一般性能調優,而現在忘記了虛擬化方面。 – 2008-09-23 16:19:40

2

我使用rsync讓我們(非常新的)虛擬環境的某些部分保持同步,沒有任何問題。我認爲這不是一個虛擬化問題,而是您看起來已經確定的I/O問題。

我發現虛擬化對硬盤非常非常重要,而且這隻會讓您在主機箱上擁有的客人越來越多。對於I/O密集程度非常高的計算機,請考慮將磁盤訪問分割爲遠離其他主機。您是否在使用任何種類的SAN技術?我們發現在我的工作場所非常有用(我們使用兩個8核Sun Sun服務器和一個1TB 12磁盤iSCSI陣列)。

您的硬件是否完全由虛擬化軟件提供商提供支持?如果您嘗試在不支持的硬件上運行,那麼您的磁盤控制器很可能不會使用最好的驅動程序,這將解釋您的慢速磁盤訪問。

你可以在Linux/Unix上使用iostat來獲得關於I/O的一些反饋,也有iotop,儘管它還沒有被封裝到很多發行版中。

+0

我會看看SAN,謝謝。主機具有完全硬件raid控制器的scsi驅動器。恐怕我不知道這些特徵,就像我說的,我不是系統管理員。 – 2008-09-23 15:41:21

0

副手我會說這是I/O問題。在虛擬環境中影響性能的最大因素是主機的磁盤狀態。我們爲優化性能所做的事情如下:

  1. 固定磁盤分配。通過這種方式,您可以獲得虛擬機所在的連續驅動器空間塊。
  2. 安排VM Slice OS和主機服務器驅動器的碎片整理。碎片化是你的敵人。
  3. 請確保您正常結束服務器會話。在彈出虛擬操作系統時,切勿關閉VM切片,因爲這會導致巨大的磁盤碎片。虛擬操作系統需要執行關閉/重啓過程。