DevConf.cz 2016 has ended
Can’t make it to #DevConfCZ for any reason? You can still attend virtually: youtube.com/RedHatCzech

Sign up or log in to bookmark your favorites and sync them to your phone or calendar.

virtualization [clear filter]
Friday, February 5

09:50 CET

Analyzing KVM BlockIO event latency
The workshop init script 'vm_env_setup.sh' is in http://github.com/arcolife/latency_analyzer/

So, this is an ongoing investigation of KVM blockIO event tracing and analysis, within the performance engineering team at Red Hat. During this process, we have come come across a few anomalies which we'd like to share with the community to gain support and contribution for tooling/kernel modules of Linux, associated with performance. We have, as a part of this investigation, also released a couple of tools, which we'd like to showcase at DevConf.

This talk is intended for system admins as well as those seeking general performance tuning/analysis. The lab would be a mix of a brief overview followed by a hands on tracing of events, analysis of a test case and reaching conclusions based on that result.

The project link is a work in progress but we have released some utilities and will continue to work on the following repositories as well:
- http://github.com/psuriset/kvm_io/
- http://github.com/arcolife/perf-script-postprocessor

Please note that vm_env_setup.sh runs perfectly on fedora 23. If you have other distros/versions, kindly at least do the following, to speed up the workshop:

  1. install the pip2 module perf-script-postprocessor. You might get dependency erros on rpm based systems. So install the equivalent of following packages.

    gcc lapack lapack-devel blas blas-devel gcc-gfortran gcc-c++ liblas libffi-devel libxml-devel libxml2-devel libxslt-devel redhat-rpm-config
  2. install @Virtualization packages for your distro, as well as qemu-kvm ..so we could use virsh / virt-install / qemu-kvm as accelerator..

  3. run the following part from vm_env_setup.sh, as following..

    # ./handy_minimalistic.sh



avatar for Archit Sharma

Archit Sharma

Associate Performance Engineer, Red Hat
Associate Performance Engineer at Red Hat; involved with various tooling efforts, containerization, tooling/visualization and the Red Hat Access Insights project. I'm currently contributing to Grafana project on supporting Elasticsearch as a metric source. Also a part of the following... Read More →

Friday February 5, 2016 09:50 - 11:20 CET
workshops A112 (64 places)
Saturday, February 6

09:50 CET

Smart VM Scheduling
The oVirt project allows efficient management of virtualized
datacenters. Deciding what machine should host a certain VM is one of
the important functions of the management platform. Unfortunately it
is also one of the complex ones, because there can be many rules
governing the placement policy and there is a time limit in which a VM
has to be started or migration initiated.

All major projects today have a similar scheduling scheme where each VM is
considered separately and that causes fragmentation of free resources.
Both Nova scheduler and Kubernetes provide a set of filter and weight modules.

oVirt has a rich set of modules too but we are now allowing
integration with a next
generation algorithm set based on probabilistic (soft computing) methods thanks
to the Optaplanner project.

avatar for Martin Sivak

Martin Sivak

Senior Software Engineer, Red Hat
Martin has been working for Red Hat (Brno, Czech Republic) for the past eight years. He spent most of the time working in the installer team and now he is part of a team responsible for the scheduling and quality of service efforts in oVirt. He has a master degree in the field of... Read More →

Saturday February 6, 2016 09:50 - 10:30 CET
c. D0207 (90 places)

10:40 CET

Host fencing in oVirt - Fixing the unknown and allowing VMs to be highly available
In order to support highly available VMs, oVirt needs a mechanism to determine the status of a VM running on non-responsive host. We need to be sure that VM is not running before restarting it on a different host to prevent data corruption. And oVirt fencing flow is crucial to achieve this goal.

Host fencing flow is a part of oVirt host monitoring, it takes care of non-responsive hosts and tries to make them responsive again. We will describe each step of the whole fencing flow on real world issues, describe what actions around hosts/VMs are taken after each step of fencing flow and also describe how power management interface of the hosts is used.

avatar for Martin Peřina

Martin Peřina

Manager, Software Engineering, Red Hat
My name is Martin Peřina and I work as Software Engineering Manager at Red Hat, currently leading Infrastructure and Network teams for RHV.

Saturday February 6, 2016 10:40 - 11:20 CET
c. D0207 (90 places)

11:30 CET

This talk is about virtualization with KVM and QEMU on the powerpc platform, especially with regard to the new POWER8 systems. After a short introduction to the Power platform in general, the differences to KVM on the x86 platform will be explained, like the devices that are special to the PPC sPAPR platform and the different kind of KVM kernel modules. To give some help with troubleshooting a non-working guest partition, we'll also have a look the user-related concepts of the guest boot firmware ("Open Firmware" as it is called in the powerpc world).

avatar for Thomas Huth

Thomas Huth

Red Hat
I'm working for Red Hat in the virtualization team, where my colleagues and I take care of KVM and QEMU on the POWER8 platform. In my past job, I also did KVM/QEMU development on System z (s390x) and was involved in developing firmware implementations for various powerpc based sy... Read More →

Saturday February 6, 2016 11:30 - 12:10 CET
c. D0207 (90 places)

12:20 CET

Linux as a guest on Hyper-V
Microsoft Hyper-V is among supported hypervisors for Linux kernel since 2009. What's actually supported and why do we need all the specifics in kernel? What are the PV drivers and how do they work? In my presentation I'll try to cover the internals of Hyper-V support in Linux kernel, current status of different drivers and challenges we face trying to make Linux work even better.

avatar for Vitaly Kuznetsov

Vitaly Kuznetsov

Principal Software Engineer, Red Hat
Vitaly works at Virtualization Engineering team at Red Hat focusing on KVM development as well as making Linux the best guest for other hypervisors. He frequently presents at FOSDEM, KVM Forum, DevConf and other technical conferences.

Saturday February 6, 2016 12:20 - 13:00 CET
c. D0207 (90 places)

13:10 CET

Performance tuning of virtual machines and containers
Virtual machines and containers are everywhere. They have become an important part of not only developer's live but mainly system administrators and whole enterprise environment. With that huge impact, the performance is becoming more important. In my talk I am going to show various approaches since performance is tied to given use case. While some users have some dedicated machines for virtualization and can isolate most of their CPUs for virtual machine's sake, usual developers on desktops almost certainly will not do that. And while I/O throughput is important for databases running in virtual machines, rendering a video aims at something else: vCPU and memory throughput. I'm going to cover these in my talk. Moreover, the use cases will be covered with live demos too.


Michal Prívozník

I am one of the main libvirt developers and currently working for Red Hat for 8 years. Beside my regular work on libvirt I maintain libvirt-snmp, libvirt-designer, libvirt-php and contribute to other project within virtualization stack. Among that I lead some GSoC students too.

Saturday February 6, 2016 13:10 - 13:50 CET
c. D0207 (90 places)

14:00 CET

SPICE on Windows
This talk will present how Windows builds of SPICE components are made, with the goal of showing that this is quite easy, and can be done from the comfortable familiarity of a Linux machine. A short overview of current and upcoming SPICE features will also be given.

www.spice-space.org is a link for the SPICE project.


Christophe Fergeau

Red Hat
Christophe has been working for Red Hat in the SPICE team since 2011. Before that, he was, and still is a GNOME contributor, first as a translator, and quickly as a developer.
avatar for Marc-Andre Lureau

Marc-Andre Lureau

Senior Software Engineer, Red Hat, Inc.
QEMU & Spice developer, working for Red Hat. I used to work on other desktop & multimedia related projects. I gave various talks in conferences such as FOSDEM, DevConf, and previous KVM Forum.

Saturday February 6, 2016 14:00 - 14:40 CET
b. D0206 (154 places)

14:00 CET

Next Generation Config Mgmt.
A presentation about a design for a next generation config management tool, and the specific problems this design solves.

Three of the main design features of the tool include:
* Parallel execution
* Event driven mechanism
* Distributed architecture

