Rancher 2.0 & ZFS

Anyone else tried this?

When trying out rancher and following the ‘quickstart’ I didn’t get very far:

E0713 16:49:34.844265 15389 fs.go:425] Stat fs failed. Error: exec: “zfs”: executable file not found in $PATH: “zfs zfs get -Hp all rpool/root” =>

from the kubelet container. This is ubuntu 16.04.4 w/ZFS. Tried Docker 18 and 17…

Best I can tell the kubelet is using cadvisor or similar, detecting ZFS and trying to use zfs commands to get the most accurate filesystem info. Theoretically one could add the zfs tools to the container and give it access to the appropriate devices, but there are a variety of problems with that approach. Maybe just some sort of option to default to the basic posix tools?

I’m also experiencing the same issue when running in an LXD container using ZFS as a storage backend.

E0802 05:24:54.748328    2088 fs.go:425] Stat fs failed. Error: exec: "zfs": executable file not found in $PATH: "zfs zfs get -Hp all default/containers/rancher" => 

I’m using Ubuntu 16.04 with Docker version 17.06.0-ce, build 02c1d87. I mostly followed instructions from here: https://singularo.com/rancher-20-lxc to get to this point, although I also had to remove apparmor (sudo apt-get purge apparmor).

I’m running the rancher-agent on the same container as rancher/rancher. Likely because of the error above, it gets stuck in the provisioning phase of setting up the cluster with the following message:

[k8s] Job [rke-network-plugin-deploy-job] deletion timedout. Consider increasing addon_job_timout value

Any guidance on how to get past this would be greatly appreciated. If you need any more specific information about my setup, I’m happy to provide it. Thanks!

Here you can find a Dockerimage with ZFS Binarys included:

https://hub.docker.com/r/sdevd/hyperkube/

Hi,

I’m new to k8s and was looking to Rancher to try and help me get to grips with it. However, my machine is ZFS based and docker is also using ZFS for it’s storage backend. Obviously getting the node to connect to rancher has proven to be very difficult. I have attempted to use rke and your hyperkube image in cluster creation, which worked. However, when connecting the node to Rancher I get more errors about the root FS.

My question is; is it possible to run rancher agent on a node that uses ZFS for all partitioned space including ROOT? I use ZFS as I do not have hardware RAID but need some redundancy and like the flexibility of ZFS over MDADM.

I think for the time being I will look into Docker Swarm as it seems less complicated.