containers

Proxmox VE - Upgrade from 6.4 to 7.0

Submitted by Scott Dowdle on Tue, 08/10/2021 - 09:31

A while ago I decided to take the plunge by upgrading the 5-node Proxmox VE cluster at work from the 6.4 version (based on Debian 10) to the new 7.x version (based on Debian 11).  Debian hasn't made a GA release of 11 yet so some thought it curious that Proxmox would release PVE 7.4 to GA.

How was the upgrade process?  Proxmox VE is a very light-weight system and doesn't use a whole lot of packages so it was a very easy upgrade process.  Historically, Debian is one of the most pain-free upgrades among the Linux distributions.  PVE does have some advanced features but I'm not using any of them...  no ZFS, no Ceph distributed storage, etc.  All of my VMs use a qcow2 disk image file stored on an standard partition formatted with XFS.   I'm not currently using a lot of containers (mostly VMs) so the switch from cgroups v1 to v2 didn't impact me.  They do have good documentation on the upgrade process as well as a software tool named pve6to7.  I ran pve6to7 and it found no issues.  I backed up all of my VMs and upgraded the first host without incident and then did all of the other hosts one-by-one until they were all complete.  I haven't noticed any issues post upgrade.  There have been quite a number of updates since the upgrade but I'm guessing that is fairly normal as Debian 11 approaches GA release.

What's new in 7.x?  Not a whole lot... at least not in this, the initial release.  The big change is the move to a newer version of Debian... which I imagine was quite some work.  I'd expect them to add more new substancial features in future 7.x releases.  I do post a video below from them showing the main new features in 7.x so far.  Enjoy!

Video: podman systemd-based system containers with GUI Desktop

Submitted by Scott Dowdle on Sun, 11/01/2020 - 17:24

In this screencast I show how to build a podman image using the Fedora 33 base image to include httpd, mariadb, openssh-server as well the XFCE desktop environment with a sampling of desktop applications.  I then make and run a container with the image and show you how to connect to it with ssh, http, and X2Go.  Oh, and I do all of it as a regular user... as a rootless container.  The POWER of podman.  Obviously watch it in full-screen or download. Enjoy!

For information on how to convert a podman container into a systemd service flle that can be managed with systemctl... even as a user service... see this fine video: Managing Containers in podman with systemd Unit Files

Here's a fine article by the master (Dan Walsh) that discusses rootless containers for anyone who might want more info.

Video: A Greybeard's Worst Nightmare (Updated)

Submitted by Scott Dowdle on Sat, 04/20/2019 - 09:31

Trying to wrap one's head around the paradigm changes happening in the industry can be difficult.  Everything is just moving way too fast.  Daniel Riek has been giving a talk for a while now entitled, "A Greybeard's Worst Nightmare."  Here is a fairly recent iteration of his talk where he does an excellent job of providing both a historical context and a bridge to understanding the revolution and evolution that is happening.  Unfortunately a lot of the progress has been coming from black box services provided by proprietary companies who don't see lock-in as a problem.  Daniel explains how the benefits that have been gained by adopting free and open source software don't have to be abandoned in an effort to keep up with industry methodology shifts providing the most innovation and value.  We can and are keeping up... but there is a LOT to learn.

 

Video: Recording a screencast within an LXC container

Submitted by Scott Dowdle on Fri, 09/08/2017 - 22:00

I took the GUI Fedora 26 container I made in the previous video and decided to see if I could do screencasting within the container.  Seems to work just fine.  I think the microphone would have worked within the container if I hadn't been using it on the host to record the video on the host of recording a video within a container.  Inception all over again.  Enjoy!

Higher resolution / quality downloadable version:
lxc-screencasting-20170908.webm (4m:34s, 35.2MB)

Video: LXC, from Start to Finish

Submitted by Scott Dowdle on Fri, 09/08/2017 - 21:14

LXC is a native form of containers available in the mainline Linux kernel for several years now.  Unlike Docker, LXC provides a full "system" container and can even be used for GUI desktop environments.

In this video I show how to install and setup LXC on a Fedora 26 host as well as how to create your first container (also Fedora 26) which is very minimal... and how to build it up via package manager to a complete GUI container including video and audio playback accessed via the x2go remoting protocol that runs over ssh.

I have also made GUI containers of other distributions including CentOS 7, Ubuntu 16.04, Debian 9, and OpenSUSE 42.3... using the pre-made OS Templates shown listed in the video... using their native packages managers, mostly the same packages, and all running systemd and accessible via x2go.

