-
Notifications
You must be signed in to change notification settings - Fork 848
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
After update to 6.2.0: failed to retrieve kernel parameter #5711
Comments
After switching back to version 6.1.0, the problem still occurs. |
See also concourse/concourse-docker#61 |
Can you give some more details about your system -- what kind of packaging are you using to deploy concourse (binary/systemd/bosh/helm/docker/etc)? What is the underlying OS/distribution? Any kernel configuration could be useful too. While we're at it, can you provide the task you were using as well? You never know what details might be helpful. |
We are using docker-compose to run this concourse instance. It's running on AWS.
We used the following docker-compose file
|
We ran into this same issue on AWS running ubuntu 16.04 with linux kernel version 4.4.0 (I believe that was the version). Upgrade to kernel version 4.15.0 solved the problem. You can get the kernel version you are using with |
Thanks @alexdulin, switching to Ubuntu 18.04 also fixed the problem on our side. |
I can tell a slightly more detailed story here. $ docker run --rm --entrypoint /usr/local/concourse/bin/gdn concourse/concourse:6.0.0 -v
90961f153e3c4eccf6c461e9efa5165ac454f47c
$ docker run --rm --entrypoint /usr/local/concourse/bin/gdn concourse/concourse:6.1.0 -v
51480bc73a282c02f827dde4851cc12265774272 This difference corresponds to the fact that concourse v6.0.0 packaged garden-runc-release v.1.19.10, which we can see depends on cloudfoundry/guardian@90961f1: https://github.com/cloudfoundry/garden-runc-release/tree/v1.19.10/src, but concourse v6.1.0 and v6.2.0 packaged garden-runc-release v1.19.12, which depends on cloudfoundry/guardian@51480bc: https://github.com/cloudfoundry/garden-runc-release/tree/v1.19.12/src. An important difference between v1.19.10 and v1.19.12 of garden-runc-release can be seen in the release notes for v1.19.11:
Looking at discussions like https://discuss.linuxcontainers.org/t/why-is-there-no-tcp-keepalive-under-lxd/891/5, I learned that the procfs mount for
Putting a few things together, this means that garden-runc-release v1.19.11+ won't run correctly inside a user namespace before Linux 4.5. Both @kramerul and @alexdulin mention their docker hosts are running Ubuntu 16.04, and this is an LTS release which promises to ship Linux 4.4: https://wiki.ubuntu.com/XenialXerus/ReleaseNotes#Linux_kernel_4.4. We can therefore conclude that a Concourse v6.1.0+ worker will not run correctly inside a user namespace (most notably, a docker container) on kernel versions pre-4.5 -- and Ubuntu 16.04 LTS is a striking example of this. This probably could afford to be called out in our release notes, and it might be useful for something similar to be declared on the guardian or garden-runc-release repos. |
I have updated the release notes for v5.5.11, v6.1.0, v6.2.0 and v6.3.0 which all bundle versions of |
Summary
After updating concourse from 6.1.0 to 6.2.0, we get the error message
In the worker logs, we can find:
when starting a task
Steps to reproduce
Expected results
Task runs without errors.
Actual results
Additional context
Triaging info
The text was updated successfully, but these errors were encountered: