Kubeadm: Join failed with "path is not absolute" for containerd

Created on 11 Mar 2021  路  5Comments  路  Source: kubernetes/kubeadm

Is this a BUG REPORT or FEATURE REQUEST?

BUG REPORT

Versions

kubeadm version (use kubeadm version):

kubeadm version: &version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.6", GitCommit:"fbf646b339dc52336b55d8ec85c181981b86331a", GitTreeState:"clean", BuildDate:"2020-12-18T12:07:25Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"windows/amd64"}

Environment:

  • Kubernetes version (use kubectl version): v1.19.6
  • Cloud provider or hardware configuration: Intel(R) Xeon(R)
  • OS (e.g. from /etc/os-release): Windows Server 2019 Datacenter (version 1809) (run as a VM)
  • Kernel (e.g. uname -a): OS build 17763.107
  • Others:

What happened?

I am joining a windows server (2019) configured with "containerd" to a kubernetes cluster.

I registered containerd as a Windows service and ran command "kubeadm join".
The following error will occured and join job failed.

PS C:\poc-window> kubeadm join --config=join.yaml
>>
nodeRegistration.criSocket: Invalid value: "//./pipe/containerd-containerd": path is not absolute: //./pipe/containerd-containerd
To see the stack trace of this error execute with --v=5 or higher
PS C:\poc-window> cd \.pipe
cd : 'C:\.pipe' The path doesn't exist, so it can't be found. (I translated this line to English)
Position line: 1 character: 1  (I translated this line to English)
+ cd \.pipe
+ ~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\.pipe:String) [Set-Location], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.SetLocationCommand

In case of docker, it supports tcp socket. Is there a setting for containerd as well?

What you expected to happen?

The Windows Server 2019 node will join k8s cluster.

How to reproduce it (as minimally and precisely as possible)?

I did follow steps.

  1. Install containerd on windows 2019 (https://kubernetes.io/ko/docs/setup/production-environment/container-runtimes/)
  2. containerd service registration
  3. containerd service start
  4. run k8s prepare script (https://github.com/kubernetes-sigs/sig-windows-tools/blob/master/kubeadm/scripts/PrepareNode.ps1)

Anything else we need to know?

containerd configuration

Get-Content config.toml
=====
root = "C:\\ProgramData\\containerd\\root"
state = "C:\\ProgramData\\containerd\\state"
...
[grpc]
  address = "\\\\.\\pipe\\containerd-containerd"
...
[plugins]
  [plugins."io.containerd.grpc.v1.cri"]
  ...
    sandbox_image = "mcr.microsoft.com/oss/kubernetes/pause:1.4.0"
    systemd_cgroup = true
    disable_cgroup = true
    [plugins."io.containerd.grpc.v1.cri".containerd]
      [plugins."io.containerd.grpc.v1.cri".containerd.runtimes]
        [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
          [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
            SystemdCgroup = true
    ....
    [plugins."io.containerd.grpc.v1.cri".cni]
      bin_dir = "C:\\etc\\cni\\net.d\\bin"
      conf_dir = "C:\\etc\\cni\\net.d\\conf"
=====
kinsupport siwindows

Most helpful comment

please try:

npipe:////./pipe/containerd-containerd

this is already in the kubeadm scripts for Win / k8s:
https://github.com/kubernetes-sigs/sig-windows-tools/blob/afc5781f1ae8a72216013a0ac2192a26353d7278/kubeadm/scripts/Install-Containerd.ps1#L167

All 5 comments

I think this is similar to the docker issue(https://github.com/kubernetes/kubeadm/issues/1079) , but I haven't found the case for containerd.

please try:

npipe:////./pipe/containerd-containerd

this is already in the kubeadm scripts for Win / k8s:
https://github.com/kubernetes-sigs/sig-windows-tools/blob/afc5781f1ae8a72216013a0ac2192a26353d7278/kubeadm/scripts/Install-Containerd.ps1#L167

@neolit123 It works. Thanks :D

/close
Given that the problem seems fixed

@fabriziopandini: Closing this issue.

In response to this:

/close
Given that the problem seems fixed

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Was this page helpful?
0 / 5 - 0 ratings