• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于服務活躍度的虛擬機實時遷移方案的研究

      2013-07-19 08:44:42張樂
      計算機工程與應用 2013年19期
      關鍵詞:停機內存條件

      張樂

      暨南大學信息科學技術學院計算機科學系,廣州 510630

      基于服務活躍度的虛擬機實時遷移方案的研究

      張樂

      暨南大學信息科學技術學院計算機科學系,廣州 510630

      1 引言

      虛擬機[1]是指通過虛擬機管理器在一個物理硬件資源上虛擬出來的具有完整硬件系統功能,運行在一個完全隔離環(huán)境下的完整計算機系統。

      1.1 背景

      虛擬機的實時遷移[2]是在保持虛擬機服務正常運行的同時,將虛擬機從一個物理主機(源主機)遷移到另外一臺物理主機(目標主機)上,并在目標主機上恢復虛擬機的運行。

      1.2 實時遷移

      虛擬機的實時遷移可以在虛擬機遷移的同時保證虛擬機的服務不受遷移的影響,方便用戶的使用,提高服務器的使用效率,因而在服務器集群方面有著廣泛的應用。

      1.2.1 原因及解決問題

      虛擬機的實時遷移所帶來的變化以及其解決的問題包括了以下幾個方面:

      (1)解決“剩余的依賴關系[3]”的問題,因為有些虛擬機必須保持其所在主機的系統配置以及網絡訪問接口等。

      (2)虛擬機的內存狀態(tài)能夠在遷移過程中保持一致并且有效,這也適用于內核內部狀態(tài)(如當前活動連接的TCP控制塊),這意味著在實際應用中可以遷移游戲服務器、流媒體服務器,而不需要進行客戶端的重新連接。

      (3)解決了用戶和管理員之間的擔憂,用戶可以全權管理虛擬機內運行的軟件和服務而不需要提供任何操作系統級別的訪問,管理員則不需要關注虛擬機內發(fā)生的細節(jié)。

      (4)虛擬機的實時遷移對其所在的主機的維護也是很有價值的(可能虛擬機實時遷移完成后該主機就將退役)。

      總之,虛擬機的實時遷移是機器集群管理員強有力的工具,它分離了軟硬件,并且將機器集群整合成一個單一的連貫管理域。此外,可以通過虛擬機的實時遷移來減輕其所在主機的負載,從而達到機器集群的負載均衡以及提高資源的可利用性,可以看出虛擬機的實時遷移是非常必要且有用的。

      1.2.2 基本概念

      虛擬機的實時遷移需要對虛擬機的所有信息進行遷移,包括存儲、網絡以及內存。

      存儲遷移因為其數據量極大,在遷移時會造成大量的時間和網絡帶寬的消耗,降低了實時遷移的效率,為了減少這種消耗,通常采用NFS[4]共享數據和文件系統。

      網絡遷移[5]是指虛擬機的所有網絡設備,包括協議狀態(tài)以及IP地址都要進行遷移,網絡遷移可以通過發(fā)送ARP重定向包,將虛擬機的IP地址與目標主機的MAC地址綁定,綁定之后發(fā)送到虛擬機的所有包都可以直接發(fā)送到目標主機上,從而實現網絡的無縫遷移。

      內存遷移是虛擬機中遷移最重要也是最復雜的遷移,因為內存頁的信息直接反應了當前虛擬機的運行狀態(tài)。虛擬機實時遷移的過程中會不斷地更新內存頁的內容,這樣就需要重新傳輸內存頁到目標主機上,如果虛擬機的臟頁率高(內存頁的內容更新快),那么就需要多次傳輸臟頁到目標主機上,這將會大大增大虛擬機的總遷移時間,如果臟頁率低,虛擬機過早進入停機階段又會導致虛擬機服務停頓時間過長,所以如何選擇合適的臨界點進入停機階段將直接影響虛擬機實時遷移的效率和時間。

      1.3 內存遷移

      虛擬機的內存遷移主要分為三個步驟:Push階段、Stop and Copy階段以及Pull階段。

      Push階段:該階段源主機上的虛擬機持續(xù)的運行,同時不斷地傳輸內存頁到目標主機上,為了保證源主機和目標主機的一致性,源主機需要重新發(fā)送發(fā)生更新的內存頁(即內存臟頁)。

      Stop and Copy階段:該階段源主機上的虛擬機停止運行,并在停止期間發(fā)送剩下的內存臟頁到目標主機上,傳輸完成之后目標主機上的虛擬機開始運行,這個階段的時間就是停機時間downtime[6]。

      Pull階段:該階段目標主機上的虛擬機保持運行,如果出現頁錯誤,目標主機會向源主機請求重新發(fā)送出現錯誤的頁。

      其中,Stop and Copy階段和Pull階段相結合的遷移方案稱為Post-copy[7];Push階段和Stop and copy階段相結合的遷移方案被稱為Pre-copy。

      Post-copy和Pre-copy分別適應于不同的環(huán)境下,Post-copy為了盡量減小總遷移時間,Pre-copy為了盡量減小停機時間。

      1.3.1 Post-copy

      Post-copy方案分為以下四個步驟:

      (1)停止源主機上虛擬機的運作;

      (2)傳輸運行所需的內存頁到目標主機上;

      (3)在目標主機上恢復虛擬機的運作;

      (4)傳輸剩下的內存頁直到所有頁傳輸完。

      在Post-copy方案中,大部分的內存頁只需要傳輸一次,因此可以很好地降低總遷移時間,但是當虛擬機運行所需的內存頁較多時,則會使得停機時間過長,虛擬機的性能會大幅下降。此外,在第二步中,停止運作的虛擬機是不能釋放源主機的資源的,當出現多個虛擬機并發(fā)遷移的時候,將會導致大量資源需要等待遷移結束后才能得到釋放,這也會造成源主機的硬件資源的浪費和遷移效率的下降。

      1.3.2 Pre-copy

      Pre-copy方案的核心思想是先將所有內存頁傳輸到目標主機上,在一輪傳輸過后,再向目標主機傳輸上一輪傳輸中發(fā)生更新的內存頁(后文中稱臟頁),如此迭代傳輸直到需要傳輸的臟頁數目滿足進入停機階段的停機條件后,進入停機階段,此時停止源主機上虛擬機的運行,再將余下的臟頁傳輸到目標主機上,最后在目標主機上恢復虛擬機的運行。Pre-copy方案的具體算法流程如圖1所示。

      圖1 Pre-copy算法流程圖

      2 相關工作

      在針對虛擬機動態(tài)遷移技術優(yōu)化的研究上,大部分都是對針對Pre-copy方案的改進,目的都是更好地降低總遷移時間和停機時間。主要研究成果有如下:

      (1)基于虛擬機實時遷移技術的內存緊壓縮算法和防抖動分層拷貝算法[8]。內存緊壓縮算法的核心思想是通過充分利用虛擬機中的氣球驅動程序,對遷移域進行內存緊壓縮,從而達到降低遷移時間和目標域啟動時間的目的;臟頁防抖動分層算法則是通過對遷移中出現的臟頁進行分層,并且設計了防抖動閾值,很好地解決了遷移中的臟頁問題。

      (2)基于虛擬機實時遷移技術的分層拷貝算法和臟頁減速算法[9]。分層拷貝算法是為了減少傳統迭代過程中重復拷貝相同臟頁,通過對內存頁重寫次數統計來盡量減少不必要的拷貝;臟頁減速算法則是考慮如何適量減少被遷移域的CPU占有量來降低臟頁率。通過分層算法與減速算法的協同工作,在盡可能不影響遷移域服務的前提下,減少了遷移時間。

      (3)利用Writable Working Set對Pre-copy方案進行優(yōu)化。在虛擬機正常工作的一段時間內記錄虛擬機的內存頁的更新次數,當虛擬機需要進行實時遷移時統計出內存頁的更新頻率,將更新頻率不高的內存頁在第三階段傳輸,更新頻率比較高的內存頁則在第四階段傳輸,從而達到降低總遷移時間和停機時間的目的。

      表1 虛擬機的內存分配和使用機制

      3 基于服務活躍度的優(yōu)化方案

      在Pre-copy方案中,源主機上的虛擬機管理器首先將待遷移的內存頁傳輸到目標主機上,然后對臟頁進行迭代傳輸。這種方案在虛擬機低負載或者無負載的情況下能夠較好地降低總遷移時間和停機時間,但是當虛擬機高負載的情況下,Pre-copy方案在面對臟頁率很高的問題時,迭代傳輸臟頁的次數將會非常多,直到遷移達到系統承受上限時才會進入停機階段,這顯然會帶來較大總遷移時間和停機時間的開銷。可以看出,在Pre-copy方案中內存頁的數量以及臟頁率對虛擬機的實時遷移有著非常重要的影響,因此對虛擬機在主機上的內存分配和使用機制[10]進行分析是非常有必要的。

      3.1 虛擬機的內存分配與使用

      在主機上創(chuàng)建虛擬機需要分配內存資源給虛擬機,一般情況下有三個需要配置的選項(內存上限、內存預留、內存分享),這三個選項的分配和使用機制如下表1所示。

      3.2 停止條件

      停止條件[11]就是虛擬機結束迭代傳輸內存頁的第三階段并且進入第四階段的判斷條件。

      3.2.1 源代碼中的相關代碼

      根據對實時遷移源代碼的分析,停止條件如表2和表3所示。

      表2 源代碼中的停止條件

      表2中,條件1.1和條件1.2需要同時滿足才算滿足第1個停止條件。

      條件1.1當前迭代輪傳輸的臟頁數量大于上一輪傳輸的臟頁數量;

      條件1.2由遷移引起的網絡負載已經超過了由虛擬機定義的吞吐量的闕值。

      表3 涉及變量的名詞解釋

      條件2迭代次數超過定義的最大次數。

      條件3當前迭代輪需要傳輸的臟頁數量和不需要傳輸的臟頁數量和小于50。

      條件4總遷移的內存頁數量大于虛擬機所有內存頁總數量的max_factor倍數。

      3.2.2 條件分析

      對于停止條件2,在源代碼中,max_iters定義的初始值為29,即當迭代傳輸超過30次時,實時遷移進入停機階段,29是一個經驗值。對于低負載的情況,因為每次迭代傳輸的臟頁不多,所以不需要過多的迭代輪數就可以進入停機階段,而對于高負載的情況,因為每次迭代傳輸的臟頁數量很多,過多的迭代輪數有可能導致總遷移時間的增大,所以說在不考慮虛擬機負載的情況就直接使用一個確定的數值顯然是不合理的。

      對于停止條件3,在源代碼中,N=50也是一個經驗值,即當前迭代需要傳輸的臟頁和不需要傳輸的臟頁數量和超過50時,實時遷移進入停機階段。對于低負載的情況,50這個上限是不容易被達到的,而對于高負載的情況,50又很容易滿足,這樣就會導致過早進入停機階段,從而導致停機階段需要傳輸過多內存頁,導致停機時間的增大,這同樣也是不合理的。

      對于停止條件1和4,因為條件中都是動態(tài)數值或者是根據虛擬機得到的數值,所以可以不做優(yōu)化的考慮。

      3.2.3 結論

      通過對停止條件的分析得到,Pre-copy方案中的停止條件是靜態(tài)的,對于不同負載的虛擬機實時遷移不能起到動態(tài)的調整,這就很難控制任意負載的虛擬機實時遷移的總遷移時間和停機時間,所以就需要在虛擬機實時遷移開始前或進行中對停止條件進行動態(tài)的配置,從而使得當前的停止條件對于當前虛擬機的實時遷移是最佳的。通過對虛擬機的當前服務活躍度的研究來動態(tài)配置停止條件,來達到優(yōu)化實時遷移的目的。

      3.3 服務活躍度

      虛擬機的負載[12]就是虛擬機上運行的服務對虛擬機資源的利用率。內存資源是虛擬機非常重要的資源之一,服務對內存資源的使用主要表現為兩種情況。

      (1)寫操作:運行服務將新的內容寫到內存頁的操作,寫操作的次數越多相對應內存頁的更新率就會越高。

      (2)讀操作:運行服務獲取內存頁的內容來進行相關處理的操作,讀操作不會對內存頁的內容進行修改,但站在算法設計的角度上,讀操作會增加內存頁的被讀取次數,從而會引起程序代碼中讀次數變量的變化。因此對于算法而言,讀操作也是屬于內存頁的更新范疇。

      于是在這里認為虛擬機的負載越高就會導致虛擬機內存頁的更新越頻繁(即臟頁率高)。

      定義服務對虛擬機資源的利用率(即單位時間內虛擬機上所有用戶作出的操作數)為服務活躍度,根據大量實驗驗證(實驗環(huán)境為Olio[13],實驗機制為虛擬機上不同數量的用戶同時使用虛擬機上的各種服務,然后觀察虛擬機上的臟頁變化),從而得到服務活躍度與臟頁率之間的關系如下圖2所示。

      圖2 服務活躍度與臟頁率之間的關系

      從圖2可以看出,在系統承受范圍內,服務活躍度和臟頁率之間呈正比關系,這里的“系統承受范圍”是由實驗主機的網絡帶寬和其物理內存大小所決定的。實驗中所使用的主機能接受的用戶數量范圍在0到150之間,當超過150這個數量值時,主機在單位時間內能更新的內存頁數量也就是在220到240之間,針對上述原因認為服務活躍度越高代表了虛擬機的負載越高,從而導致了臟頁率的增加,所以通過研究服務活躍度來配置停止條件的方案是可行的。

      3.4 優(yōu)化方案

      結合上文的結論,提出根據虛擬機當前的服務活躍度來配置實時遷移的停止條件,具體流程為:

      (1)虛擬機實時遷移前,通過服務活躍度檢測器檢測到虛擬機當前的服務活躍度SLL(Service Live Level);

      (2)根據得到的SLL在SLL基準庫尋找對應的最佳停止條件的配置參數(max_iters以及N);

      (3)將得到新的配置參數初始化到實時遷移程序中,啟動實時遷移。

      根據SLL來得到最佳停止條件的Pre-copy優(yōu)化系統模型,如圖3所示。

      在這個系統模型中,涉及到“停止條件參數”、“SLL檢測器”以及“SLL基準庫”三個概念。

      (1)停止條件參數:源代碼中停止條件中的靜態(tài)參數N以及max_iters,這兩個參數是根據SLL的不同而動態(tài)變化的。

      (2)SLL檢測器:檢測虛擬機實時遷移開始前的服務活躍度,在測試系統中,主要是利用Olio服務中所帶的用戶操作檢測器來實現的。

      (3)SLL基準庫:一個存儲“不同區(qū)間的SLL”和“其對應的最佳停止條件參數”的數據庫,這個數據庫是通過大量的虛擬機實時遷移實驗來得到的,數據庫的建立過程會在第4章節(jié)中進行介紹。

      4 實驗與結果分析

      為了驗證上文提出方案的有效性,在物理主機上搭建測試環(huán)境,分別進行靜態(tài)停止條件和基于服務活躍度的停止條件兩種情況下的虛擬機實時遷移實驗,并對總遷移時間和停機時間的結果進行分析。

      4.1 實驗環(huán)境搭建

      在實驗中,使用NFS服務來管理源主機和目標主機的硬存儲資源,采用一臺PC機來作為提供NFS服務的服務器,此外,虛擬機在兩臺相同配置的主機上進行實時遷移,這樣可以在兩臺主機上相互遷移并連續(xù)進行多次實驗。

      圖3 加入SLL的系統模型圖

      用于搭建環(huán)境的服務器主機和虛擬機的配置,如表4所示。

      系統整體架構[14]如圖4所示。

      圖4 實驗整體架構圖

      主要配置過程如下:

      (1)在源主機和目標主機上安裝Xen[15];

      (2)修改Xen的配置文件,開啟虛擬機實時遷移的端口,重啟xend服務,使更改生效;

      (3)激活portmap和NFS服務,啟動NFS掛載功能;

      (4)源主機和目標主機將虛擬機的鏡像掛載到自己對應的盤符上,實現虛擬機鏡像的NFS共享;

      (5)使用Xen create命令創(chuàng)建虛擬機,修改配置文件來配置虛擬機的各種信息。

      4.2 實驗測試

      實驗測試主要分為三個部分:第一部分是建立SLL基準庫;第二部分是在靜態(tài)停止條件下的虛擬機實時遷移;第三部分是在基于SLL的停止條件下的虛擬機實時遷移。

      4.2.1 建立SLL基準庫

      在基于SLL的優(yōu)化方案中,SLL基準庫是非常重要的,因為這個數據庫的作用是幫助系統根據當前虛擬機的SLL選擇最佳停止條件。

      SLL基準庫的建立是通過大量的重復實時遷移實驗來獲取的,具體方法是多次實時遷移不同SLL的虛擬機,通過調整停止條件參數(max_iters和N),記錄每次實時遷移的總遷移時間和停機時間,選擇總遷移時間和停機時間最短的那個停止條件參數作為對應SLL的最佳停止條件參數,實驗初始化數據如表5所示。

      表5中,max_iters的取值跨度是2,即取值順序為7,9,11,13,15,同理,N的取值跨度為200。

      因為實驗次數特別多,所以僅列出并發(fā)用戶為25的實驗結果,如表6所示。

      表5 實驗初始化數據

      表6 并發(fā)用戶為25的實時遷移結果

      表6中,總遷移時間用TT表示,停機時間用DT表示,單位是ms。

      從表6的測試結果可以得到,當并發(fā)用戶為25,SLL=4.975的時候,虛擬機的實時遷移在停止條件參數max_iters=9以及N=900時,總遷移時間和停機時間的最小值分別為733 470 ms和1 107 ms。

      當并發(fā)用戶和SLL分別為其他取值的時候,其對應的最佳停止條件參數的實驗結果如表7所示。

      表7 SLL基準庫

      4.2.2 靜態(tài)停止條件下的實時遷移

      在靜態(tài)停止條件下,對于不同SLL的虛擬機,采用多次實時遷移并取每次結果的平均值,實驗測試結果如表8所示。

      4.2.3 基于SLL的停止條件下的實時遷移

      在基于SLL的停止條件下,先通過SLL檢測器檢測當前虛擬機的SLL,然后從SLL基準庫中選取最佳的停止條件并配置到遷移程序中,同樣采用多次實驗去平均值。實驗結果如表9所示。

      表8 靜態(tài)停止條件下的實時遷移

      表9 基于SLL的停止條件下的實時遷移

      4.3 結果分析

      從表8和表9的結果,針對不同SLL的虛擬機實時遷移,當實時遷移分別采用靜態(tài)停止條件和基于SLL的停止條件的時候,總遷移時間TT的結果如圖5所示,停機時間DT的結果如圖6所示。

      圖5 兩種停止條件下的總遷移時間

      圖6 兩種停止條件下的停機時間

      根據圖5和圖6的結果,得出的結論是基于SLL的虛擬機實時遷移方案可以達到降低總遷移時間和停機時間的效果,從而加快了虛擬機的實時遷移。

      5 結束語

      為了解決虛擬機在不同負載的情況下實時遷移的效率問題,提出了基于虛擬機當前服務活躍度的實時遷移優(yōu)化方案。通過虛擬機服務活躍度來選擇最佳的停機條件并配置到相關遷移程序中,從而達到降低總遷移時間和停機時間的目的,在一定程度上優(yōu)化了虛擬機的實時遷移。

      實驗是通過Olio服務自帶的用戶操作檢測器來獲取虛擬機活躍度的,而這種方法不能很好地面對任何情況下的虛擬機。如何能夠做到隨時檢測虛擬機的服務活躍度并實時地配置最佳停止條件,將是今后的一個研究方向。

      [1]Goldberg R P.Survey of virtual machine research[J].Computer,1974,7(6):34-45.

      [2]Clark C,Fraser K,Hand S,et al.Live migration of virtual machines[C]//Proceedings of the 2nd Conference on Symposium on Networked Systems Design&Implementation.[S.l.]:USENIX Association,2005:273-286.

      [3]Douglis F,Ousterhout J.Transparent process migration:design alternatives and the sprite implementation[J].Software:Practice and Experience,1991,21(8):757-785.

      [4]Hitz D,Lau J,Malcolm M.File system design for an NFS file serverappliance[C]//ProceedingsoftheUSENIXWinter 1994 Technical Conference,1994:235-246.

      [5]溫抿雄,李沁.虛擬機遷移系統網絡連接重定向技術[J].計算機應用研究,2009,26(5).

      [6]Patterson D A.A simple way to estimate the cost of downtime[C]//Proceedingsofthe16thSystemsAdministration Conference,2002.

      [7]Hines M R,Deshpande U,Gopalan K.Post-copy live migration ofvirtualmachines[J].ACMSIGOPSOperatingSystems Review,2009,43(3):14-26.

      [8]李永.基于虛擬機動態(tài)遷移技術的分析和研究[D].長沙:國防科學技術大學,2009.

      [9]阮敏.Xen環(huán)境下實時遷移結構和算法研究[D].大連:大連海事大學,2009.

      [10]張偉哲,張宏莉,張迪,等.云計算平臺中多虛擬機內存協同優(yōu)化策略研究[J].計算機學報,2011,34(12):2265-2277.

      [11]Akoush S,Sohan R,Rice A,et al.Predicting the performance of virtual machine migration[C]//Proceedings of Modeling,Analysis and Simulation of Computer and Telecommunication Systems(MASCOTS).[S.l.]:IEEE,2010:37-46.

      [12]李運發(fā),徐向華,萬鍵.基于虛擬機負載遷移的資源調度機制[J].華中科技大學學報:自然科學版,2009(9):45-48.

      [13]Breitgand D,Kutiel G,Raz D.Cost-aware live migration of services in the cloud[C]//Proceedings of the 3rd Annual Haifa Experimental Systems Conference.[S.l.]:ACM,2010.

      [14]趙華茗.基于虛擬機的高可用信息服務平臺建設[J].現代圖書情報技術,2009,25(12):18-23.

      [15]Barham P,Dragovic B,Fraser K,et al.Xen and the art of virtualization[J].ACM SIGOPS Operating Systems Review,2003,37(5):164-177.

      ZHANG Le

      Department of Computer Science,School of Information Science and Technology,Jinan University,Guangzhou 510630,China

      The live migration of virtual machine is the migration between the different physical hosts,at the same time,ensuring the normal operations of the virtual machine service.In order to ensure the migration efficiency and the normal operation,it needs to reduce the total migration time and downtime.Post-copy and Pre-copy are both frequently used to live migration, Post-copy can reduce the total migration time,Pre-copy can reduce the downtime.This paper presents an optimization Pre-copy scheme based on service live level.According to the relationship between service and dirty page rate,selecting the appropriate stop condition,it makes the live migration enter the stop and copy phase in an appropriate critical point.This not only reduces the number of iterations of the page,but also transmits fewer pages in the stop and copy phase,so as to achieve the purpose of reducing the total migration time and downtime at the same time.

      live migration;Post-copy;Pre-copy;service live level;dirty page rate;stop condition

      虛擬機實時遷移是在保證虛擬機服務正常運行的同時,在不同的物理主機之間遷移,為保證遷移效率和服務正常運行,需降低總遷移時間和停機時間。后拷貝和預拷貝是常用的兩種實時遷移方案,后拷貝能降低總遷移時間,預拷貝能降低停機時間。基于服務活躍度的預拷貝優(yōu)化方案是根據服務活躍度選擇合適的停止條件,使得虛擬機在合適的臨界點進入停機階段,這不僅減少了頁的迭代次數,也使停機階段傳輸更少的頁,從而達到同時降低總遷移時間和停機時間的目的。

      實時遷移;后拷貝;預拷貝;服務活躍度;臟頁率;停止條件

      A

      TP302.2

      10.3778/j.issn.1002-8331.1303-0250

      ZHANG Le.Scheme research of virtual machine live migration based on service live level.Computer Engineering and Applications,2013,49(19):254-259.

      張樂(1988—),男,碩士,研究方向為云計算。E-mail:shine_paul@163.com

      2013-03-18

      2013-05-27

      1002-8331(2013)19-0254-06

      猜你喜歡
      停機內存條件
      質量管理工具在減少CT停機天數中的應用
      排除多余的條件
      選擇合適的條件
      “春夏秋冬”的內存
      當代陜西(2019年13期)2019-08-20 03:54:22
      為什么夏天的雨最多
      雷克薩斯NX200t車停機和起動系統解析
      欠費停機
      少先隊活動(2014年6期)2015-03-18 11:19:18
      發(fā)動機怠速-停機起動機的開發(fā)
      基于內存的地理信息訪問技術
      認同或對抗——論執(zhí)政條件下的黨群關系互動
      江淮論壇(2011年2期)2011-03-20 14:14:18
      喜德县| 汽车| 丰宁| 星子县| 来宾市| 禹州市| 辉南县| 岑溪市| 江孜县| 青阳县| 武陟县| 巨野县| 泰安市| 仙游县| 商都县| 邢台县| 凤台县| 平遥县| 清远市| 道真| 龙口市| 沁水县| 农安县| 乐昌市| 夏津县| 建德市| 红安县| 瑞丽市| 凤庆县| 邮箱| 十堰市| 白玉县| 丰都县| 东方市| 台州市| 温州市| 奉新县| 临安市| 合水县| 当雄县| 蒙山县|