前置内容
这里的K8S教程,包含基础原理(为了明白K8S组件之间的关系),关系写的比较简单易懂,能理清部署、组件之间的配置和交互内容。
注:千万不要跳着看!重要的话只说一遍!
第3、4、5章是互相独立的章节!
从第6章开始的内容是根据第5章的集群操作的。
第11章从3节点变成了6节点(3master3worker)。
第一:环境参数
Kubernetes1.20.2
Harbor1.6.0
Containerd1.4.3
Prometheus2.8.1
Java1.8
Istio1.9.5(2021.5.11发布)
第二:关于集群搭建方案选择
(
集群的搭建方式地址:
https://kubernetes.io/docs/setup/production-environment/tools/
https://github.com/kelseyhightower/kubernetes-the-hard-way
)
如果要习K8S,那么可以选择kubernetes-the-hard-way,学习时间更长一些,让自己明白K8S的内部原理。
当然为了快速了解和上手,也可通过Kubespray方式安装K8S集群。
K8S的初衷/定位做的就是生产级别的高可用。
1、选kubernetes-the-hard-way:是每个组件都是自己手工部署上去的,包括集群的各种组织方式,它的高可用也是自定义的,可以部署一个比较简单的集群,简单到一个单节点,也可以复杂到一个生产级别的高可用集群,跟kubespray的效果是一样的,也是可以的。
2、Kubespray是在kubeadm上做的封装,用到了ansible。
Kubeadm自定义是指能灵活的做一些配置,比如也可高可用,也可不高可用。
3、K8S的部署以容器方式,K8S内部的组件是以容器运行的,而kubernetes-the-hard-way是以二进制方式运行的,直接用的二进制的文件。
4、Kubespray和kubeadm二者都是自动化方式,会做错误的预判,让在集群的部署过程中提前发现问题,并且足够简单,也是生产级别的集群。
这里学习的版本kubernetes-the-hard-way,官方并没有提供高可用生产级别方式,这里给改版成了生成级别的高可用。