将多个最终用户机器(PC,Mac,RPi等)转变为一个大型k8s集群

时间:2018-08-21 19:49:06

标签: kubernetes

我是Kuberenetes的新手。

是否有可能使所有完全同意下载我的电子研究应用程序的最终用户机器(PC,Mac,RPi等),将其机器转变为最终包括k8s集群的节点,然后我可以运行kubeflow.org正在进行ML研究吗?

谢谢

1 个答案:

答案 0 :(得分:1)

Kubernetes依赖于某些容器引擎。通常是泊坞窗,我们会尽力为kubernetes创建一个通用的容器接口,而这正是CRI-O的来历,这种抽象使任何容器引擎都可以在其下运行。
话虽如此,容器“不存在”它们是Linux内核中由cgroup和名称空间组成的本地抽象,这意味着抽象和隔离不在虚拟机管理程序中(通常与内核进行通讯)就像常规虚拟机一样,而是在实际的Linux内核中。

MacOS使用自己的内核,据我所知,它不支持任何类型的容器。
Windows确实通过Hyper-V支持容器,我相信Windows Server对它们具有更本地的内置支持。请参阅此链接,以获得更好的说明https://docs.microsoft.com/en-us/virtualization/windowscontainers/about/和kubernetes https://kubernetes.io/docs/getting-started-guides/windows/

就Raspberry PI而言,正在进行的一项工作是将k8引入ARM,以查看此链接(https://github.com/luxas/kubernetes-on-arm)。就是说,您需要整个树莓pi集群才能真正完成该工作,因为它将需要大量资源。一个树莓派不会让你走得太远。

该如何处理? 您需要Linux才能运行kubernetes。到处都是。

如果要创建“巨型” kubernetes集群,最好的选择是对运行Windows的PC或Mac使用虚拟化技术,并创建可用作kubernetes节点的虚拟机。

简而言之,您可以在没有Linux的地方创建虚拟机,并在本地安装kubernetes。

并行,Veertu或纯Xhyve是在MacO上运行虚拟化的好方法。

VmWare或VirtualBox是适用于Windows和Mac的良好虚拟化。

Libvirt和virtualbox是Linux虚拟化的良好解决方案。