1. KubeSphere 是什么 1.1. 官方解釋 KubeSphere是一個(gè)分布式操作系統(tǒng),提供以Kubernetes為核心的云原生堆棧,旨在成為第三方應(yīng)用程序的即插即用架構(gòu),以促進(jìn)其生態(tài)系統(tǒng)的發(fā)展。 KubeSphere還是一個(gè)多租戶企業(yè)級(jí)容器平臺(tái),具有全棧自動(dòng)IT操作和簡(jiǎn)化的DevOps工作流程。它提供了開發(fā)人員友好的向?qū)eb UI,可幫助企業(yè)構(gòu)建更健壯且功能豐富的平臺(tái),其中包括企業(yè)Kubernetes戰(zhàn)略所需的最常用功能,例如Kubernetes資源管理,DevOps(CI / CD),應(yīng)用程序生命周期管理、監(jiān)控、日志記錄、服務(wù)網(wǎng)格、多租戶、報(bào)警和通知,存儲(chǔ)和網(wǎng)絡(luò)、自動(dòng)定量、訪問控制、GPU的支持等,以及多集群管理、網(wǎng)絡(luò)策略、注冊(cè)表管理,更多即將發(fā)布的安全增強(qiáng)特性。 KubeSphere提供了整合的視圖,同時(shí)圍繞Kubernetes集成了廣泛的生態(tài)系統(tǒng)工具,并提供一致的用戶體驗(yàn)以降低復(fù)雜性,并開發(fā)了上游Kubernetes中尚不可用的新功能,以減輕Kubernetes的痛苦之處,包括存儲(chǔ),網(wǎng)絡(luò) ,安全性和易用性。 KubeSphere不僅允許開發(fā)人員和DevOps團(tuán)隊(duì)在統(tǒng)一控制臺(tái)中使用他們喜歡的工具,而且最重要的是,由于這些功能是可插拔和可選的,因此它們與平臺(tái)松散地結(jié)合在一起。 Kubernetes平臺(tái),專為DevOps團(tuán)隊(duì)量身定制 KubeSphere,以應(yīng)用為中心的容器平臺(tái) 極簡(jiǎn)、易用、靈活、高效 關(guān)于KubeSphere,最好最全面最通俗易懂的一篇文章是《一文說清 KubeSphere 容器平臺(tái)的價(jià)值》 https:///zh-CN/blog/kubesphere-values/ 1.2. 個(gè)人理解
以上摘抄自https://tech.ifeng.com/c/7u6tUXwXbJU 我覺得,讀完以后,醍醐灌頂,茅塞頓開 我們使用Linux的各種發(fā)行版(比如:CentOS、Ubuntu等)與Linux內(nèi)核交互,極大地降低了使用Linux的門檻,而且像Ubuntu還提供了特別漂亮的桌面版,圖像界面式的操作使用起來更方便。 我們當(dāng)然可以使用CMD命令行窗口同Windows系統(tǒng)交互,所有在圖形界面上完成的操作都可以通過命令行完成,但是這種操作方式的門檻極高,不利于微軟推行Windows桌面操作系統(tǒng)。 同樣的,Kubenetes就相當(dāng)于內(nèi)核,而KubeSphere就相當(dāng)于是Kubernetes的發(fā)行版。KubeSphere提供極簡(jiǎn)體驗(yàn),向?qū)経I,極大的降低了使用Kubenetes的門檻。 記不住Kubenetes命令不要緊,不會(huì)寫Dockerfile也沒關(guān)系,使用KubeSphere圖像界面以后一起都變得簡(jiǎn)單了,而且它是以應(yīng)用為中心的,極大地解放了運(yùn)維和開發(fā)人員的生產(chǎn)力。 KubeSphere就是Java編程界的Spring。想想看,用了Spring以后你不需要關(guān)心各種數(shù)據(jù)庫的連接,各種各樣的組件都幫你集成好了,拿來就用。KubeSphere也是一樣,開箱即用。 2. 安裝 就一條命令,挺簡(jiǎn)單的,但是我裝了兩天兩夜。期間,虛擬機(jī)裝了好幾遍,KubeSphere也重裝了很多遍,一遍就是幾個(gè)小時(shí)…… 話不多說,官方文檔(中/英文版)都寫的非常清楚,開始安裝 由于資源限制,我只能在虛擬機(jī)里裝,這里選擇All-in-One模式 首先,一定一定要看清楚系統(tǒng)要求,之前用CentOS沒裝成功,試了很多版本,最后老老實(shí)實(shí)用Ubuntu18.04 https:///download/alternative-downloads 下載安裝包 curl -L https:///download/stable/v2.1.1 > installer.tar.gz && tar -zxf installer.tar.gz && cd kubesphere-all-v2.1.1/scripts 在安裝前一定一定要記得配置鏡像加速器 例如阿里云容器鏡像加速器服務(wù) https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors docker_registry_mirrors: - https://docker.mirrors.ustc.edu.cn - https://registry. - https://mirror. ~/kubesphere-all-v2.1.1/conf/common.yaml 執(zhí)行./install.sh就等著吧(如果要重新安裝建議先執(zhí)行./uninstall.sh) 安裝了兩天,終于看到期待已久的畫面了: 各種驗(yàn)證 https:///docs/installation/verify-components/ https:///docs/zh-CN/installation/verify-components/ 安裝完以后,一看資源占用情況,嚇一跳,果然只適合企業(yè)用戶 3. 遇到的問題 https:///docs/troubleshooting/installation/ 1、container in pod is not available Error from server (BadRequest): container "installer" in pod "ks-installer-7d9fb945c7-6tnl9" is not available 檢查安裝日志 ~/kubesphere-all-v2.1.1/logs 有一個(gè)非常好用的命令是 journalctl -xefu kubelet 2、如何重啟 3、如何重啟Kubernetes集群 我一直有個(gè)疑問,如果物理機(jī)或者Kubernetes的宿主機(jī)宕機(jī)或重啟以后Kubernetes集群會(huì)自動(dòng)重啟嗎?如果掛的是master所在的機(jī)器,很顯然是不會(huì)的, 但如果是非master的節(jié)點(diǎn)的話不知道沒試過。所以,Kubernetes集群的高可用就非常重要了。 https:///docs/setup/production-environment/tools/kubeadm/high-availability/ https:///docs/concepts/workloads/controllers/replicationcontroller/ ReplicationController確保在任何時(shí)候都運(yùn)行指定數(shù)量的pod副本。換句話說,ReplicationController確保一個(gè)pod或一組同類的pod總是處于可用狀態(tài)。 我忽略了Kubernetes有很強(qiáng)的自愈能力 自愈(自我修復(fù)):重新啟動(dòng)失敗的容器,在節(jié)點(diǎn)死亡時(shí)替換和重新調(diào)度容器,殺死那些不響應(yīng)用戶定義的健康檢查的容器,并且在它們準(zhǔn)備好提供服務(wù)之前不會(huì)向客戶端通知它們。 在后面安裝KubeSphere可插拔的功能組件時(shí),更改common.yaml配置文件后,不需要做什么操作,過一會(huì)兒會(huì)自動(dòng)更新容器以應(yīng)用這些改變。 備忘錄 kubectl get pods --all-namespaces kubectl get pod -n <namespace> kubectl logs <pod_name> -n <namespace> kubectl delete pod <pod_name> -n <namespace> # 查詢systemd日志 journalctl -xefu kubelet kubectl get services kubectl get deployments kubectl cluster-info 4. 文檔 https:///docs/installation/intro/ https:///docs/zh-CN https:///docs/zh-CN/installation/intro/ https:///zh-CN/blogs/ https:///zh-CN/blog/kubesphere-values/ https:///docs/zh-CN/introduction/what-is-kubesphere/ https://www./author/kubesphere |
|