Screencast recorded under Fedora 26 with simplescreenrecorder from the rpmfusion repository.

I did make a few minor mistakes and typos along the way, but making mistakes is how we learn, right?

Higher resolution / quality downloadable version:
lxc-start-to-finish-20170908.webm (34m:19s, 196MB)

Video: What's Next for Containers?

Submitted by Scott Dowdle on Wed, 11/02/2016 - 09:50

Red Hat's Vincent Batts gives a  presentation at systemd.conf 2016 conference entitled, "What's next for containers?".  It is a good overview of where the various container projects are (with no mention of OpenVZ however) and what work needs to be done.  I enjoyed his assessment that the first thing that is next is, "Get Past the Hype," and to, "Make Containers Boring."  Vincent goes over several of the userland tools as well as covers the areas where Linux native containers still need work.  Enjoy.

Video: Fedora 23 LXC - Debian SID and CentOS 7 XFCE containers via X2Go

Submitted by Scott Dowdle on Sun, 02/07/2016 - 17:21

Being a LONG-TIME OpenVZ user, I've been avoiding LXC some. Mainly because it wasn't quite done yet. I thought I'd give it a try on Fedora 23 to see how well it works... and the answer is surprisingly... fairly well. I made two screencast (without sound). I just used the lxc-{whatever} tools rather than virt-manager. Both containers just use the default network config (DHCP handed out via DNSMasq provided by libvirtd) which is NAT'ed private addresses... and were automatically configured and just worked. Here's a list of all of the container OS Templates they offer on x86:

centos 6 amd64 default 20160205_02:16 
centos 6 i386 default 20160205_02:16 
centos 7 amd64 default 20160205_02:16 
debian jessie amd64 default 20160204_22:42 
debian jessie i386 default 20160204_22:42 
debian sid amd64 default 20160207_11:58 
debian sid i386 default 20160204_22:42 
debian squeeze amd64 default 20160204_22:42 
debian squeeze i386 default 20160204_22:42 
debian wheezy amd64 default 20160204_22:42 
debian wheezy i386 default 20160204_22:42 
fedora 21 amd64 default 20160205_01:27 
fedora 21 i386 default 20160205_01:27 
fedora 22 amd64 default 20160205_01:27 
fedora 22 i386 default 20160205_01:27 
gentoo current amd64 default 20160205_14:12 
gentoo current i386 default 20160205_14:12 
opensuse 12.3 amd64 default 20160205_00:53 
opensuse 12.3 i386 default 20160205_00:53 
oracle 6.5 amd64 default 20160205_11:40 
oracle 6.5 i386 default 20160205_11:40 
plamo 5.x amd64 default 20160207_11:59 
plamo 5.x i386 default 20160207_13:13 
ubuntu precise amd64 default 20160205_03:49 
ubuntu precise i386 default 20160205_03:49 
ubuntu trusty amd64 default 20160205_03:49 
ubuntu trusty i386 default 20160205_03:49 
ubuntu trusty ppc64el default 20160201_03:49 
ubuntu vivid amd64 default 20160205_03:49 
ubuntu vivid i386 default 20160205_03:49 
ubuntu wily amd64 default 20160205_03:49 
ubuntu wily i386 default 20160205_03:49 
ubuntu xenial amd64 default 20160205_03:49 
ubuntu xenial i386 default 20160205_03:49

The first one shows the basics of LXC installation on Fedora 23 (per their wiki page on the subject) as well as creating a Debian SID container, getting it going, installing a lot of software on it including XFCE and most common desktop software... and accessing it via X2Go... and configuring XFCE the way I like it. This one was made on my home laptop and my network is a bit slow so I cut out a few long portions where packages were downloading and installing but everything else is there... yes including quite a bit of waiting for stuff to happen.

lxc-on-fedora-23-debian-sid-GUI-container.webm (25 MB, ~41.5 minutes)

The second video is very similar to the first but it is a remote ssh session with my work machine (where the network is way faster) and shows making a CentOS 7 container, installing XFCE and the same common desktop software, and then connecting to it via X2Go using an ssh proxy, and configuring XFCE how I like it. It was done in a single, un-edited take and includes a bit of waiting as stuff downloads and installs... so you get the complete thing from start to finish.

lxc-on-fedora-23-centos-7-GUI-container.webm (22.7 MB, ~31 minutes)

I recorded the screencasts with vokoscreen at 25 frames-per-second @ slightly larger than 720p resolution... and then converted them to webm (vp9) with ffmpeg @ 200kbit video. They compressed down amazing well. I recommend playback in full-screen as the quality is great. Enjoy!