This talk will demo a prototype I've built that implements these ideas. It is written in golang, and is completely free software.

avatar for James Shubin

James Shubin

Config. Management Architect, Red Hat
James Shubin is is best known for his work on Configuration Management, his Technical Blog, Oh-My-Vagrant, (a tool he started) and other related DevOps friendly projects. Besides being a Configuration Management expert, he can often be found giving talks on Config Mgmt., DevOps, Vagrant... Read More →

Saturday February 6, 2016 14:00 - 14:40 CET
c. D0207 (90 places)

14:50 CET

in-depth look of virtual machine migration algorithms
Pre-copy live migration refers to the process of moving a running virtual machine or application between dierent physical machines without disconnecting the client or application. A live migration keeps the guest running on the source host and begins moving the memory without stopping the guest. All modied memory pages are monitored for changes and sent to the destination while the image is sent. The memory is updated with the changed pages. The process continues until the amount of pause time allowed for the guest equals the predicted time for the nal few pages to be transferred.

A problem with pre-copy live migration is that depending on the access pattern in the guest system, the migration process might be unable to reduce the number of dirty pages below the number necessary for the congured pause time to be met.

This presentation analyzes the optimal pattern to copy memory assuming the guest access pattern is cyclic and known in advance.


Marcelo Tosatti

Red Hat
Marcelo works as an engineer in Red Hat's virtualization department.

Saturday February 6, 2016 14:50 - 15:30 CET
c. D0207 (90 places)

15:40 CET

Qemu Disk I/O: Which performs better, Native or Threads?
Qemu can use two different methods to submit disk I/O requests. The default method, "io=threads", uses a thread pool to submit these requests synchronously, while the alternate method, "io=native", uses a single thread to submit these requests asynchronously. We were curious if the default method provided the best overall throughput, so we tested both under a wide array of storage configurations. This included the use of solid state and rotational disks, different host filesystems, and even using a network file system. This paper consists of our analysis results, challenges and improvements.

avatar for Pradeep Surisetty

Pradeep Surisetty

Engineering Manager in Performance Engineering team, Red Hat, Red Hat

Saturday February 6, 2016 15:40 - 16:20 CET
c. D0207 (90 places)

16:30 CET

Avocado and Jenkins: Test Automation and CI
Continuous integration (CI) is a practice where isolated changes
and/or patches are immediately tested and reported on when they
are added either upstream or downstream. The goal of CI is to
provide rapid feedback so that if a defect is introduced into the
code base, it can be identified and corrected as soon as possible.
The libvirt and qemu communities are promoting the use of CIand
are working on integrating Jenkins with test automation frameworks
such asAvocado and OpenStack to make the process more efficient.
This presentation will cover recentdevelopments in the CI efforts
by these communities. We will also discusssome of the issues faced
(and fixed) during deployment of theinfrastructure, pitfalls of
cross-platform integration of effortsand a planned road-map and
next steps to sustain a developingenvironment for all future releases.

avatar for Lukáš Doktor

Lukáš Doktor

Autotest and Avocado-framework maintainer @redhat, Red Hat Czech, s. r. o.
Develop and maintain the Avocado/Avocado-vt projects (python), taking care of an internal mini-ci for ppc64 and aarch64 (virtualization/qemu/remote debugging).
avatar for Yash Mankad

Yash Mankad

Software Engineer - Virtualization, CI, Automation, Red Hat
Yash works in the Virtualization group at Red Hat where he is leading the efforts to implement a continuous integration environment that implements multi-architecture testing for qemu-kvm, and libvirt on RHEL, Fedora, and CentOS.

Saturday February 6, 2016 16:30 - 17:10 CET
c. D0207 (90 places)

17:20 CET

Debugging the Virtualization Layer (libvirt and QEMU) in OpenStack
Virtualization drivers (e.g. libvirt, QEMU/KVM) are the core part of OpenStack Compute layer. An OpenStack environment is challenging to debug as is -- more so when multiple Compute nodes and thereby multiple libvirt daemons and QEMU
instances are involved. A good grasp of Virtualization debugging mechanisms is vital for effective root cause analysis. To that end, libvirt and QEMU provide a rich set of debugging controls that allow us to query (or modify) the state of virtual machines in distress.

