Skip to content
This repository was archived by the owner on Dec 7, 2023. It is now read-only.
This repository was archived by the owner on Dec 7, 2023. It is now read-only.

Running ignite on ZoL (ZFS on Linux) fails with: failed to mount /tmp/containerd-mount #630

@morancj

Description

@morancj

Using containerd:

➜ sudo ignite ps -a
VM ID	IMAGE	KERNEL	SIZE	CPUS	MEMORY	CREATED	STATUS	IPS	PORTS	NAME

➜ LOG_START=$( date '+%Y-%m-%d %H:%M:%S' ) ; export LOG_START

➜ sudo ignite ps -a
VM ID	IMAGE	KERNEL	SIZE	CPUS	MEMORY	CREATED	STATUS	IPS	PORTS	NAME

➜ sudo ignite run --runtime containerd weaveworks/ignite-ubuntu \
  --interactive \
  --name containerd-ignite-ubuntu \
  --cpus 4 \
  --ssh \
  --memory 2GB \
  --size 10G
INFO[0001] Created VM with ID "58196d97b056a6c2" and name "containerd-ignite-ubuntu"myhost
FATA[0001] failed to start container for VM "58196d97b056a6c2": failed to mount /tmp/containerd-mount263297979: invalid argumentmyhost

➜ sudo ignite ps -a
VM ID			IMAGE				KERNEL				SIZE	CPUS	MEMORY	CREATED	STATUS	IPS	PORTS	NAME
58196d97b056a6c2	weaveworks/ignite-ubuntu:latest	weaveworks/ignite-kernel:4.19.125	10.0 GB	4	2.0 GB	4s ago	Stopped			containerd-ignite-ubuntu

➜ sudo ignite vm rm containerd-ignite-ubuntu
INFO[0000] Removing the container with ID "ignite-58196d97b056a6c2" from the "cni" networkmyhost
INFO[0000] CNI failed to retrieve network namespace path: container "ignite-58196d97b056a6c2" in namespace "firecracker": not foundmyhost
INFO[0000] Removed VM with name "containerd-ignite-ubuntu" and ID "58196d97b056a6c2"myhost

➜ journalctl -k -S "$LOG_START" --no-pager
-- Logs begin at Thu 2020-01-09 12:05:37 GMT, end at Mon 2020-06-29 13:12:37 BST. --
Jun 29 13:12:31 myhost kernel: EXT4-fs (dm-2): mounted filesystem with ordered data mode. Opts: (null)
Jun 29 13:12:32 myhost kernel: overlayfs: upper fs does not support RENAME_WHITEOUT.
Jun 29 13:12:32 myhost kernel: overlayfs: upper fs missing required features.

➜

Using Docker:

➜ LOG_START=$( date '+%Y-%m-%d %H:%M:%S' ) ; export LOG_START

➜ sudo ignite ps -a
VM ID	IMAGE	KERNEL	SIZE	CPUS	MEMORY	CREATED	STATUS	IPS	PORTS	NAME

➜ sudo ignite run --runtime docker weaveworks/ignite-ubuntu \
  --interactive \
  --name docker-ignite-ubuntu \
  --cpus 4 \
  --ssh \
  --memory 2GB \
  --size 10G
INFO[0001] Created VM with ID "beebb8f7112b1703" and name "docker-ignite-ubuntu"myhost
INFO[0002] Networking is handled by "cni"myhost
INFO[0002] Started Firecracker VM "beebb8f7112b1703" in a container with ID "aa2eccd08da5a6ce5134b6eb86beb047739b626b50018e5395a1b149c10425f2"myhost
INFO[0002] Waiting for the ssh daemon within the VM to start...myhost
beebb8f7112b1703

Ubuntu 20.04 LTS beebb8f7112b1703 ttyS0

beebb8f7112b1703 login: read escape sequence

