kubesphere概念
????????KubeSphere?是在?Kubernetes?之上構(gòu)建的?企業(yè)級分布式容器平臺壕吹,為用戶提供簡單易用的操作界面以及向?qū)讲僮鞣绞津呤疲€能夠幫助一鍵快速安裝與運(yùn)營 Kubernetes 集群逸嘀。
kubesphere功能說明
kubernetes資源管理
????????對底層 Kubernetes 中的多種類型的資源提供可視化的展示與監(jiān)控?cái)?shù)據(jù),以向?qū)?UI 實(shí)現(xiàn)工作負(fù)載管理拙绊、鏡像管理刹孔、服務(wù)與應(yīng)用路由管理 (服務(wù)發(fā)現(xiàn))、密鑰配置管理等钦铺,并提供彈性伸縮 (HPA) 和容器健康檢查支持订雾,支持?jǐn)?shù)萬規(guī)模的容器資源調(diào)度,保證業(yè)務(wù)在高峰并發(fā)情況下的高可用性矛洞。
微服務(wù)治理
????????靈活的微服務(wù)框架:基于 Istio 微服務(wù)框架提供可視化的微服務(wù)治理功能洼哎,將 Kubernetes 的服務(wù)進(jìn)行更細(xì)粒度的拆分
????????完善的治理功能:支持熔斷、灰度發(fā)布沼本、流量管控噩峦、限流、鏈路追蹤抽兆、智能路由等完善的微服務(wù)治理功能识补,同時(shí),支持代碼無侵入的微服務(wù)治理
多租戶管理
多租戶:提供基于角色的細(xì)粒度多租戶統(tǒng)一認(rèn)證與三層級權(quán)限管理
統(tǒng)一認(rèn)證:支持與企業(yè)基于 LDAP / AD 協(xié)議的集中認(rèn)證系統(tǒng)對接辫红,支持單點(diǎn)登錄 (SSO)凭涂,以實(shí)現(xiàn)租戶身份的統(tǒng)一認(rèn)證
權(quán)限管理:權(quán)限等級由高至低分為集群、企業(yè)空間與項(xiàng)目三個(gè)管理層級贴妻,保障多層級不同角色間資源共享且互相隔離切油,充分保障資源安全性
DevOps
????????開箱即用的 DevOps:基于 Jenkins 的可視化 CI / CD 流水線編輯,無需對 Jenkins 進(jìn)行配置名惩,同時(shí)內(nèi)置豐富的 CI/CD 流水線插件
????????CI/CD 圖形化流水線提供郵件通知功能澎胡,新增多個(gè)執(zhí)行條件為流水線、s2i娩鹉、b2i 提供代碼依賴緩存支持
????????端到端的流水線設(shè)置:支持從倉庫 (Git/ SVN / BitBucket)攻谁、代碼編譯、鏡像制作弯予、鏡像安全戚宦、推送倉庫、版本發(fā)布锈嫩、到定時(shí)構(gòu)建的端到端流水線設(shè)置
????????安全管理:支持代碼靜態(tài)分析掃描以對 DevOps 工程中代碼質(zhì)量進(jìn)行安全管理
????????日志:日志完整記錄 CI / CD 流水線運(yùn)行全過程
快速構(gòu)建與發(fā)布
????????提供對代碼(Source-to-Image)或者制品(Binary-to-Image)進(jìn)行快速容器化的工具阁苞,無需編寫 dockerfile困檩,僅需要通過簡單的設(shè)置即可將制品和代碼構(gòu)建成服務(wù)祠挫。
????????支持從已有的代碼倉庫中獲取代碼那槽,或通過上傳制品的方式,自動(dòng)構(gòu)建鏡像和完成部署等舔,并將鏡像推送至目標(biāo)倉庫骚灸,每次構(gòu)建鏡像和服務(wù)的過程將以任務(wù) (Job) 的方式去完成。
多維度監(jiān)控
????????KubeSphere 全監(jiān)控運(yùn)維功能可通過可視化界面操作慌植,同時(shí)甚牲,開放標(biāo)準(zhǔn)接口,易于對接企業(yè)運(yùn)維系統(tǒng)蝶柿,以統(tǒng)一運(yùn)維入口實(shí)現(xiàn)集中化運(yùn)維
????????立體化秒級監(jiān)控:秒級頻率丈钙、雙重維度、十六項(xiàng)指標(biāo)立體化監(jiān)控
????????在集群資源維度交汤,提供 CPU 利用率雏赦、內(nèi)存利用率、CPU 平均負(fù)載芙扎、磁盤使用量星岗、inode 使用率、磁盤吞吐量戒洼、IOPS俏橘、網(wǎng)卡速率、容器組運(yùn)行狀態(tài)圈浇、ETCD 監(jiān)控寥掐、API Server 監(jiān)控等多項(xiàng)指標(biāo)
????????在應(yīng)用資源維度,提供針對應(yīng)用的 CPU 用量磷蜀、內(nèi)存用量召耘、容器組數(shù)量、網(wǎng)絡(luò)流出速率蠕搜、網(wǎng)絡(luò)流入速率等五項(xiàng)監(jiān)控指標(biāo)怎茫。并支持按用量排序和自定義時(shí)間范圍查詢,快速定位異常
????????提供按節(jié)點(diǎn)妓灌、企業(yè)空間轨蛤、項(xiàng)目等資源用量排行
????????提供服務(wù)組件監(jiān)控,快速定位組件故障
自研多租戶告警系統(tǒng)
????????支持基于多租戶虫埂、多維度的監(jiān)控指標(biāo)告警祥山,目前告警策略支持集群管理員對節(jié)點(diǎn)級別和租戶對工作負(fù)載級別等兩個(gè)層級
?????????靈活的告警策略:可自定義包含多個(gè)告警規(guī)則的告警策略,并且可以指定通知規(guī)則和重復(fù)告警的規(guī)則
????????豐富的監(jiān)控告警指標(biāo):提供節(jié)點(diǎn)級別和工作負(fù)載級別的監(jiān)控告警指標(biāo)掉伏,包括容器組缝呕、CPU澳窑、內(nèi)存、磁盤供常、網(wǎng)絡(luò)等多個(gè)監(jiān)控告警指標(biāo)
????????靈活的告警規(guī)則:可自定義某監(jiān)控指標(biāo)的檢測周期長度摊聋、持續(xù)周期次數(shù)、告警等級等
????????靈活的通知發(fā)送規(guī)則:可自定義發(fā)送通知時(shí)間段及通知列表栈暇,目前支持郵件通知
????????自定義重復(fù)告警規(guī)則:支持設(shè)置重復(fù)告警周期麻裁、最大重復(fù)次數(shù)并和告警級別掛鉤
日志查詢與收集
????????提供多租戶日志管理,在 KubeSphere 的日志查詢系統(tǒng)中源祈,不同的租戶只能看到屬于自己的日志信息煎源,支持中文日志檢索,支持日志導(dǎo)出
????????多級別的日志查詢 (項(xiàng)目/工作負(fù)載/容器組/容器以及關(guān)鍵字)香缺、靈活方便的日志收集配置選項(xiàng)等
????????支持多種日志收集平臺手销,如 Elasticsearch、Kafka图张、Fluentd
????????對于將日志以文件形式保存在 Pod 掛盤上的應(yīng)用锋拖,支持開啟落盤日志收集功能
應(yīng)用商店
????????基于開源的?OpenPitrix?提供應(yīng)用商店和應(yīng)用倉庫服務(wù)
????????支持應(yīng)用上傳、應(yīng)用審核埂淮、應(yīng)用上架與分類姑隅、應(yīng)用部署,為用戶提供應(yīng)用全生命周期管理功能
????????用戶基于應(yīng)用模板可以快速便捷地部署一個(gè)完整應(yīng)用的所有服務(wù)
基礎(chǔ)設(shè)施管理
????????提供存儲類型管理倔撞、主機(jī)管理和監(jiān)控讲仰、資源配額管理,并且支持鏡像倉庫管理痪蝇、權(quán)限管理鄙陡、鏡像安全掃描。內(nèi)置 Harbor 鏡像倉庫躏啰,支持添加 Docker 或私有的 Harbor 鏡像倉庫趁矾。
多存儲類型支持
????????支持 GlusterFS、CephRBD给僵、NFS 等開源存儲方案毫捣,支持有狀態(tài)存儲
????????NeonSAN CSI 插件對接 QingStor NeonSAN,以更低時(shí)延帝际、更加彈性蔓同、更高性能的存儲,滿足核心業(yè)務(wù)需求
????????QingCloud CSI 插件對接 QingCloud 云平臺各種性能的塊存儲服務(wù)
多網(wǎng)絡(luò)方案支持
????????支持 Calico蹲诀、Flannel 等開源網(wǎng)絡(luò)方案
????????開發(fā)了適用于物理機(jī)部署 Kubernetes 的?負(fù)載均衡器插件 Porter
kubersphere部署
????????KubeSphere 支持部署和運(yùn)行在包括?公有云斑粱、私有云、虛機(jī)脯爪、物理機(jī) 和 Kubernetes 等任何基礎(chǔ)設(shè)施之上则北,支持在線一鍵安裝矿微,一鍵安裝命令如下:
下載命令:curl -L https://kubesphere.io/download/stable/v2.1.0 > installer.tar.gz && tar -zxf installer.tar.gz && cd kubesphere-all-v2.1.0/conf
安裝命令:./install.sh
部署方式為all-in-one模式和multi-node模式。
all-in-one:
安裝說明地址:https://kubesphere.com.cn/docs/zh-CN/installation/all-in-one/
multi-node:
安裝說明地址:https://kubesphere.com.cn/docs/zh-CN/installation/multi-node/
如果完整安裝尚揣,可以通過配置文件(conf/common.yaml)修改標(biāo)志來實(shí)現(xiàn),全部為true為涌矢。
功能使用說明
多租戶管理
????????通過創(chuàng)建workspace來實(shí)現(xiàn)的,workspace的創(chuàng)建和workspace的使用通過不同
角色來實(shí)現(xiàn)用戶的不同權(quán)限惑艇,系統(tǒng)默認(rèn)角色有:cluster-admin蒿辙,cluter-regular,workspaces-manager
使用指南地址:https://kubesphere.com.cn/docs/zh-CN/quick-start/admin-quick-start/
應(yīng)用路由與服務(wù)
????????KubeSphere 在項(xiàng)目中為用戶項(xiàng)目內(nèi)置了一個(gè)全局的負(fù)載均衡器滨巴,即應(yīng)用路由控制器 (Ingress Controller),為了代理不同后端服務(wù) (Service) 而設(shè)置的負(fù)載均衡服務(wù)俺叭,用戶訪問 URL 時(shí)恭取,應(yīng)用路由控制器可以把請求轉(zhuǎn)發(fā)給不同的后端服務(wù)
使用指南地址:https://kubesphere.com.cn/docs/zh-CN/quick-start/ingress-demo/
WordPress應(yīng)用的創(chuàng)建與發(fā)布
????????創(chuàng)建 KubeSphere 應(yīng)用的形式將 Wordpress 的組件(MySQL 和 Wordpress)創(chuàng)建后發(fā)布至 Kubernetes 中,并在集群外訪問 Wordpress 服務(wù)熄守。
使用指南地址:https://kubesphere.com.cn/docs/zh-CN/quick-start/wordpress-deployment/
創(chuàng)建簡單任務(wù)
????????在 KubeSphere 中使用容器技術(shù)完成任務(wù)創(chuàng)建蜈垮,也就是使用 Job (任務(wù)) 和 CronJob (定時(shí)任務(wù)) 來執(zhí)行。這樣方便維護(hù)較為干凈的執(zhí)行環(huán)境裕照,減少不同任務(wù)工具的相互干擾攒发。同時(shí)可以在集群上按照任務(wù)要求和資源狀況進(jìn)行動(dòng)態(tài)伸縮執(zhí)行。
定時(shí)任務(wù):指定任務(wù)執(zhí)行的周期晋南,定時(shí)執(zhí)行
普通任務(wù):即建即執(zhí)行
使用指南地址:https://kubesphere.com.cn/docs/zh-CN/quick-start/job-quick-start/
彈性伸縮
????????動(dòng)態(tài)地根據(jù)資源使用率來削峰填谷惠猿,提高集群的平臺和集群資源利用率,讓 Pod 副本數(shù)自動(dòng)調(diào)整负间,需依賴組件Metrics-server偶妖。通過配置cpu或內(nèi)存的實(shí)際視情況,動(dòng)態(tài)創(chuàng)建和銷毀pod政溃,可設(shè)置最小副本和最大副本
使用指南地址:https://kubesphere.com.cn/docs/zh-CN/quick-start/hpa/
S2I
????????Source-to-image (S2I)?是一個(gè)允許用戶直接輸入源代碼然后打包成可運(yùn)行程序到 Docker 鏡像的工具趾访,一鍵將源代碼生成鏡像推送到倉庫,并創(chuàng)建其部署 (Deployment) 和服務(wù) (Service) 最終自動(dòng)發(fā)布到 Kubernetes 中董虱。
2.1.1版本支持:java扼鞋,python,nodejs
使用指南地址:https://kubesphere.com.cn/docs/zh-CN/quick-start/source-to-image/
B2I
????????Binary-to-image (B2I)?是 2.1.0 版本新增的功能愤诱,旨在幫助開發(fā)者和運(yùn)維在項(xiàng)目打包成 WAR云头、JAR、Binary 這一類的制品后转锈,快速將制品或二進(jìn)制的 Package 打包成 Docker 鏡像盘寡,并發(fā)布到 DockerHub 或 Harbor 等鏡像倉庫,并創(chuàng)建其部署 (Deployment) 和服務(wù) (Service) 最終自動(dòng)發(fā)布到 Kubernetes 中撮慨。
2.1.1版本支持:?WAR竿痰、JAR脆粥、Binary
使用指南地址:https://kubesphere.com.cn/docs/zh-CN/quick-start/b2i-war/
loging
????????提供了非常靈活的日志收集的管理配置功能,用戶可以添加日志接收者包括 Elasticsearch影涉、Kafka 和 Fluentd变隔,甚至可以暫停 (關(guān)閉) 向某個(gè)日志接收者輸出日志,也支持稍后重新啟用 (激活) 該日志接收者蟹倾。
使用指南地址:https://kubesphere.com.cn/docs/zh-CN/platform-settings/output-fluentd/
使用指南地址:https://kubesphere.com.cn/docs/zh-CN/platform-settings/output-kafka/
數(shù)據(jù)持久化支持
????????數(shù)據(jù)持久化支持:NFS匣缘,Ceph RBD,GlusterFS鲜棠,QingCloud 云平臺塊存儲肌厨,QingStor NeonSAN,阿里云塊存儲豁陆,騰訊云塊存儲柑爸,Local Volume (默認(rèn),僅部署測試使用)
使用指南地址:https://kubesphere.com.cn/docs/zh-CN/installation/storage-configuration/
集群擴(kuò)容
????????在正式環(huán)境使用時(shí)可能會遇到服務(wù)器容量不足的情況盒音,這時(shí)就需要添加新的服務(wù)器表鳍,然后將應(yīng)用系統(tǒng)進(jìn)行水平擴(kuò)展來完成對系統(tǒng)的擴(kuò)容。此時(shí)您可以根據(jù)實(shí)際業(yè)務(wù)需要對 Kubernetes 集群的 Node 節(jié)點(diǎn)進(jìn)行擴(kuò)容祥诽,KubeSphere 對于在 Kubernetes 集群中加入新 Node 是非常簡單的譬圣,僅需簡單兩步即可完成集群節(jié)點(diǎn)擴(kuò)容。節(jié)點(diǎn)擴(kuò)容基于 Kubelet 的自動(dòng)注冊機(jī)制雄坪,新的 Node 將會自動(dòng)加入現(xiàn)有的 Kubernetes 集群中厘熟。
1,修改主機(jī)配置文件:編輯文件 conf/hosts.ini新加皮配置
2诸衔,執(zhí)行擴(kuò)容腳本:執(zhí)行腳本 add-nodes.sh
使用地址指南:https://kubesphere.com.cn/docs/zh-CN/installation/add-nodes/
阿里云部署方案
阿里云部署方案盯漂,如下圖
1,建立vpc網(wǎng)絡(luò)笨农,綁定公網(wǎng)ip
2就缆,建立內(nèi)網(wǎng)負(fù)載均衡器,處理集群內(nèi)部數(shù)master和node數(shù)據(jù)處理(免費(fèi))
3谒亦,建立公網(wǎng)負(fù)載均衡器竭宰,公網(wǎng)路訪問負(fù)載均衡處理
4,四臺主機(jī)份招,兩個(gè)master節(jié)點(diǎn)切揭,兩個(gè)node節(jié)點(diǎn),最小雙節(jié)點(diǎn)锁摔,避免單點(diǎn)故障
5廓旬,node擴(kuò)容方案,node節(jié)點(diǎn)服務(wù)器
6谐腰,master無需擴(kuò)容孕豹,只做污點(diǎn)設(shè)置涩盾,將業(yè)務(wù)處理加到node節(jié)點(diǎn)