Ubuntu 16.04.3 LTS

During the latest batch of updates I was informed that the LXD PPA packages were being removed in favor of just installing as a snap.

│ LXD PPAs to go away by end of year                                                          │  
│                                                                                             │  
│ We are deprecating all LXD PPAs at the end of 2017.                                         │  
│                                                                                             │  
│ Existing users should move to the LXD snap as the preferred way to get the latest LXD       │  
│ feature release on older Ubuntu releases.                                                   │  
│                                                                                             │  
│ You can do so by first installing snapd on your system if it's not there already. Once      │  
│ snapd is installed, installing the LXD snap and migrating your existing data can be done    │  
│ with:                                                                                       │  
│                                                                                             │  
│ snap install lxd && lxd.migrate

I am running bridged networking with some ugly routing rules, a 12TB ZFS RAIDz pool that takes about 6 weeks to restore from the cloud using Crashplan, and some other fun stuff to allow certain containers access to local devices and mount points. I'm scared to migrate because even running through a LXD conjure-up was tricky on a clean install, the snap symlinks do not get set up by default so there is an extra layer of complexity in calling the commands from the snap bin/ directory instead of them being global, and I have a large amount of data data I want to save in many of these containers, etc..

Previously I had an issue where I was forced to migrate the pool and had to update the lxd.db with the new pool name before like so:

echo "UPDATE config SET value='lxd/angel' WHERE key='storage.zfs_pool_name';" | sqlite3 /var/lib/lxd/lxd.db

I can create a new location in the existing pool with one of these:

zfs create lxd/snap

...but isn't there a way to just import the existing config to use what I already have without having to copy all this data back to the same array?

root@ayana-angel:~# zfs list | grep snap
lxd/angel/snapshots                                                                         384K  3.69T   128K  none
lxd/angel/snapshots/mysql-server-0                                                          128K  3.69T   128K  none
lxd/angel/snapshots/plex-0                                                                  128K  3.69T   128K  none
lxd/snap                                                                                    128K  3.69T   128K  none

Also, this doesn't even address the reuse of the existing network bridge. I seem to recall the configs being no fun at all to muck around in, so I really want to keep them.

root@ayana-angel:~# history | grep lxc |grep br0
 1049  lxc network attach-profile br0 default eth0
 1050  lxc network detach-profile lxdbr0 default eth0
 1212  lxc network set br0 ipv4.nat true
 2045  history | grep lxc |grep br0

Does anyone have a better way to do this? The last time I jacked this up it took about a week to figure out how to make new container images from tarballs and import them to the new location.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.