➜ sudo ignite ps -a
VM ID			IMAGE				KERNEL					SIZE	CPUS	MEMORY	CREATED	STATUS	IPS		PORTS	NAME
beebb8f7112b1703	weaveworks/ignite-ubuntu:latest	weaveworks/ignite-kernel:4.19.125	10.0 GB	4	2.0 GB	10s ago	Up 10s	10.61.0.10		docker-ignite-ubuntu

➜ sudo ignite vm --runtime docker stop docker-ignite-ubuntu
INFO[0000] Removing the container with ID "ignite-beebb8f7112b1703" from the "cni" networkmyhost
INFO[0002] Stopped VM with name "docker-ignite-ubuntu" and ID "beebb8f7112b1703"myhost

➜ sudo ignite vm --runtime docker rm docker-ignite-ubuntu
INFO[0000] Removing the container with ID "ignite-beebb8f7112b1703" from the "cni" networkmyhost
INFO[0000] CNI failed to retrieve network namespace path: Error: No such container: ignite-beebb8f7112b1703myhost
INFO[0000] Removed VM with name "docker-ignite-ubuntu" and ID "beebb8f7112b1703"myhost

➜ journalctl -k -S "$LOG_START" --no-pager
-- Logs begin at Thu 2020-01-09 12:05:37 GMT, end at Mon 2020-06-29 13:19:36 BST. --
Jun 29 13:19:08 myhost kernel: EXT4-fs (dm-2): mounted filesystem with ordered data mode. Opts: (null)
Jun 29 13:19:10 myhost kernel: IPv6: ADDRCONF(NETDEV_CHANGE): veth7cc424bc: link becomes ready
Jun 29 13:19:10 myhost kernel: ignite0: port 1(veth7cc424bc) entered blocking state
Jun 29 13:19:10 myhost kernel: ignite0: port 1(veth7cc424bc) entered disabled state
Jun 29 13:19:10 myhost kernel: device veth7cc424bc entered promiscuous mode
Jun 29 13:19:10 myhost kernel: ignite0: port 1(veth7cc424bc) entered blocking state
Jun 29 13:19:10 myhost kernel: ignite0: port 1(veth7cc424bc) entered forwarding state
Jun 29 13:19:10 myhost kernel: br_eth0: port 1(vm_eth0) entered blocking state
Jun 29 13:19:10 myhost kernel: br_eth0: port 1(vm_eth0) entered disabled state
Jun 29 13:19:10 myhost kernel: device vm_eth0 entered promiscuous mode
Jun 29 13:19:10 myhost kernel: br_eth0: port 1(vm_eth0) entered blocking state
Jun 29 13:19:10 myhost kernel: br_eth0: port 1(vm_eth0) entered forwarding state
Jun 29 13:19:10 myhost kernel: br_eth0: port 2(eth0) entered blocking state
Jun 29 13:19:10 myhost kernel: br_eth0: port 2(eth0) entered disabled state
Jun 29 13:19:10 myhost kernel: device eth0 entered promiscuous mode
Jun 29 13:19:10 myhost kernel: br_eth0: port 2(eth0) entered blocking state
Jun 29 13:19:10 myhost kernel: br_eth0: port 2(eth0) entered forwarding state
Jun 29 13:19:23 myhost kernel: br_eth0: port 2(eth0) entered disabled state
Jun 29 13:19:23 myhost kernel: ignite0: port 1(veth7cc424bc) entered disabled state
Jun 29 13:19:23 myhost kernel: device eth0 left promiscuous mode
Jun 29 13:19:23 myhost kernel: br_eth0: port 2(eth0) entered disabled state
Jun 29 13:19:23 myhost kernel: device veth7cc424bc left promiscuous mode
Jun 29 13:19:23 myhost kernel: ignite0: port 1(veth7cc424bc) entered disabled state
Jun 29 13:19:24 myhost kernel: br_eth0: port 1(vm_eth0) entered disabled state
Jun 29 13:19:26 myhost kernel: device vm_eth0 left promiscuous mode
Jun 29 13:19:26 myhost kernel: br_eth0: port 1(vm_eth0) entered disabled state

➜

Config:

➜ sudo cat /etc/docker/daemon.json
{
    "storage-driver": "zfs",
    "log-driver": "journald"
}

➜ containerd config dump | grep -i -B1 -A3 zfs
    [plugins."io.containerd.grpc.v1.cri".containerd]
      snapshotter = "zfs"
      default_runtime_name = "runc"
      no_pivot = false
      [plugins."io.containerd.grpc.v1.cri".containerd.default_runtime]

➜ zfs list -r -t all -o quota,mountpoint zfsroot/containerd
QUOTA  MOUNTPOINT
  10G  /var/lib/containerd/io.containerd.snapshotter.v1.zfs

➜ ls -la /var/lib/containerd/io.containerd.snapshotter.v1.zfs
total 2
drwxr-xr-x  2 root root  2 Jun 29 10:33 .
drwx--x--x 11 root root 11 Jun 29 11:29 ..

➜ lsb_release -a ; uname -o -r -m -s
LSB Version:	1.4
Distributor ID:	Arch
Description:	Arch Linux
Release:	rolling
Codename:	n/a
Linux 5.7.6-arch1-1 x86_64 GNU/Linux
➜ ignite version
Ignite version: version.Info{Major:"0", Minor:"7", GitVersion:"v0.7.0", GitCommit:"0e3459476130fa360fcd058d4cf8a8ef7fdb68a0", GitTreeState:"clean", BuildDate:"2020-06-02T23:22:10Z", GoVersion:"go1.14.2", Compiler:"gc", Platform:"linux/amd64", SandboxImage:version.Image{Name:"weaveworks/ignite", Tag:"v0.7.0", Delimeter:":"}, KernelImage:version.Image{Name:"weaveworks/ignite-kernel", Tag:"4.19.125", Delimeter:":"}}
Firecracker version: v0.21.1
Runtime: containerd


➜ sudo ignited version
Ignite version: version.Info{Major:"0", Minor:"7", GitVersion:"v0.7.0", GitCommit:"0e3459476130fa360fcd058d4cf8a8ef7fdb68a0", GitTreeState:"clean", BuildDate:"2020-06-02T23:22:15Z", GoVersion:"go1.14.2", Compiler:"gc", Platform:"linux/amd64", SandboxImage:version.Image{Name:"weaveworks/ignite", Tag:"v0.7.0", Delimeter:":"}, KernelImage:version.Image{Name:"weaveworks/ignite-kernel", Tag:"4.19.125", Delimeter:":"}}
Firecracker version: v0.21.1
Runtime: containerd

➜ docker info
Client:
 Debug Mode: false

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 100
 Server Version: 19.03.11-ce
 Storage Driver: zfs
  Zpool: zfsroot
  Zpool Health: ONLINE
  Parent Dataset: zfsroot/docker
  Space Used By Parent: 15529604608
  Space Available: 16682650112
  Parent Quota: 32212254720
  Compression: off
 Logging Driver: journald
 Cgroup Driver: cgroupfs
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: d76c121f76a5fc8a462dc64594aea72fe18e1178.m
 runc version: dc9208a3303feef5b3839f4323d9beb36df0a9dd
 init version: fec3683
 Security Options:
  apparmor
  seccomp
   Profile: default
 Kernel Version: 5.7.6-arch1-1
 Operating System: Arch Linux
 OSType: linux
 Architecture: x86_64
 CPUs: 8
 Total Memory: 31.22GiB
 Name: myhost
 ID: YL7Z:MUXV:SUE5:BDII:NV6F:26JS:RUXA:34D4:7KNK:Q6IJ:2OQT:REHK
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false
➜

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/runtimeIssues related to container runtimeskind/bugCategorizes issue or PR as related to a bug.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions