[openstack-dev] My notes and experiences about OSv on OpenStack

Gareth academicgareth at gmail.com
Thu Oct 16 02:34:04 UTC 2014


Here is introducing OSv to all OpenStack developers. OSv team is focusing
on performance of KVM based guest OS, or cloud application. I'm interested
in it because of their hard work on optimizing all details. And I had also
worked on deploying OSv on OpenStack environment. However, since my work is
only for private interests in off working time, my progress is pretty slow.
So I have to share my experience and hope other engineers could join it:

# OSv highlights in my mind

1, Super fast booting time means nearly zero down time services, an
alternative way to dynamic flavor changing and time improvement for
deploying instances in KVM based PaaS platform. 2, Great work on
performance. Cloud engineers could borrow experience from their work on
guest OS. 3, Better performance on JVM. We could imagine there are many
overhead and redundancy in host OS/guest OS/JVM. Fixing that could help
Java applications perform closer to bare-metal.

# Enabling OSv on OpenStack

Actually there should not be any big problems. The steps are that building
OSv qcow2 image first and boot it via Nova then. You may face some problems
because OSv image need many new Qemu features, such as virtio-rng-io/vhost
and enable-kvm flag is necessary.

Fortunately, I don't meet any problems with network, Neutron (actually I
thought before network in OpenStack maybe hang me for a long time). OSv
need a tap device and Neutron does good job on it. And then I could access
OSv service very well.

# OSv based demo

The work I finished is only a memcached cluster. And the result is obvious:
memory throughout of OSv based instance has 3 times than it in traditional
virtual machines, and 90% of performance on host OS[0][1]. Since their work
on memcached is quite mature, consider OSv if you need build memcached
instance.

Another valuable demo cluster is Hadoop. When talking about Hadoop on
OpenStack, the topic asked most frequently is the performance on virtual
machines. A known experience is higher version Qemu would help fix disk I/O
performance[2]. But how  does the overlap in JVM/guest OS? I would love to
find that, but don't have so much time.

After of all, the purpose of this thread is to bring an interesting topic
on cloud performance and hope more and more efficient clusters based on
OpenStack (in production use). I don't have so much time on OSv because
this just is my personal interest, but I could prove OSv is a valuable way
and topic.

[0] http://paste.openstack.org/show/121382/
[1] https://github.com/cloudius-systems/osv/wiki/OSv-Case-Study:-Memcached
[2]
https://www.openstack.org/summit/openstack-summit-atlanta-2014/session-videos/presentation/performance-of-hadoop-on-openstack

-- 
Gareth

*Cloud Computing, OpenStack, Distributed Storage, Fitness, Basketball*
*OpenStack contributor, kun_huang at freenode*
*My promise: if you find any spelling or grammar mistakes in my email from
Mar 1 2013, notify me *
*and I'll donate $1 or ¥1 to an open organization you specify.*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20141016/a7f7c2e3/attachment.html>


More information about the OpenStack-dev mailing list