balena-engine icon indicating copy to clipboard operation
balena-engine copied to clipboard

Unable to reuse path for `data-root` and `exec-root`

Open mikesimos opened this issue 5 years ago • 1 comments

Description

Setting data-root and exec-root to the same path, results in containerd: root and state must be different paths error

Steps to reproduce the issue:

  1. Set data-rootand exec-root to the same path
  2. Start balena-engine

Describe the results you received: containerd: root and state must be different paths

Describe the results you expected: A normal startup as in the case of docker (up to 19.03.1),.

Additional information you deem important (e.g. issue happens only occasionally):

Output of balena-engine version:

Client:
 Version:           v18.9.7
 API version:       1.39
 Go version:        go1.10.8
 Git commit:        87ef8e0dca
 Built:             Wed Jun 26 09:53:02 2019
 OS/Arch:           linux/arm64
 Experimental:      false

Server:
 Engine:
  Version:          v18.9.7
  API version:      1.39 (minimum version 1.12)
  Go version:       go1.10.8
  Git commit:       87ef8e0dca
  Built:            Wed Jun 26 09:53:02 2019
  OS/Arch:          linux/arm64
  Experimental:     false

Output of balena-engine info:

Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: v18.9.7
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host null
 Log: journald json-file local
Swarm: 
 NodeID: 
 Is Manager: false
 Node Address: 
Runtimes: bare runc
Default Runtime: runc
Init Binary: balena-engine-init
containerd version: 
runc version: b3d5036b6520060db00c81352d533a5dd919aaaf
init version: N/A (expected: )
Security Options:
 apparmor
Kernel Version: 4.15.0-45-generic
Operating System: Ubuntu 16.04.5 LTS
OSType: linux
Architecture: aarch64
CPUs: 64
Total Memory: 125.7GiB
Name: <redacted>
ID: <redacted>
Docker Root Dir: /var/lib/balena64
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

Additional environment details: physical

mikesimos avatar Jul 26 '19 12:07 mikesimos

How/where are you setting these paths? Can you give some config file examples?

The error seems to come from this part of the containerd code: https://github.com/containerd/containerd/blob/v1.2.2/services/server/server.go#L61 which is the same in balenaEngine

robertgzr avatar Jul 26 '19 14:07 robertgzr