Integrating GlusterFS, qemu and
oVirt
Vijay Bellur
Gluster Workshop – LinuxCon EU 2013
The Future of Storage is Open for Business 2
Agenda
➢Introduction
➢GlusterFS as VM Image Store
➢Integration with QEMU
➢Integration with oVirt
➢Q&A
The Future of Storage is Open for Business 3
GlusterFS
Global namespace
Scale-out clustered
storage building
blocks
Support thousands
of clients
Access using
GlusterFS and NFS
protocols
Linear performance
scaling
The Future of Storage is Open for Business 4
KVM and Qemu
KVM is a full
virtualization solution for
Linux on x86 hardware
containing virtualization
extensions.
Qemu is the driver for
KVM virtualization
The Future of Storage is Open for Business 5
➢ Large scale, centralized
management for server
and desktop
virtualization
➢ Open source alternative
to vCenter / vSphere
➢ Focus on KVM
oVirt
The Future of Storage is Open for Business 6
GlusterFS 3.3
➢ Granular data self heal
➢ Pro-active self healing
➢ Online data migration with remove-brick
➢ Support for O_DIRECT in FUSE
The Future of Storage is Open for Business 7
GlusterFS 3.4
➢Improved write-behind behavior
➢libgfapi with support for DVM
➢Block Device Translator
➢Support for volume/cluster management from oVirt
➢FUSE
➢ Scatter – Gather patchset
➢ gid caching
➢ Configurable fuse queue length
➢ aio support in posix translator
The Future of Storage is Open for Business 8
GlusterFS 3.5
➢ fallocate() support
➢ zerofill support in libgfapi
➢ Improved block device translator
➢ File snapshots
The Future of Storage is Open for Business 9
QEMU & GlusterFS Integration
Integration possible through:
➢ GlusterFS native client - possible with qemu 1.2 and
GlusterFS 3.3
➢ GlusterFS NFS – possible with qemu 1.2 and GlusterFS 3.3
➢ libgfapi – possible with qemu 1.3 and GlusterFS 3.4
The Future of Storage is Open for Business 10
QEMU & GlusterFS Integration
➢ Source: LPC 2012
The Future of Storage is Open for Business 11
QEMU & GlusterFS Integration
➢FIO Numbers (Seq read, 4 files with direct io, qemu
options: if=virtio, cache=none)
Aggregate
BW(kB/s)
Min BW(kB/s) Max BW(kB/s)
Base 63076 15769 17488
FUSE mount 29392 7348 9266
QEMU-
GlusterFS
native
integration
53609 13402 14909
The Future of Storage is Open for Business 12
Architecture
BrowserBrowser
EngineEngine
Directory
Services
Directory
Services
Storage
Server 1
Storage
Server 1
CLICLI
Python
SDK
Python
SDK
R
E
S
T
R
E
S
T
GWT ServletGWT Servlet
api
gwtrpc
over https
REST
over https
xmlrpc
V
D
S
M
V
D
S
M
Storage
Server 2
Storage
Server 2
V
D
S
M
V
D
S
M
Storage
Server n
Storage
Server n
V
D
S
M
V
D
S
M
oVirt & GlusterFS - Architecture
The Future of Storage is Open for Business 13
oVirt & GlusterFS
●
New feature in oVirt 3.1
http://wiki.ovirt.org/wiki/Features/Gluster_Support
●
Cluster Configuration Modes
●
Virtualization only
●
Gluster only
●
Virtualization + Gluster (default)
●
New entities (Volumes, Bricks, Volume Options)
●
VDSM verbs for gluster management
The Future of Storage is Open for Business 14
Architecture
BrowserBrowser
EngineEngine
Directory
Services
Directory
Services
Storage
Server 1
Storage
Server 1
CLICLI
Python
SDK
Python
SDK
R
E
S
T
R
E
S
T
GWT ServletGWT Servlet
api
gwtrpc
over https
REST
over https
xmlrpc
V
D
S
M
V
D
S
M
Storage
Server 2
Storage
Server 2
V
D
S
M
V
D
S
M
Storage
Server n
Storage
Server n
V
D
S
M
V
D
S
M
oVirt & GlusterFS - Architecture
The Future of Storage is Open for Business 15
oVirt Gluster Management Features
➢Cluster Management
● Create Cluster
● Add / Remove Storage Servers
● Delete Cluster
➢Volume Management
● Create Volume
● Add / Remove bricks
● Start / Stop / Delete volume
The Future of Storage is Open for Business 16
oVirt Gluster Management Features
➢Advanced Search
➢Multi Level Administration & RBAC
➢Audit & Alerts
➢ReST API
➢Python SDK & CLI
The Future of Storage is Open for Business 17
ReST API
The Future of Storage is Open for Business 18
Events
The Future of Storage is Open for Business 19
➢
Create PosixFS storage domain (VFS type = glusterfs)
Optimize volume for virt store (Sets optimization options on volume)
Gluster as Virt Store
The Future of Storage is Open for Business 20
Upcoming features (3.2 and beyond)
● Async Tasks
● UFO configuration
Upcoming features (oVirt 3.4 and beyond)
The Future of Storage is Open for Business 21
Upcoming features (3.2 and beyond)
● Storage Device management
● Reports
● Gluster native storage domain
● Volume Quotas
Upcoming features (oVirt 3.2 and beyond)
22
Contribute
● Git repository
git://gerrit.ovirt.org/ovirt-engine
git://gerrit.ovirt.org/vdsm
git://git.gluster.com/glusterfs.git
● IRC Channels
● #ovirt on oftc
● #gluster on freenode
The Future of Storage is Open for Business 23
Thank You!
Q & A

Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013

  • 1.
    Integrating GlusterFS, qemuand oVirt Vijay Bellur Gluster Workshop – LinuxCon EU 2013
  • 2.
    The Future ofStorage is Open for Business 2 Agenda ➢Introduction ➢GlusterFS as VM Image Store ➢Integration with QEMU ➢Integration with oVirt ➢Q&A
  • 3.
    The Future ofStorage is Open for Business 3 GlusterFS Global namespace Scale-out clustered storage building blocks Support thousands of clients Access using GlusterFS and NFS protocols Linear performance scaling
  • 4.
    The Future ofStorage is Open for Business 4 KVM and Qemu KVM is a full virtualization solution for Linux on x86 hardware containing virtualization extensions. Qemu is the driver for KVM virtualization
  • 5.
    The Future ofStorage is Open for Business 5 ➢ Large scale, centralized management for server and desktop virtualization ➢ Open source alternative to vCenter / vSphere ➢ Focus on KVM oVirt
  • 6.
    The Future ofStorage is Open for Business 6 GlusterFS 3.3 ➢ Granular data self heal ➢ Pro-active self healing ➢ Online data migration with remove-brick ➢ Support for O_DIRECT in FUSE
  • 7.
    The Future ofStorage is Open for Business 7 GlusterFS 3.4 ➢Improved write-behind behavior ➢libgfapi with support for DVM ➢Block Device Translator ➢Support for volume/cluster management from oVirt ➢FUSE ➢ Scatter – Gather patchset ➢ gid caching ➢ Configurable fuse queue length ➢ aio support in posix translator
  • 8.
    The Future ofStorage is Open for Business 8 GlusterFS 3.5 ➢ fallocate() support ➢ zerofill support in libgfapi ➢ Improved block device translator ➢ File snapshots
  • 9.
    The Future ofStorage is Open for Business 9 QEMU & GlusterFS Integration Integration possible through: ➢ GlusterFS native client - possible with qemu 1.2 and GlusterFS 3.3 ➢ GlusterFS NFS – possible with qemu 1.2 and GlusterFS 3.3 ➢ libgfapi – possible with qemu 1.3 and GlusterFS 3.4
  • 10.
    The Future ofStorage is Open for Business 10 QEMU & GlusterFS Integration ➢ Source: LPC 2012
  • 11.
    The Future ofStorage is Open for Business 11 QEMU & GlusterFS Integration ➢FIO Numbers (Seq read, 4 files with direct io, qemu options: if=virtio, cache=none) Aggregate BW(kB/s) Min BW(kB/s) Max BW(kB/s) Base 63076 15769 17488 FUSE mount 29392 7348 9266 QEMU- GlusterFS native integration 53609 13402 14909
  • 12.
    The Future ofStorage is Open for Business 12 Architecture BrowserBrowser EngineEngine Directory Services Directory Services Storage Server 1 Storage Server 1 CLICLI Python SDK Python SDK R E S T R E S T GWT ServletGWT Servlet api gwtrpc over https REST over https xmlrpc V D S M V D S M Storage Server 2 Storage Server 2 V D S M V D S M Storage Server n Storage Server n V D S M V D S M oVirt & GlusterFS - Architecture
  • 13.
    The Future ofStorage is Open for Business 13 oVirt & GlusterFS ● New feature in oVirt 3.1 http://wiki.ovirt.org/wiki/Features/Gluster_Support ● Cluster Configuration Modes ● Virtualization only ● Gluster only ● Virtualization + Gluster (default) ● New entities (Volumes, Bricks, Volume Options) ● VDSM verbs for gluster management
  • 14.
    The Future ofStorage is Open for Business 14 Architecture BrowserBrowser EngineEngine Directory Services Directory Services Storage Server 1 Storage Server 1 CLICLI Python SDK Python SDK R E S T R E S T GWT ServletGWT Servlet api gwtrpc over https REST over https xmlrpc V D S M V D S M Storage Server 2 Storage Server 2 V D S M V D S M Storage Server n Storage Server n V D S M V D S M oVirt & GlusterFS - Architecture
  • 15.
    The Future ofStorage is Open for Business 15 oVirt Gluster Management Features ➢Cluster Management ● Create Cluster ● Add / Remove Storage Servers ● Delete Cluster ➢Volume Management ● Create Volume ● Add / Remove bricks ● Start / Stop / Delete volume
  • 16.
    The Future ofStorage is Open for Business 16 oVirt Gluster Management Features ➢Advanced Search ➢Multi Level Administration & RBAC ➢Audit & Alerts ➢ReST API ➢Python SDK & CLI
  • 17.
    The Future ofStorage is Open for Business 17 ReST API
  • 18.
    The Future ofStorage is Open for Business 18 Events
  • 19.
    The Future ofStorage is Open for Business 19 ➢ Create PosixFS storage domain (VFS type = glusterfs) Optimize volume for virt store (Sets optimization options on volume) Gluster as Virt Store
  • 20.
    The Future ofStorage is Open for Business 20 Upcoming features (3.2 and beyond) ● Async Tasks ● UFO configuration Upcoming features (oVirt 3.4 and beyond)
  • 21.
    The Future ofStorage is Open for Business 21 Upcoming features (3.2 and beyond) ● Storage Device management ● Reports ● Gluster native storage domain ● Volume Quotas Upcoming features (oVirt 3.2 and beyond)
  • 22.
  • 23.
    The Future ofStorage is Open for Business 23 Thank You! Q & A