Skip to content

[FEATURE] Ability to change cgroupdriver to systemd #293

Open

Description

@MurzNN

Is your feature request related to a problem?

When we install kubernetes, it recommends the systemd driver for Docker:

[preflight] Running pre-flight checks
        [WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/

So I try to set it via creating file:

cat > /etc/docker/daemon.json <<EOF
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF

But formula removes it on every state apply.
Other way is to change systemd docker service via setting

ExecStart=/usr/bin/dockerd --exec-opt native.cgroupdriver=systemd

Describe the solution you'd like

Will be good to have this setting in Docker formula.

Describe alternatives you've considered

Alternative is not deleting the /etc/docker/daemon.json file, but separate setting in formula will be much better.

Activity

  1. MurzNN commented on Jun 19, 2021

    @MurzNN
    Author

    Seems this can be implemented using docker.pkg.environ option, I'll try this and report results.

  2. danny-smit commented on Jun 20, 2021

    @danny-smit
    Contributor

    The latest version of the formula has support to add settings to the daemon.json. Is that what what you're looking for?

    For example:

    docker:
      pkg:
        docker:
          daemon_config: 
            exec-opts: 
              - native.cgroupdriver=systemd
            log-driver: json-file
            log-opts: 
              max-size: 100m
            storage-driver: overlay2
  3. B1ue-W01f commented on Apr 18, 2022

    @B1ue-W01f

    Thanks, this appears to be the solution. Adding to pillar example may be useful.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions