Changes

Jump to: navigation, search

Ploop/readme

23 bytes removed, 15:19, 10 March 2021
m
fixed some typos
<translate>
This document explains how to use user-space <code>ploop</code> utility for typical
use-cases.
== Load modules ==
 
Further ploop commands assume that all necessary modules are loaded:
# modprobe pfmt_raw
# modprobe pio_direct
 
It's not always required to load both <code>pfmt_ploop1</code> (support of ploop1 format) and
== Initialize image file ==
 
In-kernel ploop operates on image files of "<code>raw</code>" or "<code>ploop1</code>" format.
=== Offline merge ===
ploop has no heruistic heuristic about determining raw/ploop1 format of image file. So,
in case of offline merge, user should specify the format of base_delta
explicitly. If it's ploop1, merge command looks like:
# ploop merge /ploop-d2.image /ploop-d1.image /ploop-d.image /ploop.image
 
This will merge /ploop-d2.image, /ploop-d1.image and /ploop-d.image into
/ploop.image.
 
When merge completed, source deltas can be deleted because all data that
was present in them has been copied to destination delta.
 
For raw format, "-f raw" should be added as option. E.g.:
In this case "ploop copy" on node02 will write data to standard output
in some special binary format and "ploop copy" on node01 will read data
from stndard standard input, parse that special format and store data in
/home/ploop1.image ("-s" stands for "source", "-d" stands for "destination").
This should work if standard output of node02 and standard input of node01
== Grow ploop device ==
"ploop grow" command is to extend image file as neccessary necessary (offline or online)
and propagate new block-device size to linux kernel (in online case).
=== Online grow ===
Assuming that /dev/ploop0 is runnung running ploop device, the command:
# ploop grow -s 32g -d /dev/ploop0
someone mounted ext4 on ploop device w/o balloon_ino option, then created
empty balloon file there, found out its inode number and saved it for the
future use).
Currently, only online ballooning is supported. The following command performs
# ploop balloon status -d /dev/ploop0 -m /mnt_ploop
will report current in-kernel status of maintainance maintenance like "merge in progress",
"grow in progress", "ballooning started", etc. This is useful because on the
one hand balloon operation can't be performed while merge or grow is in
# ploop balloon clear -d /dev/ploop0 -m /mnt_ploop
will flush stale in-kernel "BALLOON" state of maintainancemaintenance. This is useful if
previous "ploop balloon" died early leaving in-kernel ploop locked.
user monitors exit status of ploop commands he/she runs in some way. If
user issued "ploop balloon change" and it was killed in the middle, the user
knows that it didn't complete with zero exit status. Then user shoud should inquirecurrent maintainance maintenance state with "ploop balloon status" command, and, if it
reported "FBLOAD" or "RELOC", the user should use "ploop balloon complete"
before proceeding with any other maintainance maintenance operations (shanphsotsnapshot, merge,
grow, balloon).
will check whether existent balloon file was properly processed. This is useful
if previous "ploop balloon" was interrupted, but "ploop balloon status"
reports "OFF" or "BALLOON" maintainance maintenance state. In this case it's possible
that balloon file was inflated but no further processing happened.
* [[Ploop]]
* {{Man|ploop|8}}
</translate>
[[Category: Storage]]

Navigation menu