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)的集成,支持雲原生應用在多雲與多集群的統一分發和運維管理。
這個是以應用的視角來管理,相對比較好