Skip to content

Conversation

@ytsssun
Copy link
Contributor

@ytsssun ytsssun commented Jan 5, 2026

Issue #, if available:
bottlerocket-os/bottlerocket#4725

Description of changes:
Add fail-cgroup-v1 setting to support Kubernetes 1.35+ variants.

Kubernetes 1.35 enables failCgroupV1=true by default in kubelet, causing it to refuse starting on cgroup v1 nodes. While Bottlerocket defaults to cgroup v2, users who have opted into cgroup v1 via
settings.boot.init.systemd.unified_cgroup_hierarchy=0 will need a way to override this behavior.

This adds a new boolean setting:

[settings.kubernetes]
fail-cgroup-v1 = false

This allows users on cgroup v1 to continue running while they plan their migration to cgroup v2.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Copy link
Contributor

@koooosh koooosh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We still need to bump the version here, right?

@ytsssun
Copy link
Contributor Author

ytsssun commented Jan 6, 2026

We still need to bump the version here, right?

I was planning on doing that in the release PR, but I guess I can make them a single PR given the size of the diffs.

@ytsssun ytsssun force-pushed the fail-cgroup-v1-setting/settings-sdk branch 4 times, most recently from 4b41eff to 4562724 Compare January 6, 2026 01:05
@ytsssun
Copy link
Contributor Author

ytsssun commented Jan 6, 2026

Added changelog and bumped the model versions.

@ytsssun ytsssun force-pushed the fail-cgroup-v1-setting/settings-sdk branch 2 times, most recently from 3b4448c to 7dec72d Compare January 6, 2026 22:00
Add fail_cgroup_v1 setting with alias fail-cgroupv1 to match
kubelet flag.

Signed-off-by: Yutong Sun <yutongsu@amazon.com>
Signed-off-by: Yutong Sun <yutongsu@amazon.com>
@ytsssun ytsssun force-pushed the fail-cgroup-v1-setting/settings-sdk branch from 7dec72d to 9d90a70 Compare January 6, 2026 23:02
@ytsssun
Copy link
Contributor Author

ytsssun commented Jan 6, 2026

Force pushed to address comments from @KCSesh. Basically added alias to the setting.

Copy link
Contributor

@KCSesh KCSesh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ytsssun
Copy link
Contributor Author

ytsssun commented Jan 7, 2026

Tested the alias -

[root@admin]# sheltie
bash-5.1# apiclient get settings.kubernetes.fail
{}
bash-5.1# apiclient set settings.kubernetes.fail-cgroupv1=false
bash-5.1# apiclient get settings.kubernetes.fail
{
  "settings": {
    "kubernetes": {
      "fail-cgroup-v1": false
    }
  }
}
bash-5.1# apiclient set settings.kubernetes.fail-cgroup-v1=false
bash-5.1# apiclient set settings.kubernetes.fail-cgroup-v1=true
bash-5.1# apiclient get settings.kubernetes.fail
{
  "settings": {
    "kubernetes": {
      "fail-cgroup-v1": true
    }
  }
}
bash-5.1#

@ytsssun ytsssun merged commit 7fd63bd into bottlerocket-os:develop Jan 7, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants