Migration from 6.4 to 7.0

WARN: old systemd (< v232) detected, container won't run in a pure cgroupv2 environment! Please see documentation -> container -> cgroup version.
TASK WARNINGS: 1
 
If you run distro releases that break when running in a unified cgroupv2 environment, like CentOS 7, then yes.

The bug it fixed was a bug that could only happen when enforcing the old, legacy mixed cgroup v1 + v2 environment that CentOS 7 needs to run.

There cannot be any patch from our side that fixes CentOS 7 to cope with newer cgroup, either upgrade to CentOS 8 (AppStream or one of the new derivates), force the old cgroup setting via that kernel command line, switch the workload to another distro with more frequent releases or switch to VMs.
Hi, is there a step by step guide to upgrade a centos 7 container to centos 8. I know this is not a proxmox issue, but doc about lxc containers running inside proxmox is not available elsewhere.
 
is there a step by step guide to upgrade a centos 7 container to centos 8. I know this is not a proxmox issue, but doc about lxc containers running inside proxmox is not available elsewhere.
This is really independent of Proxmox VE, and IIRC, there's no official way to upgrade between major CentOS versions independent on what they are hosted (bare metal, CT, VM, ...) - the CentOS project recommends (re)installing and then either move or restore the service/user data.

There are some unofficial guides out there for in place upgrades, YMMV though and I would definitively recommend trying that out on a test instance first.
 
  • Like
Reactions: Fathi
Finally is there a solution to make a CentOS 7 container working on PVE7 ?

I migrated my CT from a PVE6 and nothing works ! It'll be pleasant if the PVE warns before finishing migration !
 
Last edited:
Finally is there a solution to make a CentOS 7 container working on PVE7 ?

I migrated my CT from a PVE6 and nothing works !
What did you actually try?
Both, the upgrade guide and the reference documentation list workarounds with good feedback from some users here that they worked for them.
https://pve.proxmox.com/wiki/Upgrade_from_6.x_to_7.0#CGroupV2
https://pve.proxmox.com/pve-docs/chapter-pct.html#pct_cgroup_compat
It'll be pleasant if the PVE warns before finishing migration !
If you run pve6to7 --full on the host with the old containers like recommended by the official upgrade how-to, the tool checks all systemd versions of containers, and reports any ones that will be affected by the change..
 
  • Like
Reactions: Fathi
My experience tells me we never can be sure all will work as attended, especially in a bulk process. That's why I didn't use pve6to7 script to avoid a potential breakdown of all my containers in the same time. I preferred to opt for only 1 potential failure and I was right.

To me the support page is not really clear. I tried the systemd.unified_cgroup_hierarchy=0 trick but it didn't work for me (I did it after migration, maybe this is why it didn't work). Finally I had to restore a backup of the container on the PVE6.

Can you describe here what is the full process to migrate a CentOS7/PVE6 container to a PVE7 ?
 
My experience tells me we never can be sure all will work as attended, especially in a bulk process. That's why I didn't use pve6to7 script to avoid a potential breakdown of all my containers in the same time. I preferred to opt for only 1 potential failure and I was right.
As described in the upgrade how-to, pve6to7 is a checker script, not automated bulk tooling. Running it can only help, and point out problems, it won't do anything on its own, from the how-to:

Continuously use the pve6to7 checklist script​

A small checklist program named pve6to7 is included in the latest Proxmox VE 6.4 packages. The program will provide hints and warnings about potential issues before, during and after the upgrade process.

To me the support page is not really clear. I tried the systemd.unified_cgroup_hierarchy=0 trick but it didn't work for me (I did it after migration, maybe this is why it didn't work). Finally I had to restore a backup of the container on the PVE6.
Did you actually check if it was active, i.e., checked the journal log and also if it's present in the /proc/cmdline file?
See for how to edit the kernel command line depending on your boot mode:
https://pve.proxmox.com/pve-docs/chapter-sysadmin.html#sysboot_edit_kernel_cmdline

Can you describe here what is the full process to migrate a CentOS7/PVE6 container to a PVE7 ?
Switching back to cgroup V1 through the systemd.unified_cgroup_hierarchy=0 flag is the right way, but you need to ensure its applied correctly. If that doesn't work out for you, one would need to know more about the system status, taken steps and about actual errors you get, i.e., something for the enterprise support.

Please also note that CentOS 7 will be fully EOL in less than a year (2024-06-30), so it might be worth looking into replacing those containers base OS with something newer relatively soon, which would also avoid various compat issues with modern container runtimes.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!