实验三:xen环境下的第一个虚拟机的安装
實驗名稱:
xen環境下的第一個虛擬機的安裝
實驗環境:
我們這里繼續上面實驗二來完成這個實驗;
環境則是xen的安裝環境,如下圖:
開啟虛擬機的的硬件輔助虛擬化功能:
實驗要求:
這里我們通過安裝busybox的微型Linux的操作系統,正確安裝busybox,能作為xen環境下的虛擬機運行;
能正常啟動,且配置網絡,能連接到本地的橋接網卡上面來即可;
實驗配置:
1、準備磁盤映像文件
創建磁盤映像文件
mkdir /images/xen/ cd /images/xen/ qemu-img create -f raw /images/xen/busybox.img 2G格式化磁盤,并掛載使用該磁盤映像
mke2fs -t ext2 busybox.img du -sh busybox.img mount -o loop busybox.img /mnt因為是虛擬磁盤,通過du查看磁盤大小的時候并不是2G大小;
2、下載busybox系統文件,編譯安裝,提供根文件系統
這時候,我們需要去下載到busybox的源代碼文件,通過編譯安裝去獲取根文件系統;
wget https://busybox.net/downloads/busybox-1.22.1.tar.bz2 tar xf busybox-1.22.1.tar.bz2 cd busybox-1.22.1/解壓好以后,暫時還不能編譯安裝,我們還需要為其制定編譯環境
yum grouplist yum groupinstall -y "Development Tools" yum install glibc-static -y此時,如果通過make menuconfig進入busybox的配置頁面就會報錯,如下圖:
此時我們還需要一個安裝包:
yum install ncurses-devel -y???????????? 錯誤:在進行 make menuconfig 命令的時候,看到如下錯誤,是缺少ncurses-devel包我們需要 yum install ncurses-devel 來解決,如果是ubuntu的系統,則需要sudo apt-get install libncurses5-dev來解決這個問題;
之后就可以通過make menuconfig來進入busybox的配置界面,取消其關聯庫文件:
make menuconfig進項編譯安裝系統
make && make install編譯安裝完成以后再目錄下面就會有“_install/”目錄,里面的文件就是我們需要的根文件系統,此時,我們需要將這個目錄下所有文件拷貝到磁盤映像目錄下面去,并測試,將根目錄切換過去,看是否能夠切過去,如果能,則正常,不能,則可能是編譯安裝出錯,需要嘗試進行重新編譯安裝;
cp -a _install/* /mnt/mkdir -pv /mnt/{boot,lib,lib64,home,sys,etc,var,tmp} chroot /mnt/ /bin/sh
3、提供domU的內核文件和ramdisk
這里我們必須使用centos6.0系統的內核版本;
我們提供 2.6 的Linux kernel文件,以及與之匹配的ramdisk;
cd /boot/ln –sv vmlinuz-2.6.32-504.el6.x86_64 vmlinuz ln –sv initramfs-2.6.32-504.el6.x86_64.img initramfs.img
4、設置系統的配置文件,并啟動系統
復制虛擬機的配置文件
cd /etc/xen/ cp xlexample.pvlinux busybox修改虛擬機的配置文件
vim busyboxname = "busybox10"kernel = "/boot/vmlinuz"ramdisk = "/boot/initramfs.img"root = "/dev/xvda ro"extra = "selinux=0 init=/bin/sh"memory = 256vcpus = 2#vif = [ 'bridge=br0' ] #先不用配置網絡,在后面在進行網絡配置disk = [ '/images/xen/busybox10.img,raw,xvda,rw' ]? 啟動虛擬機
xl create busybox -c這樣就能進入到虛擬機中了,在虛擬機中可以使用一些基本的Linux命令
ls ip addr這里,我們可以看到,虛擬機中沒有網卡
5、添加網橋,給虛擬機加載前端驅動程序
此時,我們需要為虛擬機去添加網絡
rpm -ql bridge-utils #如果沒有該工具,我們就需要yum install bridge-utils brctl addbr br0 brctl addif br0 eno16777736有了虛擬網橋br0后,我們就需要為虛擬機配置網卡信息
cd /etc/xen/ vim busyboxvif = [ 'bridge=br0' ] #這時候就可以將網卡添加到虛擬機
? 同時,我們還需要將網卡前端驅動程序復制到busybox的目錄下面去,這里的ko文件由自己提供的
cp /root/xen-netfront.ko /mnt/lib/最后進入到虛擬機中加載驅動程序,再配置網卡即可
#在busybox中的操作:insmod /lib/xen-netfront.ko ip addr ip addr add 192.168.238.100/24 dev eth0
再將本地網卡eno16777736也添加網橋中,這樣本地網絡就與真實網絡相同了
brctl addif br0 eno16777736 ifconfig br0 192.168.238.101/24 up #給網橋配置IP地址此時,虛擬網橋地址和本地vmnet8以及虛擬機的eth0就處于同一個網段了;
6、測試網絡
實驗結果:
?
轉載于:https://www.cnblogs.com/BurnovBlog/p/10749770.html
總結
以上是生活随笔為你收集整理的实验三:xen环境下的第一个虚拟机的安装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络编程-计算机网络
- 下一篇: docker-elk装IK自定义分词库