These 58 commits are when the Protocol Buffers files have changed:
Commit: | 4cb90da | |
---|---|---|
Author: | Julian Pelizäus | |
Committer: | Thomas Parrott |
lxd/migration/protobuf: Add RBD_AND_RSYNC migration type Signed-off-by: Julian Pelizäus <julian.pelizaeus@canonical.com>
The documentation is generated from this commit.
Commit: | 44887c2 | |
---|---|---|
Author: | Julian Pelizäus | |
Committer: | Julian Pelizäus |
lxd/migration/protobuf: Add RBD_AND_RSYNC migration type Signed-off-by: Julian Pelizäus <julian.pelizaeus@canonical.com>
The documentation is generated from this commit.
Commit: | 0aa3b35 | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Thomas Parrott |
lxd/migration: Adds CRIUType_VM_QEMU protobuf type Although CRIUType prefix here is a misnomer, it aligns with the repurposing of the criu socket for all instance type state transfers, not just containers (using CRIU). Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | 875a7f3 | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Thomas Parrott |
lxd/migration: Adds CRIUType_VM_QEMU protobuf type Although CRIUType prefix here is a misnomer, it aligns with the repurposing of the criu socket for all instance type state transfers, not just containers (using CRIU). Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | 70dd4ae | |
---|---|---|
Author: | Thomas Hipp | |
Committer: | Stéphane Graber |
lxc/migration: Update protobuf with zfs zvol support Signed-off-by: Thomas Hipp <thomas.hipp@canonical.com>
Commit: | 9b41dd5 | |
---|---|---|
Author: | Thomas Hipp | |
Committer: | Thomas Hipp |
lxc/migration: Update protobuf with zfs zvol support Signed-off-by: Thomas Hipp <thomas.hipp@canonical.com>
Commit: | 9e1cbf6 | |
---|---|---|
Author: | Prajwal S N | |
Committer: | Stéphane Graber |
lxd/migration: remove stats protobuf definitions The protobuf definitions for CRIU stats is provided by the go-criu package in `crit/images/stats.proto`. The duplicate definitions in `migration.proto` have been removed and `migration.pb.go` updated. Signed-off-by: Prajwal S N <prajwalnadig21@gmail.com>
Commit: | 521209a | |
---|---|---|
Author: | Prajwal S N | |
Committer: | Prajwal S N |
lxd/migration: remove stats protobuf definitions The protobuf definitions for CRIU stats is provided by the go-criu package in `crit/images/stats.proto`. The duplicate definitions in `migration.proto` have been removed and `migration.pb.go` updated. Signed-off-by: Prajwal S N <prajwalnadig21@gmail.com>
Commit: | 8f196b1 | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Stéphane Graber |
lxd/migration/utils: Adds IndexHeaderVersion to migration header This supports indicating which version (if any) of the index migration header will be sent/recv. Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | 55636ad | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Thomas Parrott |
lxd/migration/utils: Adds IndexHeaderVersion to migration header This supports indicating which version (if any) of the index migration header will be sent/recv. Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | 7bae6cb | |
---|---|---|
Author: | Thomas Hipp | |
Committer: | Thomas Hipp |
lxd/migration: Add header_subvolume_uuids to protobuf Signed-off-by: Thomas Hipp <thomas.hipp@canonical.com>
Commit: | 8638a1d | |
---|---|---|
Author: | Thomas Hipp | |
Committer: | Thomas Hipp |
lxd/migration: Add new zfs feature to protobuf This adds the `migration_header` zfs feature to protobuf. Signed-off-by: Thomas Hipp <thomas.hipp@canonical.com>
Commit: | ef2f77b | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
lxd/migration: Update protobuf config Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | d57ae4d | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
lxd/migration: Update protobuf config Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 3a7dfd6 | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Stéphane Graber |
lxd/migration: Adds expiry_date field to snapshots protobuf Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | 2cd5b8f | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Thomas Parrott |
lxd/migration: Adds expiry_date field to snapshots protobuf Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | c8798bc | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Stéphane Graber |
lxd/migration/migrate/proto: Adds BTRFS Features to offer header Adds following features: migration_header - indicates a migration header will be sent/recv in data channel first. header_subvolumes - indicates migration can send/recv subvolumes. Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | 73698e3 | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Thomas Parrott |
lxd/migration/migrate/proto: Adds BTRFS Features to offer header Adds following features: migration_header - indicates a migration header will be sent/recv in data channel first. header_subvolumes - indicates migration can send/recv subvolumes. Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | da955ef | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Stéphane Graber |
lxd/migration: Adds volumeSize field to MigrationHeader Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | b14ace4 | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Stéphane Graber |
lxd/migration/migrate/proto: Fix alignment Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | 566ce23 | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Thomas Parrott |
lxd/migration/migrate/proto: Fix alignment Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | 1b02d01 | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Thomas Parrott |
lxd/migration: Adds volumeSize field to MigrationHeader Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | ea0248c | |
---|---|---|
Author: | Thomas Parrott | |
Committer: | Thomas Parrott |
lxd/migration: Adds BLOCK_AND_RSYNC migration transport type Will be used for migrating VMs as they have both config volumes (that will use RSYNC) and block volumes. Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
Commit: | 7fc6fe9 | |
---|---|---|
Author: | Free Ekanayaka | |
Committer: | Free Ekanayaka |
Drop vendor directory Signed-off-by: Free Ekanayaka <free.ekanayaka@canonical.com>
Commit: | 153f552 | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
vendor: Temporary Raft vendoring Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 196b526 | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
vendor: Temporary Raft vendoring Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 45a90c7 | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
lxd/migration: Negotiate ZFS compression Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | a720525 | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
lxd/migration: Bi-directional rsync negotiation Closes #5270 Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | e619802 | |
---|---|---|
Author: | Stéphane Graber |
lxd/migration: Negotiate ZFS compression Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | aca0151 | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
lxd/migration: Bi-directional rsync negotiation Closes #5270 Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 1a6406c | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
rsync: Tweak transfer options (delete & compress) LXD when interacting with recent clients will now support: - --delete (to avoid random conflicts) - --compress --compress-level=2 (to reduce bandwidth usage) The level 2 compress appears to be the best CPU/bandwidth tradeoff for most common images and shouldn't cause slowdowns in most cases. Closes #5215 Closes #5212 Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 91bcb66 | |
---|---|---|
Author: | Thomas Hipp | |
Committer: | Stéphane Graber |
lxd: Add support for incremental container copy Signed-off-by: Thomas Hipp <thomas.hipp@canonical.com>
Commit: | 03ecaf4 | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
rsync: Tweak transfer options (delete & compress) LXD when interacting with recent clients will now support: - --delete (to avoid random conflicts) - --compress --compress-level=2 (to reduce bandwidth usage) The level 2 compress appears to be the best CPU/bandwidth tradeoff for most common images and shouldn't cause slowdowns in most cases. Closes #5215 Closes #5212 Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | c48fd4f | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
global: Advertise rsync features Closes #4962 Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 7dfc293 | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
global: Advertise rsync features Closes #4962 Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 4c64ff4 | |
---|---|---|
Author: | Christian Brauner | |
Committer: | Stéphane Graber |
migration: fix cross version migrations New fields that are added to the protobuf definitions need to be optional so to not break migration between different LXD versions. Closes #4780. Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Commit: | 1c93d2c | |
---|---|---|
Author: | Christian Brauner | |
Committer: | Christian Brauner |
migration: fix cross version migrations New fields that are added to the protobuf definitions need to be optional so to not break migration between different LXD versions. Closes #4780. Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Commit: | 92a4fdc | |
---|---|---|
Author: | Stéphane Graber |
lxd/migration: Update protocol Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 05211aa | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
migration: Keep snapshot timestamps in migration Closes #4362 Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 0b2b89a | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
lxd: Move migration code to own package Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 4de1243 | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
lxd: Move migration code to own package Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | 2fe8e8d | |
---|---|---|
Author: | Adrian Reber | |
Committer: | Stéphane Graber |
migrate.proto: silence protobuf compiler warning The protobuf compiler complains that it defaults to 'proto2': [libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: lxd/migrate.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.) This just explicitly sets the default. Signed-off-by: Adrian Reber <areber@redhat.com> Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Commit: | 5d443c7 | |
---|---|---|
Author: | Adrian Reber | |
Committer: | Christian Brauner |
migrate: finish pre-dumping if threshold reached This adds support to stop the pre-dumping if a certain threshold has been reached. Instead of blindly relying on the 'max' iterations this commit makes it possible to finish the pre-dumping if enough memory has already been migrated using the pre-copy migration optimization. The configuration option is: migration.incremental.memory.goal (default to 70%) If the current pre-dump more pages (%) migrated using pre-dumping than defined in above variable the pre-copy migration is finished even if the 'max' iterations has not been reached. The lower the number the sooner the pre-copy migration will finish, but the container downtime during migration will be longer as a result of the time required to transfer the memory pages. The higher the number is, the shorter the container downtime during migration. Signed-off-by: Adrian Reber <areber@redhat.com> Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Commit: | 939a888 | |
---|---|---|
Author: | Adrian Reber | |
Committer: | Christian Brauner |
migrate.proto: silence protobuf compiler warning The protobuf compiler complains that it defaults to 'proto2': [libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: lxd/migrate.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.) This just explicitly sets the default. Signed-off-by: Adrian Reber <areber@redhat.com> Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Commit: | faafedf | |
---|---|---|
Author: | Adrian Reber | |
Committer: | Christian Brauner |
migration: prepare for pre-copy migration (part 2) In addition to the previous pre-copy migration prepare commit which changed the parameters of the Migrate() function this extends the protocol between migration source and destination to detect if pre-copy migration should be used. Currently pre-copy migration defaults to off and can be enabled by setting 'migration.incremental.memory' to true. If it is 'true' and the migration destination side also acknowledges that it supports pre-copy migration the variable 'use_pre_dumps' is set to 'true' and the following commits can use this variable to use pre-copy migration or not in the upcoming patches. Signed-off-by: Adrian Reber <areber@redhat.com> Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Commit: | 6af26af | |
---|---|---|
Author: | Adrian Reber | |
Committer: | Christian Brauner |
migrate: prepare for pre-copy migration (part 3) This introduces a protocol for the rsync transfers to support a variable number of pre-dumps. The number of pre-dumps depends on the workload, the threshold and the number of pre-dumps. Signed-off-by: Adrian Reber <areber@redhat.com> Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Commit: | 7fe4c63 | |
---|---|---|
Author: | Christian Brauner | |
Committer: | Christian Brauner |
migration: stateless incremental containers This adds a new criu migration type "NONE" which can be used to perform mock live migration. Any step but actually calling criu will be performed. Closes #3798. Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Commit: | 90f62db | |
---|---|---|
Author: | Christian Brauner | |
Committer: | Christian Brauner |
ceph: add storage_ceph_migration.go Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Commit: | 71446a2 | |
---|---|---|
Author: | Tycho Andersen | |
Committer: | Stéphane Graber |
Add architecture, stateful, prefix config/devices with local Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Commit: | f1e0411 | |
---|---|---|
Author: | Tycho Andersen | |
Committer: | Stéphane Graber |
container copy: preserve snapshot configuration Previously, we weren't preserving snapshot configuration (as noted in the TODO). Let's do that. Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Commit: | f267806 | |
---|---|---|
Author: | Tycho Andersen |
Add architecture, stateful, prefix config/devices with local Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Commit: | 81cf9bb | |
---|---|---|
Author: | Tycho Andersen | |
Committer: | Tycho Andersen |
container copy: preserve snapshot configuration Previously, we weren't preserving snapshot configuration (as noted in the TODO). Let's do that. Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Commit: | 5de5bd6 | |
---|---|---|
Author: | Tycho Andersen | |
Committer: | Tycho Andersen |
migration: migrate snapshots too This commit also moves snapshots when copying containers. Note that it is pretty dumb: it also copies snapshots in the hot path of migraiton, which is a bad deal. Further, it will only copy things between directory storage backends; this adds the framework necessary for fs specific backend send/receive, to be used in later patches. Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Commit: | e63e9cd | |
---|---|---|
Author: | Tycho Andersen |
get rid of migration subpackage We'll need this to fix migration, since we need to call the apparmor/seccomp primitives, and those live in lxd/, and we can't do circular imports. (Moving the security stuff to a security/ package is also nontrivial, since that depends on containerLXD, which itself should be in a separate package, etc. etc.) Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Commit: | 1879f26 | |
---|---|---|
Author: | Stéphane Graber | |
Committer: | Stéphane Graber |
Send the host uid/gid map over the migration socket Closes #838 Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Commit: | d2b7e94 | |
---|---|---|
Author: | Tycho Andersen | |
Committer: | Tycho Andersen |
implement support for non-live container moves Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Commit: | 837a7a5 | |
---|---|---|
Author: | Tycho Andersen | |
Committer: | Tycho Andersen |
s/FilesystemType/MigrationFSType/g Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Commit: | ff99cfc | |
---|---|---|
Author: | Tycho Andersen | |
Committer: | Tycho Andersen |
use protobufs over migration control socket This fixes one of the TODOs described in the first migration commit. Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>