Skip to content
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

Metadata, duplicate binds and find fixes #57

Merged
merged 4 commits into from
Jan 31, 2018
Merged

Conversation

ijc
Copy link
Contributor

@ijc ijc commented Jan 30, 2018

Three largely independent fixes:

  1. Metadata is in /run/config (not /var/config) since Bump hashes to LinuxKit v0.2 #53 (changes to *.sh).
  2. kubelet now (since v1.9.2?) wants find -printf and hence findutils instead of busybox find (change to Dockerfile)
  3. The CNI directories do not need to be bound twice (once via binds again via runtime.mounts) into the kubelet container (change to build.yml).

Ian Campbell added 4 commits January 30, 2018 16:49
Previously we had:
```
config:
  binds:
  - /var/lib/cni/conf:/etc/cni/net.d:rshared,rbind
  - /var/lib/cni/bin:/opt/cni/bin:rshared,rbind
  ...
  runtime:
    mounts:
    - type: bind
      source: /var/lib/cni/bin
      destination: /opt/cni/bin
      options: ["rw","bind"]
    - type: bind
      source: /var/lib/cni/conf
      destination: /etc/cni/net.d
      options: ["rw","bind"]
```

Which is redundant. Drop `runtime.mounts` to leave just the `binds`.

Signed-off-by: Ian Campbell <ijc@docker.com>
kubelet wants a fully featured `find` now it seems:
```
E0130 14:50:23.475987     654 fsHandler.go:121] failed to collect filesystem stats - rootDiskErr: <nil>, rootInodeErr: cmd [find /var/lib/docker/overlay2/2c4a7692faaaa08afc65430415958e14ae64cd419ad4baa8555cddda3c934814/diff -
xdev -printf .] failed. stderr: find: unrecognized: -printf
BusyBox v1.27.2 (2017-12-12 10:41:50 GMT) multi-call binary.

Usage: find [-HL] [PATH]... [OPTIONS] [ACTIONS]

Search for files and perform actions on them.
```

Unsure when this started.

Signed-off-by: Ian Campbell <ijc@docker.com>
In linuxkit#53 the `linuxkit/metadata` package was updated, which moved the metadata
from `/var/config` to `/run/config`, the effects of which are easy to miss. In
my case KUBE_MASTER_UNTAINT=y was having no effect and user pods were therefore
not getting scheduld.

Signed-off-by: Ian Campbell <ijc@docker.com>
Signed-off-by: Ian Campbell <ijc@docker.com>
@ijc ijc merged commit 049cf07 into linuxkit:master Jan 31, 2018
@ijc ijc deleted the various-fixes branch January 31, 2018 13:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants