Skip to content

reem/goploop

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

goploop

This is a Go wrapper for libploop, a C library to manage ploop.

What is ploop?

Ploop is a loopback block device (a.k.a. "filesystem in a file"), not unlike loop but with better performance and more features, including:

  • thin provisioning (image grows on demand)
  • dynamic resize (both grow and shrink)
  • instant online snapshots
  • online snapshot merge
  • optimized image migration with write tracker (ploop copy)

Ploop is implemented in the kernel and is currently available in OpenVZ RHEL6 and RHEL7 based kernels. For more information about ploop, see openvz.org/Ploop.

Prerequisites

You need to have

  • ext4 formatted partition (note RHEL/CentOS 7 installer uses xfs by default, that won't work!)
  • ploop-enabled kernel installed
  • ploop kernel modules loaded
  • ploop-lib and ploop-devel packages installed

Currently, all the above comes with OpenVZ, please see openvz.org/Quick_installation. After installing OpenVZ, you might need to run:

yum install ploop-devel

Usage

For examples of how to use the package, see ploop_test.go.

About

Go wrapper for C ploop library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 97.9%
  • Makefile 2.1%