Kubernetes与Linux之间的兼容性

我需要在节点上运行/安装kubernetes(我指的是linux-kernel级别)吗?如果我有一个自定义linux安装了docker的发行版(从源代码),我可以在其上运行k8s吗?需要启用特定的内核配置/标志吗?

是否有任何与docker兼容的linux内核也与k8s兼容,或者在内核级别进行了更多修改(因为k8s实际上支持特定发行版,如Ubuntu,CentOS,Debian ....但不是全部)?

xtren2008 回答:Kubernetes与Linux之间的兼容性

最近,我在内部使用了Centos7之上的内部kubernetes集群,将内部服务部署过程应用到了开发环境中。 我也是一个初学者,但据我所知,

如果我有一个自定义linux发行版,安装了docker(从源代码),我可以在其上运行k8s吗?

  • 是的。您可以在自定义linux发行版上安装和运行kubernetes集群,但是您的linux发行版需要满足最低要求,例如内核版本(3.10+)。 (即Ubuntu16.04 + .. Centos 7)

任何与docker兼容的linux内核也与k8s兼容,或者在内核级别进行了更多修改(因为k8s实际上支持Ubuntu,CentOS,Debian等独立的dists ....但不支持)?

  • 由于kubernetes不运行任何容器,但允许容器在集群主机之间相互通信,因此我同意前者(任何与docker兼容的linux-kernel也与k8s兼容)。 (资源需求是另一个问题。)

仅供参考,我的集群使用:

$ cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

$ uname -a
Linux k8s-master.local 3.10.0-957.10.1.el7.x86_64 #1 SMP Mon Mar 18 15:06:45 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

$ docker --version
Docker version 18.09.5,build e8ff056

$ kubectl version
Client Version: version.Info{Major:"1",Minor:"14",GitVersion:"v1.14.1",GitCommit:"b7394102d6ef778017f2ca4046abbaa23b88c290",GitTreeState:"clean",BuildDate:"2019-04-08T17:11:31Z",GoVersion:"go1.12.1",Compiler:"gc",Platform:"linux/amd64"}
Server Version: version.Info{Major:"1",GitVersion:"v1.14.6",GitCommit:"96fac5cd13a5dc064f7d9f4f23030a6aeface6cc",BuildDate:"2019-08-19T11:05:16Z",GoVersion:"go1.12.9",Platform:"linux/amd64"}

$ kubeadm version
kubeadm version: &version.Info{Major:"1",BuildDate:"2019-04-08T17:08:49Z",Platform:"linux/amd64"}

$ kubelet --version
Kubernetes v1.14.1

本文链接:https://www.f2er.com/3118790.html

大家都在问