使用QEMU配置虚拟OCSSD(中文版安装)

安装环境

  • Ubuntu系统版本18.04
kathy@kathy:~$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.5 LTS
Release:	18.04
Codename:	bionic
  • 内核版本
kathy@kathy:~$ uname -a
Linux kathy 5.4.0-42-generic #46~18.04.1-Ubuntu SMP Fri Jul 10 07:21:24 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
kathy@kathy:~$ 

qemu-nvme安装

OCSSD项目中下载qemu-nvme

git clone https://github.com/OpenChannelSSD/qemu-nvme.git

qemu-nvme配置

  • 进入刚才下载的qemu-nvme目录下
kathy@kathy:~$ cd qemu-nvme
kathy@kathy:~/qemu-nvme$ ./configure --target-list=x86_64-softmmu --prefix=$HOME/qemu-nvme
  • 以下是遇到的一些问题和解决办法
ERROR: Python not found. Use --python=/path/to/python
###解决
sudo apt-get install python

ERROR: pkg-config binary 'pkg-config' not found
###解决
sudo apt-get install -y pkg-config

ERROR: glib-2.40 gthread-2.0 is required to compile QEMU
###解决
sudo apt-get install libglib2.0-dev

ERROR: pixman >= 0.21.8 not present.
       Please install the pixman devel package.
###解决
sudo apt-get install libpixman-1-dev

qemu-nvme编译

make -j '# of core'
make install

配置Open-Channel 2.0 SSD设备

  • 首先,如果之前系统没有安装qemu,通过ln命令给qemu-imgqemu-system-x86_64文件创建硬链接,以便在主机的bash中直接使用。
kathy@kathy:~/qemu-nvme$ cd bin
kathy@kathy:~/qemu-nvme/bin$ sudo ln qemu-img /usr/bin
kathy@kathy:~/qemu-nvme/bin$ sudo ln qemu-system-x86_64 /usr/bin
  • 创建OCSSD和系统镜像文件,我们把这两个文件创建在一个新的文件路径下,方便管理。
##创建ocssd.img
kathy@kathy:~/Documents/nvme$ qemu-img create -f ocssd -o num_grp=2,num_pu=4,num_chk=60 ocssd.img

##创建40G 的ubuntu.img文件
kathy@kathy:~/Documents/nvme$ qemu-img create -f qcow2 -o preallocation=full ubuntu.img 40G

为虚拟机qemu安装系统

Ubuntu官网下载系统镜像文件

我下载了两个版本Ubuntu 18.04.5 LTS (Bionic Beaver)Ubuntu 16.04.6 LTS (Xenial Xerus)
因为之前使用的都是Ubuntu16.04.6版本,之前的主机也是这个系统,在虚拟机下使用Ubuntu 18.04.5版本有一些问题,这次主机的系统是Ubuntu 18.04.5版本,所以打算在这个版本日后做一些测试。

把下载好的移动到上述的~/Documents/nvme路径下

安装VNC虚拟网络控制台

kathy@kathy:~$ sudo apt-get install xvnc4viewer

安装虚拟机的操作系统

##从boot启动并安装系统
kathy@kathy:~/Documents/nvme$ sudo qemu-system-x86_64 -hda ubuntu.img -boot d -cdrom ubuntu-18.04.5-desktop-amd64.iso -m 8G -smp 4 -cpu host --enable-kvm -vnc :2

##通过VNC操作
##打开新的终端,就能开到安装画面,按步骤安装即可
kathy@kathy:~$  vncviewer localhost:5902

安装成功后再次开启虚拟机,执行以下命令:

##启动虚拟机
kathy@kathy:~/Documents/nvme$ sudo qemu-system-x86_64 -hda ubuntu.img -m 8G -smp 4 -cpu host --enable-kvm -vnc :2
##挂载OCSSD启动虚拟机
kathy@kathy:~/Documents/nvme$ sudo qemu-system-x86_64 -hda ubuntu.img -m 8G -smp 4 -cpu host --enable-kvm -vnc :4 -blockdev ocssd,node-name=nvme01,file.driver=file,file.filename=ocssd.img -device nvme,drive=nvme01,serial=deadbeef,id=lnvm
##打开VNC控制台
kathy@kathy:~$ vncviewer localhost:5902
  • 因为在4.19+版本的内核中已经有了LightNVM驱动
    在虚拟机中检查内核版本 uname -r
5.4.0-42-generic

因此可以直接跳转到 方法一:下载最新版本的内核部分:

in qemu
sudo dmesg -c
[    0.910463] nvme nvme0: pci function 0000:00:04.0
[    0.946460] nvm: registered nvme0n1 [4/8/60/8/2]

配置内核

安装编译内核所需的包

###在新的终端下执行命令
kathy@kathy:~$ sudo apt install build-essential libncurses5 libncurses5-dev libssl-dev bc bison flex libelf-dev
方法一:下载最新版本的内核
sudo qemu-system-x86_64 -hda ubuntu.img -m 8G -smp 4 -cpu host --enable-kvm -vnc :4 -blockdev ocssd,node-name=nvme01,file.driver=file,file.filename=ocssd.img -device nvme,drive=nvme01,serial=deadbeef,id=lnvm -kernel ./linux-5.13/arch/x86_64/boot/bzImage -append 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kxwang_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值