为什么要有Kubernetes(K8S)?
有了Docker、Docker-Compose,且Docker、Docker-Compose操作起来也不复杂,为什么还要来一个Kubernetes?
的确,有了Docker、Docker-Compose的确是方便了运维的部署,直接几条命令就可以启动起来一个环境了,在加个Volume修改对应的配置文件,就可以实现大部分的环境部署需求。
问题在于,如果此时服务器的性能不够用了,怎么办?
加硬件,在学过分布式思想时,都知道到了某种程度,加机器比在一台机器上堆硬件还要便宜,且堆硬件的问题还在于服务器的硬件接口够不够,如果插槽不够就更悲催了。
所以现在的主流方案都是采用加机器,横向扩展,在加了机器的情况下,这个时候要把应用的环境全部拷贝一份过去就算了,问题在于怎么去管理整个集群,或者说怎么去管理整个已经进行了容器化的集群,性能怎么去平衡?
有的可能会想既然拷贝过去了,那就前置一个Nginx,修改Nginx的配置文件,在加一台机器的配置信息就好了,流量就会平衡过去了。那么又有个问题,如果出现了资源倾斜了怎么办?
在以上的种种问题下,我们需要一个能够帮助我们去管理这个集群的工具,而且这个工具能够帮助我们去协调好各个机器的。
目前业界最火的就是Kubernetes。
在这里分享我偶然间得到的一份文档,该文档将K8S分为理论和实践两个部分进行讲解,双管齐下,事半功倍,让我们来看看文档内容
理论篇
理解集群控制器
统一入口
控制器管理器
控制器管理器
SharedInformer
ListWatcher
服务控制器
路由控制器
集群网络详解
集群网络搭建:初始阶段 集群阶段 节