This talk focuses on providing an in-depth view of aforementioned techniques.

Topics include: debugging Nova Compute process crashes; gathering specific patterns from libvirt log filters, libvirt environment variables, and systemd journal fields; live querying the VM (and QEMU) state through `virsh` and QEMU Machine Protocol (QMP) commands; tuning the libvirt daemon logging; monitoring events emitted by QEMU, etc. Along with a real-world example that ties together some of the techniques discussed.

Audience would include OpenStack infrastructure operators, Virtualization (libvirt/QEMU/KVM) administrators, developers, tinkerers, or any one interested in understanding the Virtualization layer in OpenStack to help equip yourself with better debugging techniques.

avatar for Kashyap Chamarthy

Kashyap Chamarthy

Senior Software Engineer, Red Hat
Kashyap Chamarthy works at Red Hat, as part of OpenStack Infrastructure engineering group, focusing his contributions on interactions between OpenStack and its underlying Virtualization components (libvirt, QEMU, KVM). In the past, he's presented and participated in the past four... Read More →

Saturday February 6, 2016 17:20 - 18:00 CET
c. D0207 (90 places)
Sunday, February 7

13:10 CET

oVirt and Gluster Hyperconvergence
Ovirt and Gluster Hyperconvergence architecture is a setup where oVirt and Gluster both will run in single commodity boxes that can scale horizontally. This talk will focus on the details of design, configuration and installation of hyper converged hosts with oVirt as the software stack and Gluster for the storage.

avatar for Ramesh Nachimuthu

Ramesh Nachimuthu

Senior Software Engineer, Red Hat
Ramesh is working for Red Hat as a Java developer and contributes to oVirt project for Gluster integration. He also worked on a monitoring solution for Gluster using Nagios.

Sunday February 7, 2016 13:10 - 13:50 CET
e. E104 (72 places)

14:00 CET

Improvements in gluster for virtualization usecase
Brief Abstract:

Gluster is a popular distributed scale-out filesystem, and KVM is the de-facto hypervisor on linux.
We will talk about setting-up hyper-converged environment using Gluster and KVM.
This will also cover improvements done in Gluster for virtualization use case in general and hyper-converged use case in particular.

Some of the improvements include:

- Enabling Qemu's Gluster block backend for multiple storage servers
- Enhance the network disk support for gluster in libvirt
- Bug fixes for the virtualization use case

- Introduce transport over Unix domain Socket for hyper-converged setup
- Bug fixes In RDMA transport
- Improvements for dynamic authentication

Talk will end with demo showcasing hyperconvergence with gluster.

avatar for Prasanna Kumar Kalever

Prasanna Kumar Kalever

Red Hat
Prasanna Kumar Kalever is working with Red Hat, part of Gluster hyperconvergence team, where he need to take care about integration of Gluster as a storage backend for hyperconvergence as part of that he is working closely with qemu and libvirt communities, he is also responsible... Read More →

Sunday February 7, 2016 14:00 - 14:40 CET
e. E104 (72 places)

14:50 CET

Ceph integration with oVirt using Cinder
This talk will cover the integration of Ceph, an highly available
software defined storage, with oVirt virtualization platform.  The
integration is facilitated using Cinder, a block storage service for

We will explore the differences between oVirt traditional storage and
the new Ceph storage type. In addition, learn how Ceph authentication
keys are managed,  introduce the new APIs added for managing live
snapshots for Ceph disks, and discuss future development.

avatar for Nir Soffer

Nir Soffer

Principal Software Engineer, Red Hat
Nir is a long-time contributor to free software projects, working in Red Hat on storage management in oVirt. He is a co-maintainer and lead contributor of vdsm, ovirt-imageio and ioprocess. He has spoken about Python concurrency in PyCon Israel 2017 and about Ceph integration with... Read More →

Sunday February 7, 2016 14:50 - 15:30 CET
e. E104 (72 places)