解读OpenShift的逻辑架构和技术架构
導(dǎo)讀:OpenShift的架構(gòu)設(shè)計(jì)主要是針對(duì)企業(yè)需求進(jìn)行高可用架構(gòu)設(shè)計(jì),包括計(jì)算、網(wǎng)絡(luò)、存儲(chǔ)等。接下來(lái)我們針對(duì)這些問(wèn)題逐一展開介紹。
作者:魏新宇 郭躍軍
來(lái)源:大數(shù)據(jù)DT(ID:hzdashuju)
01 OpenShift的邏輯架構(gòu)
OpenShift的邏輯架構(gòu)圖如圖2-6所示。
▲圖2-6 OpenShift邏輯架構(gòu)
圖2-6中的關(guān)鍵組件介紹如下。
底層基礎(chǔ)設(shè)施:OpenShift可以運(yùn)行在公有云(AWS、Azure、Google等)、私有云(OpenStack)、虛擬機(jī)(vSphere、RHV、紅帽KVM)、X86、IBM Power/Z服務(wù)器上。
控制平面(Control Plane):負(fù)責(zé)整個(gè)集群的調(diào)度和管理,如認(rèn)證授權(quán)、容器調(diào)度、應(yīng)用管理、服務(wù)注冊(cè)發(fā)現(xiàn)等。控制節(jié)點(diǎn)需要運(yùn)行在CoreOS系統(tǒng)上。
計(jì)算節(jié)點(diǎn)(Worker):提供在OpenShift上運(yùn)行容器應(yīng)用所需的計(jì)算資源,如Tomcat、MongoDB等。可以選擇根據(jù)運(yùn)行的容器類型將節(jié)點(diǎn)進(jìn)一步細(xì)分為Infra節(jié)點(diǎn)和App節(jié)點(diǎn),Infra節(jié)點(diǎn)上運(yùn)行集群的附加組件(如路由器、日志、監(jiān)控等),App節(jié)點(diǎn)上運(yùn)行真實(shí)的業(yè)務(wù)應(yīng)用容器。計(jì)算節(jié)點(diǎn)可以運(yùn)行在CoreOS或RHEL上。
Kubernetes層:OpenShift會(huì)集成次新版本的Kubernetes,通過(guò)Kubernetes實(shí)現(xiàn)核心功能。
應(yīng)用生命周期管理層:OpenShift通過(guò)Jenkins或Teckton實(shí)現(xiàn)應(yīng)用的CI/CD。
Service Catalog層:提供多種預(yù)安裝的應(yīng)用服務(wù),如Redis、OpenJDK等,實(shí)現(xiàn)基礎(chǔ)服務(wù)的快速創(chuàng)建和管理,實(shí)現(xiàn)自服務(wù)。
容器層:OpenShift上可以運(yùn)行多種編程語(yǔ)言運(yùn)行時(shí)、數(shù)據(jù)庫(kù)和其他軟件包的認(rèn)證容器鏡像。
02 OpenShift的技術(shù)架構(gòu)
了解OpenShift的邏輯架構(gòu)之后,接下來(lái)講解在OpenShift中使用了哪些關(guān)鍵性技術(shù)。OpenShift的技術(shù)架構(gòu)如圖2-7所示。
▲圖2-7 OpenShift的技術(shù)架構(gòu)
按照層級(jí),我們自下往上進(jìn)行介紹。
OpenShift的基礎(chǔ)操作系統(tǒng)是Red Hat CoreOS。Red Hat CoreOS是一個(gè)精簡(jiǎn)的RHEL發(fā)行版,專用于容器執(zhí)行的操作系統(tǒng)。
CRI-O是Kubernetes CRI(容器運(yùn)行時(shí)接口)的實(shí)現(xiàn),以支持使用OCI(Open Container Initiative)兼容的運(yùn)行時(shí)。CRI-O可以使用滿足CRI的任何容器運(yùn)行時(shí),如runC、libpod或rkt。
Kubernetes是容器調(diào)度編排和管理平臺(tái),關(guān)于它的具體功能我們不再贅述。
Etcd是一個(gè)分布式鍵值存儲(chǔ),Kubernetes使用它來(lái)存儲(chǔ)有關(guān)Kubernetes集群元數(shù)據(jù)和其他資源的配置及狀態(tài)信息。
自定義資源定義(CRD)是Kubernetes提供的用于擴(kuò)展資源類型的接口,自定義對(duì)象同樣存儲(chǔ)在Etcd中并由Kubernete管理。
容器化服務(wù)(Containerized Service)實(shí)現(xiàn)了PaaS功能組件以容器方式在OpenShift上運(yùn)行。
應(yīng)用程序運(yùn)行時(shí)和xPaaS(Runtime and xPaaS)是可供開發(fā)人員使用的基本容器鏡像,每個(gè)鏡像都預(yù)先配置了特定的運(yùn)行時(shí)語(yǔ)言或數(shù)據(jù)庫(kù)。xPaaS產(chǎn)品是紅帽中間件產(chǎn)品(如JBoss EAP和ActiveMQ)的一組基礎(chǔ)鏡像。OpenShift應(yīng)用程序運(yùn)行時(shí)(RHOAR)是在OpenShift中運(yùn)行云原生應(yīng)用的程序運(yùn)行時(shí),包含Red Hat JBoss EAP、OpenJDK、Thorntail、Eclipse Vert.x、Spring Boot和Node.js。
DevOps工具和用戶體驗(yàn):OpenShift提供用于管理用戶應(yīng)用程序和OpenShift服務(wù)的Web UI和CLI管理工具。OpenShift Web UI和CLI工具是使用REST API構(gòu)建的,可以與IDE和CI平臺(tái)等外部工具集成使用。
我們已經(jīng)從技術(shù)架構(gòu)圖中了解到技術(shù)組件的概貌,限于篇幅,OpenShift中一些關(guān)鍵技術(shù)的細(xì)節(jié)的深入介紹,可閱讀《OpenShift在企業(yè)中的實(shí)踐》一書第2.2.2節(jié)。
關(guān)于作者:魏新宇,紅帽副首席解決方案架構(gòu)師。在IaaS、PaaS方面有豐富的經(jīng)驗(yàn),致力于開源解決方案在企業(yè)中的推廣和應(yīng)用。從售前角度主導(dǎo)了紅帽在金融、汽車行業(yè)的多個(gè)PaaS項(xiàng)目。曾就職于華為、IBM、VMware。
郭躍軍,目前就職于VMware,擔(dān)任Solutions Engineer。曾于紅帽擔(dān)任PaaS咨詢顧問(wèn)、AWS顧問(wèn)服務(wù)團(tuán)隊(duì)擔(dān)任云架構(gòu)咨詢顧問(wèn),熟悉私有云和公有云生態(tài)。從2015年接觸容器技術(shù)開始,一直奮戰(zhàn)在PaaS建設(shè)一線,參與了很多OpenShift項(xiàng)目的競(jìng)標(biāo)、PoC、咨詢和落地實(shí)施,幫助很多企業(yè)實(shí)現(xiàn)了數(shù)字化轉(zhuǎn)型。
本文摘編自《OpenShift在企業(yè)中的實(shí)踐:PaaS DevOps 微服務(wù)》(第2版),經(jīng)出版方授權(quán)發(fā)布。
延伸閱讀《OpenShift在企業(yè)中的實(shí)踐》
點(diǎn)擊上圖了解及購(gòu)買
轉(zhuǎn)載請(qǐng)聯(lián)系微信:DoctorData
推薦語(yǔ):本書以紅帽O(jiān)penShift v4為核心編寫,從客戶的數(shù)字化轉(zhuǎn)型入手,介紹如何通過(guò)OpenShift構(gòu)建PaaS平臺(tái)、實(shí)現(xiàn)DevOps、云原生、微服務(wù)。
刷刷視頻👇
干貨直達(dá)👇
元宇宙時(shí)代,技術(shù)長(zhǎng)什么樣
這5種思維模式,大牛產(chǎn)品經(jīng)理都在用
手把手教你用Pandas讀取所有主流數(shù)據(jù)存儲(chǔ)
視頻時(shí)代的大數(shù)據(jù):問(wèn)題、挑戰(zhàn)與解決方案
更多精彩👇
在公眾號(hào)對(duì)話框輸入以下關(guān)鍵詞
查看更多優(yōu)質(zhì)內(nèi)容!
讀書?|?書單?|?干貨?|?講明白?|?神操作?|?手把手
大數(shù)據(jù)?|?云計(jì)算?|?數(shù)據(jù)庫(kù)?|?Python?|?爬蟲?|?可視化
AI?|?人工智能?|?機(jī)器學(xué)習(xí)?|?深度學(xué)習(xí)?|?NLP
5G?|?中臺(tái)?|?用戶畫像?|?數(shù)學(xué)?|?算法?|?數(shù)字孿生
據(jù)統(tǒng)計(jì),99%的大咖都關(guān)注了這個(gè)公眾號(hào)
👇
總結(jié)
以上是生活随笔為你收集整理的解读OpenShift的逻辑架构和技术架构的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: web developer tips (
- 下一篇: 正则表达式验证总结