由于Kubernetes是容器编排的实际标准,因此Kubernetes的安装仍然是Kubernetes用户(尤其是新手)面临的最大挑战之一。除了Kubernetes本身,他们还需要弄清楚如何安装安装所需的不同工具,例如kubelet,kubeadm和kubectl。
动态主机配置协议是一种为网络中设备提供 IP 地址、子网掩码、默认网关地址、DNS 服务器地址、DNS 搜索前缀、 WINS 服务器地址等动态配置的 TCP/IP 服务协议。DHCP 在 1993 年 10 月成为标准,在 RFC 2131 中包含了大部分的当前规格说明。
在过去,我们在进行程序部署的时候,是直接将环境和程序统一配置部署到主机上,但是这样做容易造成程序与程序之间的混淆,所以为了处理这种问题,我们可以搭建一台不可变的虚拟机镜像,将环境和程序配置部署到虚拟机镜像中,但是虚拟机镜像部署存在体量过于庞大并且不可移动的问题,所以容器技术应运而生,容器技术是基于操作系统级别的虚拟化技术,各个容器与宿主机是隔离的,各个容器之间也是是隔离的,它比虚拟机镜像更容易搭建,并且可以很方便在不同的主机上移动。
如图是 KubeOS 的文件系统布局的设计,首先是 Root 分区,因为 KubeOS 我们采用了双分区升级的方式,每一个分区它会存放一个 OS 的版本,所以说分成了 RootA 和 RootB,每次升级的时候会下载 OS 镜像到另外一个分区,在下次启动的时候将启动目录切换到另外一个分区,就完成了双分区的升级,并且 KubeOS 文件系统是只读的,这也是为了安全性的考虑,但是我们还是提供了一个 persist 分区,用它存放持久性的用户数据,它其中有一个 Union Path,它采用 overlay 的形式,在镜像上增加叠加层,还有一个 Writable Path,它主要使用 bind mount 形式,直接在镜像上面增加了一个可写层,最后是 Boot 分区,存放的是 grub2 文件。
本文主要介绍我主要用到的一些 kubernetes 管理工具,主要挑选了 Lens 、 k9S 以及 Kui。Kui 是由 IBM 开源的云原生开发工具,Kui 提供了一种新的开发体验,Kui 结合了原有 CLI 的强大功能,并提供一种可视化的方式,方便我们对 Kubernetes 中 YAML 或者 JSON 格式数据的处理。