nfs-ganesha-server-and-external-provisioner icon indicating copy to clipboard operation
nfs-ganesha-server-and-external-provisioner copied to clipboard

Fix Execution on Fedora 36 and Kubernetes v1.24.3

Open modzilla99 opened this issue 2 years ago • 3 comments

With Fedora CoreOS 36 and Kubernetes v1.24.3 the container hangs in a CrashLoopBackoff and has to be OOM-killed by the kernel.

With a rebase on F36 and the latest ganesha, the problem is gone.

modzilla99 avatar Sep 16 '22 14:09 modzilla99

CLA Signed

The committers listed above are authorized under a signed CLA.

  • :white_check_mark: login: modzilla99 / name: Justin Lamp (6c998549aab7d1c131c3bc82aada82e9c5f55766, e948dd15709c0d464af6c438cf429753bc968a0b, e447d9c3dd8446a2bc3af5cdd276aedd0c85ea33)

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: modzilla99 Once this PR has been reviewed and has the lgtm label, please assign kvaps for approval by writing /assign @kvaps in a comment. For more information see:The Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment Approvers can cancel approval by writing /approve cancel in a comment

k8s-ci-robot avatar Sep 16 '22 14:09 k8s-ci-robot

Welcome @modzilla99!

It looks like this is your first PR to kubernetes-sigs/nfs-ganesha-server-and-external-provisioner 🎉. Please refer to our pull request process documentation to help your PR have a smooth ride to approval.

You will be prompted by a bot to use commands during the review process. Do not be afraid to follow the prompts! It is okay to experiment. Here is the bot commands documentation.

You can also check if kubernetes-sigs/nfs-ganesha-server-and-external-provisioner has its own contribution guidelines.

You may want to refer to our testing guide if you run into trouble with your tests not passing.

If you are having difficulty getting your pull request seen, please follow the recommended escalation practices. Also, for tips and tricks in the contribution process you may want to read the Kubernetes contributor cheat sheet. We want to make sure your contribution gets all the attention it needs!

Thank you, and welcome to Kubernetes. :smiley:

k8s-ci-robot avatar Sep 16 '22 14:09 k8s-ci-robot

@kvaps sorry for pinging you, but any chance of this (or sth similar) getting merged?

modzilla99 avatar Oct 19 '22 09:10 modzilla99

Hi @kvaps , @modzilla99 .

Without this patch the nfs-ganesha will be OOMKilled installed with the latest helm chart.

I've tested modzilla99:master by installing it in a cluster and running a pod with a mounted NFS share. Everything works smoothly. Could we merge it faster to avoid manual container build and make the installation easier?

I could fork and apply required chart version change and create a new pull request if needed.

wigust avatar Jan 14 '23 07:01 wigust

Hey,

I rebased and bumped the version to v1.6.0. Please tell me if I missed sth!

/assign @kvaps

Best regards, modzilla

modzilla99 avatar Jan 18 '23 09:01 modzilla99

Without this patch the nfs-ganesha will be OOMKilled installed with the latest helm chart.

I found that the problem was caused by a bad ulimit setting. If you change the cri base spec and set the ulimit to something smaller it will fix it (and mysql:5.7 as well).

$ ctr oci spec | jq '.process.rlimits[0].soft=262144 | .process.rlimits[0].hard=524288' > /etc/containerd/cri-base.json
$ tail -n5 /etc/containerd/config.toml
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
  # set default runtime handler to v2, which has a per-pod shim
  runtime_type = "io.containerd.runc.v2"
  # Generated by "ctr oci spec" and modified ulimits to fix OOMKills
  base_runtime_spec = "/etc/containerd/cri-base.json"

modzilla99 avatar Jan 18 '23 10:01 modzilla99

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: kvaps, modzilla99

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment Approvers can cancel approval by writing /approve cancel in a comment

k8s-ci-robot avatar Jan 20 '23 09:01 k8s-ci-robot

Great! Can you add the lgtm label or does @ashishranjan738 need to do that?

modzilla99 avatar Jan 20 '23 09:01 modzilla99

Yeah, I just waited for other PRs be merged,

/lgtm thank you

kvaps avatar Jan 20 '23 12:01 kvaps

/lgtm

kvaps avatar Jan 20 '23 12:01 kvaps