intel / vck

Volume Controller for Kubernetes
https://ai.intel.com/kubernetes-volume-controller-kvc-data-management-tailored-for-machine-learning-workloads-in-kubernetes/
Apache License 2.0
67 stars 17 forks source link

Cachefilesd: Update the NFS handler in KVC to handle installation of cachefilesd #25

Closed anjalisood closed 6 years ago

balajismaniam commented 6 years ago

@anjalisood @dzungductran why should this be a handler in KVC? Isn't the daemon supposed to be installed in each nodes in the cluster as a part of installation.

anjalisood commented 6 years ago

@balajismaniam looks like it does not need to be a separate handler in KVC. NFS handler can be modified to pass the mount options to K8s and that should be enough. I will modify the issue to reflect that

dzungductran commented 6 years ago

/assign @anjalisood

dzungductran commented 6 years ago

This is no longer possible with KVC

anjalisood commented 6 years ago

I tried to do a POC and was not able to get the cachefilesd installed and running in a container. This is because systemctl and systemd are not available within ubuntu/centos container images. This is by design. Docker should be running a process in the foreground in the container and it will be spawned as PID 1 within the container's pid namespace. Docker is designed for process isolation, not for OS virtualization, so there are no other OS processes and daemons running inside the container (like systemd, cron, syslog, etc), only the entrypoint or command that is run. If they included systemd commands, we would find a lot of things not working since the entrypoint replaces init. Systemd also makes use to cgroups which docker restricts inside of containers since the ability to change cgroups could allow a process to escape the container's isolation. Without systemd running as init inside the container, there's no daemon to process the start and stop commands.

And without systemd and systemctl commands in the container, it is not possible to have the cachefilesd installed in the container.