OSV的初体验

来源:互联网 发布:复合矩阵求导公式 编辑:程序博客网 时间:2024/06/11 19:29

http://osv.io/, 上面有讲一下design,但都比较零散,我也只是大概的看了下。

当打开https://github.com/cloudius-systems/osv/wiki感觉还不错,可能以前用github比较少的原因吧,以后个人的project可以放到这上面来,还有markdown也不错,准备学习下。

下面是我开始接触OSV的一些过程。

首先我git clone了osv-master的代码,按照README编译了,

console output:

root@lanfeng-OptiPlex-990:~/osv/osv# ./scripts/run.py
OSv v0.24-51-g0ccc4ec
eth0: 192.168.122.15

/#

应该只是一个裸的os


接下来按照github上download了一个别人编译过的image试试, 不过运行的时候无法连接

env: 
host os:15-Ubuntu
libvirt version:1.2.12

qemu-system-x86_64 -vnc :1 -gdb tcp::1234,server,nowait -m 2G -smp 2 -chardev stdio,mux=on,id=stdio -mon chardev=stdio,mode=readline,default -device isa-serial,chardev=stdio -drive file=osv-v0.24.qemu.qcow2,if=virtio,cache=unsafe -netdev tap,id=hn0,script=qemu-ifup.sh,vhost=on -device virtio-net-pci,netdev=hn0,id=nic1 -device virtio-rng-pci -enable-kvm -cpu host,+x2apic
OSv v0.24
eth0: 192.168.122.89
pthread_setcancelstate() stubbed
/# monitoring-agent failed: connect failed Operation canceled


不过这个问题在osvsv官方上有说明。


next就想跑一下自己的程序,只是出来个hello world......

我找了下apps下netperf,正好现在我在过kvm 上guest的performance,也想看看osv上性能怎么样,当然没有其他workload的情况下,估计也提高不到哪去。

root@lanfeng-OptiPlex-990:~/osv/osv# ./scripts/build image=netperf
Building into build/release.x64
  GEN gen/include/osv/version.h
No such image configuration: netperf. Assuming list of modules.
Importing /root/osv/osv/apps/netperf/module.py
Modules:
  netperf.*
make: Nothing to be done for 'module'.
Preparing usr.manifest
Appending /root/osv/osv/apps/netperf/usr.manifest to usr.manifest
Preparing bootfs.manifest
Saving command line to /root/osv/osv/build/release.x64/cmdline
OSv v0.24-51-g0ccc4ec
eth0: 192.168.122.15
Running mkfs...
Adding /libenviron.so...
Adding /zpool.so...
Adding /libzfs.so...
Adding /libuutil.so...
Adding /zfs.so...
Adding /tools/mkfs.so...
Adding /tools/cpiod.so...
Adding /tools/mount-nfs.so...
Adding /tools/umount.so...
Adding /usr/lib/libgcc_s.so.1...
Adding /usr/lib/libpthread.so.0...
Adding /usr/lib/libboost_filesystem.so.1.55.0...
Adding /usr/lib/libboost_regex.so.1.55.0...
Adding /etc/hosts...
Link /etc/mnttab to /proc/mounts ...
Adding /etc/fstab...
Adding /dev...
Adding /proc...
Adding /tmp...
Adding /tools/netserver.so...
Adding /tools/netperf.so...


root@lanfeng-OptiPlex-990:~/osv/osv# scripts/run.py -nv  --verbose
OSv v0.24-51-g0ccc4ec
4 CPUs detected
Firmware vendor: SeaBIOS
bsd: initializing - done
VFS: mounting ramfs at /
VFS: mounting devfs at /dev
RAM disk at 0x0xffff800002841040 (4096K bytes)
net: initializing - done
vga: Add VGA device instance
eth0: ethernet address: 52:54:00:12:34:56
virtio-blk: Add blk device instances 0 as vblk0, devsize=10737418240
random: virtio-rng registered as a source.
random: <Software, Yarrow> initialized
VFS: unmounting /dev
VFS: mounting zfs at /zfs
zfs: mounting osv/zfs from device /dev/vblk0.1
VFS: mounting devfs at /dev
VFS: mounting procfs at /proc
program zpool.so returned 1
BSD shrinker: event handler list found: 0xffffa00001a62980
        BSD shrinker found: 1
BSD shrinker: unlocked, running
[I/43 dhcp]: Waiting for IP...
[I/246 dhcp]: Server acknowledged IP for interface eth0
eth0: 192.168.122.89
[I/246 dhcp]: Configuring eth0: ip 192.168.122.89 subnet mask 255.255.255.0 gateway 192.168.122.1 MTU 1500
Starting netserver with host 'IN(6)ADDR_ANY' port '12865' and family AF_INET


然后我用客户端测试下,倒是运行起来了,但性能吧几乎没多少提升,

需要注意的-nv,需要-nv选项这样就会在host上生成一个tap,要不然只是会kvm自带的内部网络。还有就是记得在scripts目录下吧qemu_up.sh脚本拷贝进去





1 0
原创粉丝点击