wiki:Xen_Lab3

實作三: Xen 虛擬化叢集進階操作


【課前小叮嚀】

  • 有些指令在 pcXXX 上執行,有的在 pcYYY 上 (執行前得注意一下)
  • 若不知道目前虛擬機器 vm01 跑在哪一台上,可在 pcXXX 上執行 onevm list 來得知
  • pcXXX 和 pcYYY 的時間需一致 (兩台皆需執行以下指令)
    $ sudo ntpdate time.stdtime.gov.tw ; sudo hwclock -w
    

【前言】

  • Migration 是指遷移的意思,Xen可以讓跑再 A主機 上的 虛擬機器,根據一些情境來,將虛擬機器 轉移到 B主機
    • 以下的情境,有一台主機總體 loading 過高,我們為了達到 load-balance,於是將 虛擬機器 migrate 到另一台 loading 較低的主機


【Step 0: 流程】

  • 本進階操作將說明如何透過使用 OpenNEbula 來實作 Migrate & Live Migrate
    GraphViz image

【Step 1:設定共享儲存裝置 (NFS)】

  • 設定好 Shared Storage (本練習使用 NFS ,pcXXX-> NFS Server, pcYYY-> NFS Client)
    • pcXXX 的設定 (請將 pcYYY IP 換成適合您的值)
      $ sudo aptitude -y install nfs-kernel-server 
      $ sudo gedit /etc/exports
      
      /home/domains  192.168.1.pcYYY_IP(rw,sync,no_subtree_check,no_root_squash)
      /home/one  192.168.1.pcYYY_IP(rw,sync,no_subtree_check,no_root_squash)
      
      $ sudo /etc/init.d/nfs-kernel-server restart
      $ sudo showmount -e localhost
      
    • 切換到 pcYYY 去掛載 nfs (請將 pcXXX換成 nfs server 的電腦名稱)
      $ sudo aptitude install nfs-common
      (安裝 NFS 需要的套件)
      
      $ sudo mkdir /home/domains
      $ sudo mount.nfs pcXXX:/home/domains /home/domains
      (將 NFS 掛載起來)
      
      $ sudo mkdir /home/one
      $ sudo mount.nfs pcXXX:/home/one/ /home/one
      
      $ mount
      
    • pcXXX 檢查是否已經有順利被 pcYYY mount 起來
      $ sudo showmount -a
      

【Step 2: 開啟 VM 於 pcXXX】

  • pcXXX 上 (記得將 pcXXX 換成您的電腦名稱)
    $ cd /home/domains
    $ sudo su
    
    # onevm create vm01.one ; onevm deploy vm01 pcXXX
    
    # onevm list
    # onevm show vm01
    

【Step 3: 測試 Migration (將 VM 從 pcXXX Migtate 到 pcYYY) 】

  • 將 vm01 從 pcXXX migrate 到 pcYYY
    # onevm migrate vm01 pcYYY
    # onevm list
    

【Step 4: 測試 Live Migration (再將 VM 從 pcYYY live migrate 回 pcXXX) 】

  • 檢查 vm01 目前跑在哪一台實體機器上(假定 vm01 跑在 pcYYY 時)
    # onevm list
    
  • 開啟一個新的終端機,將正在編譯中的 vm01 live migrate 到 pcXXX
    # onevm livemigrate vm01 pcXXX
    # onevm list
    

【討論 & 休息】

【練習一】

  • 練習將 vm01 migrate或live migrate 到 pcYYY 並關掉.
    # onevm migrate vm01 pcYYY
    (或是 # onevm livemigrate vm01 pcYYY)
    # onevm list
    
    # onevm shutdown vm01
    # onevm list
    

【練習二】

  • 在 vm01 編譯 kernel 並且 migrate或live migrate 到 pcYYY, 編譯不會中斷.
    # ssh vm01
    # sudo apt-get install build-essential binutils automake autoconf htop linux-headers-2.6.26-2-xen-amd64 ncurses*
    # wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.26.tar.bz2
    # tar jxvf linux-2.6.26.tar.bz2
    # cd linux-2.6.26
    # make defconfig
    # make
    
    # onevm migrate vm01 pcYYY
    (或是 # onevm livemigrate vm01 pcYYY)
    # onevm list
    



Last modified 14 years ago Last modified on Oct 4, 2010, 4:17:41 PM

Attachments (1)

Download all attachments as: .zip