K8S部署工具
- kubeadm
k8s原生提供的命令行 这个过程有些麻烦
对于多机部署使用这个需要自己写很多的脚本
不建议直接使用,可以作为学习和了解的基础
- minikube
https://github.com/kubernetes/minikube
k8s官方站点提供的单机运行整个k8s群的功能
addon比较好,对于相关的功能快速验证和测试方便使用
国内访问存在墙的问题,离线环境安装还需要自己处理下
涉及镜像包自己处理的包,由于这个使用是基于镜像名和SHA值作为镜像的匹配
自己做中转镜像之类的可能存在问题【如在阿里云容器中重新构建个同名同版本的镜像】
- sealos
https://github.com/fanux/sealos
仅依赖ssh,可以快速的部署。
可以离线环境直接使用
对于应用提供了对应的方式,比如dashboard已经支持
https://sealyun.com/docs/app.html
- kubeasz
https://github.com/easzlab/kubeasz/
https://gitee.com/near-mirror/kubeasz
基于ansible完成对应的工作
可以离线环境直接使用
提供了一些常用的服务的部署包【ansible模式提供】,如efk之类
https://github.com/easzlab/kubeasz/tree/master/manifests
https://github.com/easzlab/kubeasz/tree/master/roles
- kubekey
https://github.com/kubesphere/kubekey
https://github.com/kubesphere/ks-installer kubesphere衍生出来的可以部署k8s和kubesphere的工具
可以离线环境直接使用
kubekey很新,2020.9发布1.0.0 kubekey是基于go编写,和sealos的思路类似。
早期的ks-installer是基于ansible的模式(以内嵌容器运行模式整合)
- rancher
https://docs.rancher.cn/rancher2/
提供跨云方案的厂商,官方资料说是可以支持k8s群的安装
实际使用中
如果可以解决墙的问题,minkube可以快速的上手和使用,否则对docker的底层机制没有一定的了解,会遇到各种问题
国内开源的这几个都可以离线安装,都提供了离线的镜像,其中sealos kubeasz针对单机或多机部署都可以,只是方式有点差别。kubekey这个由于版本较新,单机部署可以,多机还存在一定的不稳定性【https://kubesphere.com.cn/forum/d/2034-kubekey-kubesphere-v300 这个最新版本的版本,在多机安装下存在一定的问题】
K8S WEB管理工具
- k8s dashboard
https://github.com/kubernetes/dashboard 官方提供的WEB管理 - kuboard
https://kuboard.cn/ 定位于Kuboard 是一款基于 Kubernetes 的微服务管理界面
这个基本是以开发组件的视角来管理
- KubeSphere
https://github.com/kubesphere/kubesphere
KubeSphere 愿景是打造一个以 Kubernetes 为内核的云原生分布式操作系统,它的架构可以非常方便地使第三方应用与云原生生态组件进行即插即用(plug-and-play)的集成,支持云原生应用在多云与多集群的统一分发和运维管理。
这个是以应用的视角来管理,相对比较好