wiki:Servers/virt_machines/kernel
close Warning: Can't synchronize with repository "(default)" (Unsupported version control system "svn": /usr/lib/python2.7/dist-packages/libsvn/_delta.so: failed to map segment from shared object: Cannot allocate memory). Look in the Trac log for more information.

Version 13 (modified by rock, 15 years ago) (diff)

--

Xen & Lustre Kernel in Dell Machine

1.問題和解決方案

  • 因 Dell Machine 的新硬體晶片(Intel ICH9R),原本 Xen 和 Lustre 支援的 Kernel 2.6.18 無法驅動 (2.6.19 後才有支援),與 rider 討論後,決定採用以下方法:
    1. 下載 ubuntu Kernel source 2.6.22
    2. 採用 ubuntu 的 Xen patch for 2.6.22 (在 Ubuntu gusty 有提供 Xen patch file)
    3. 再使用 Lustre 的 patch for 2.6.22

2.步驟

  1. 下載 Ubuntu Kenrel下載連結
    $ cd /usr/src
    $ tar zxvf linux-source-2.6.22_2.6.22.orig.tar.gz
    
  2. Patch Xen-Compatible Kernel (使用 Ubuntu Xen patch file,可直接從本網頁最下面連結下載)
    // Patch Kenrel to be compatible with Xen
    $ cd /usr/src/linux-2.6.22
    $ sudo patch -p1 < ../linux-source-2.6.22_2.6.22-16.61.diff
    $ sudo patch -p1 < debian/binary-custom.d/xen/patchset/001.patch
    $ sudo patch -p1 < debian/binary-custom.d/xen/patchset/002-fix-pae-vmalloc-sync.patch
    $ sudo patch -p1 < debian/binary-custom.d/xen/patchset/003-fix-ia32entry-xen.patch 
    $ sudo patch -p1 < debian/binary-custom.d/xen/patchset/004-fix-blkif-maxnrsegs.patch
    
  3. Build Xen Image and reboot參考此處
    // Install Xen Image
    $ cd /usr/src/xen-3.3.1
    $ sudo make xen
    $ sudo make tools
    $ sudo make install-xen
    $ sudo make install-tools
    
  4. 確認此 Kernel 是否正常開機 (可省略)
    // Build Kernel
    $ cd /usr/src/linux-2.6.22
    $ sudo menuconfig
    $ sudo make -j 5 ; sudo make -j 5 modules ; sudo make install ; sudo make modules_install 
    $ sudo mkinitramfs -o /boot/initrd.img-2.6.22.9 2.6.22.9
    $ sudo update-grub
    $ sudo sync ; sudo reboot
    
  5. Install e1000e driver (2.6.22 無 e1000e 的 driver)
    $ sudo tar zxvf e1000e-0.5.11.2.tar.gz
    $ cd e1000e-0.5.11.2/src ; sudo make install
    
  6. Patch Lustre-Compatiable Kernel & Build Lustre Modules參考此處
    • Lustre 1.6.6 Patch Log
    • Compile Error Message
    • Build Lutsre Modules
      $ sudo ln -s /usr/src/linux-2.6.22 /usr/src/linux
      $ cd /usr/src/lustre-1.6.6
      $ sudo vim lustre/include/linux/lustre_compat25.h
      570 //#define ll_remove_suid(inode,mnt)               remove_suid(inode,mnt)
      
      $ sudo ./configure --with-linux=/usr/src/linux-2.6.22
      $ sudo make -j 4 
      $ sudo make install ; sudo depmod -a
      $ sudo vim /etc/modules
      ldiskfs
      lnet networks=tcp
      
      $ sudo sync ; sudo reboot
      
  7. 設定 Lustre FS & 啟動 xend參考此處
    • Mount Error Message
      $ sudo mount -t lustre /dev/sdb2 /home/mdt/
      mount.lustre: mount /dev/sdb2 at /home/mdt failed: No such device
      Are the lustre modules loaded?
      Check /etc/modprobe.conf and /proc/filesystems
      Note 'alias lustre llite' should be removed from modprobe.conf
      
      $ dmesg
      LustreError: 13421:0:(router_proc.c:1013:lnet_proc_init()) couldn't create proc entry sys/lnet/stats
      lustre: Unknown symbol ll_remove_suid
      u
      




先 Try Try See,有問題在提出............................

Attachments (2)

Download all attachments as: .zip