99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

解析Docker、Kubernetes、Openshift的發(fā)展歷史及架構(gòu)

我快閉嘴 ? 來源:CSDN云計算 ? 作者:劉鵬宇 ? 2020-09-08 10:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今年以來,遠(yuǎn)程辦公、遠(yuǎn)程會議走進(jìn)了大多數(shù)人的日常工作中,各類云產(chǎn)品相繼被人們所熟悉,例如石墨云”O(jiān)FFice”辦公軟件、騰訊云平臺、云課堂,為實(shí)現(xiàn)多人協(xié)同辦公、遠(yuǎn)程操控等需求,提供多類渠道。這些應(yīng)用可能在實(shí)現(xiàn)技術(shù)上,不是嚴(yán)格意義的上云,但“云”逐漸浸透各個領(lǐng)域,暈染出不一樣的風(fēng)采。

“上云”一詞早已流行,各小中大企業(yè)為擺脫地域限制、減輕研發(fā)成本、實(shí)現(xiàn)安全可靠管理保障,紛紛研究“如何上云”。作為一個奔跑在新型IT時代的逐夢人,我踏上了尋找杰克魔豆的旅程,下面是我在探索道路上的所見所聞。

開始

云計算從2006年提出至今,經(jīng)歷了翻天覆地的發(fā)展變化,由IaaS到PaaS、SaaS,應(yīng)用越來越廣泛。在其發(fā)展初期,IT建設(shè)多圍繞IaaS進(jìn)行,包括計算虛擬化、網(wǎng)絡(luò)虛擬化、存儲虛擬化等,使用對象主要是虛擬機(jī)。但由于虛擬機(jī)承載的是操作系統(tǒng),我們依然需要在操作系統(tǒng)中安裝基礎(chǔ)軟件,并未減輕開發(fā)人員部署環(huán)境的壓力。然而自Docker為代表的容器技術(shù)出現(xiàn)后,實(shí)現(xiàn)應(yīng)用可以在容器中直接運(yùn)行,切實(shí)減輕了程序員部署精力,促進(jìn)了容器PaaS的迅速發(fā)展,并已逐漸形成云生態(tài)體系——以Docker、Kubernetes為核心,由Docker提供應(yīng)用級的主機(jī)抽象,Kubernetes提供應(yīng)用級的集群抽象。在此基礎(chǔ)上涌現(xiàn)了紅帽O(jiān)penShift等優(yōu)秀企業(yè)級PaaS產(chǎn)品。

本文將著重對Docker、Kubernetes、Openshift的發(fā)展歷史及架構(gòu)進(jìn)行分析,并分享“部署自研運(yùn)維系統(tǒng)到云平臺”的實(shí)踐經(jīng)驗(yàn)。

標(biāo)準(zhǔn)化的軟件構(gòu)建與分發(fā)技術(shù)Docker

1.容器技術(shù)優(yōu)勢

前文說,容器技術(shù)的誕生,為減輕開發(fā)人員部署環(huán)境壓力,提供了可能。容器技術(shù)也打造了一套標(biāo)準(zhǔn)化的軟件構(gòu)建和分發(fā)流程,為降低運(yùn)維成本、提高軟件安全和運(yùn)行穩(wěn)定等方面提供便利。容器技術(shù)不僅僅打造一個運(yùn)輸用的“集裝箱”,還保證軟件在容器內(nèi)能夠運(yùn)行,在操作系統(tǒng)上構(gòu)成“獨(dú)立的箱子”。這需要解決文件系統(tǒng)、網(wǎng)絡(luò)、硬件等多方面的問題。經(jīng)過長時間的發(fā)展,容器技術(shù)現(xiàn)已逐步成熟。使用容器技術(shù)后,開發(fā)者可以使用熟悉的編程語言開發(fā)軟件,之后用容器技術(shù)打包構(gòu)建,便可一鍵運(yùn)行在所有支持該容器技術(shù)的平臺上。

2.容器技術(shù)的典型代表——Docker架構(gòu)

Docker是一個構(gòu)建、發(fā)布、運(yùn)行分布式應(yīng)用的平臺,Docker平臺整體可以看成由Docker引擎(運(yùn)行環(huán)境+打包工具)、Docker Registry(API+生態(tài)系統(tǒng))兩部分組成。包括Docker Client、Docker daemon、Docker Image、Docker Container等部分。

其中Docker引擎可以分為守護(hù)進(jìn)程和客戶端兩大部分。Docker引擎的底層是各種操作系統(tǒng)以及云計算基礎(chǔ)設(shè)施,而上層則是各種應(yīng)用程序和管理工具,每層之間都是通過API來通信的。詳細(xì)介紹如下。

Docker Client是Docker提供命令行界面(CLI)工具,是用戶與Docker進(jìn)行交互的主要方式。客戶端可以構(gòu)建,運(yùn)行和停止應(yīng)用程序,還可以遠(yuǎn)程與Docker_Host進(jìn)行交互。

Docker daemon是服務(wù)器組件,以Linux后臺服務(wù)的方式運(yùn)行,是Docker最核心的后臺進(jìn)程。它負(fù)責(zé)響應(yīng)來自Docker Client的請求,然后將這些請求翻譯成系統(tǒng)調(diào)用完成容器管理操作。

Docker鏡像可以看作是一個特殊的文件系統(tǒng),除了提供容器運(yùn)行時所需的程序、庫、資源、配置等文件外,還包含了一些為運(yùn)行時準(zhǔn)備的一些配置參數(shù)(如匿名卷、環(huán)境變量、用戶等)。

Docker容器就是Docker鏡像的運(yùn)行實(shí)例,是真正運(yùn)行項(xiàng)目程序、消耗系統(tǒng)資源、提供服務(wù)的地方。

Docker提供了應(yīng)用級的主機(jī)抽象,可以更容易地實(shí)現(xiàn)應(yīng)用的快速申請和部署。

容器時代的舵手Kubernetes

如果說Docker是容器時代的大船,Kubernetes就是指引船只的舵手。作為容器集群管理工具,Kubernetes有一套健壯的集群自恢復(fù)機(jī)制,包括容器的自動重啟、自動重調(diào)度以及自動備份甚至負(fù)載等。

1.Kubernetes的發(fā)展歷程

Kubernetes前身是谷歌大規(guī)模集群管理系統(tǒng)Brog,它基于容器技術(shù),實(shí)現(xiàn)資源管理的自動化,以及跨數(shù)據(jù)中心資源利用的最大化。Kubernetes于2015年正式對外發(fā)布,經(jīng)過4年多的發(fā)展,為容器編排提供強(qiáng)大的解決方案,成為云原生系統(tǒng)的重要支撐。

當(dāng)前,國內(nèi)外的很多企業(yè)都建立了基于Kubernetes的云平臺,如OpenShift、阿里云等。下面分別簡述阿里巴巴和美團(tuán)點(diǎn)評的云平臺發(fā)展實(shí)踐歷程。

阿里巴巴于2013年開始探索由容器替換虛擬機(jī),2018年開始自研容器調(diào)度系統(tǒng)向Kubernetes轉(zhuǎn)型,2019年阿里業(yè)務(wù)全面上云,2019年雙十一中,基于Kubernetes的生態(tài)體系支撐了阿里史上規(guī)模最大的集群。

美團(tuán)點(diǎn)評于2013年開始搭建云計算平臺,2016年基于Docker搭建自研容器管理平臺,2018年引入Kubernetes到云平臺中,提升了平臺的穩(wěn)定性和資源使用效率。

2.Kubernetes的架構(gòu)

在Kubernetes中,Service是分布式集群架構(gòu)的核心。它是一種抽象概念,每一個Service后端有多個Pod,所有的容器均在Pod中運(yùn)行。下圖是一個典型的Kubernetes架構(gòu)圖。

Kubernetes由兩種節(jié)點(diǎn)組成:Master節(jié)點(diǎn),為管理節(jié)點(diǎn);Node節(jié)點(diǎn),為容器運(yùn)行結(jié)點(diǎn)。

Service是架構(gòu)的核心,提供遠(yuǎn)程服務(wù),它的后端有多個Pod,每個容器均在Pod中運(yùn)行。一個Service可以橫跨多個Node,也可能一個Node里包含多個Service,一個Pod里也可以包含多個Container(容器)。

Pod是Kubernetes的最小調(diào)度單位,所以在我行實(shí)際應(yīng)用中,一般一個Pod中只部署一個容器,以提高穩(wěn)定性,降低風(fēng)險。一個Label是一對鍵/值對,用來傳遞用戶定義的屬性。例如,可以用“Taihangboot”來標(biāo)記一個太行應(yīng)用。

Replication Controller,用來確保任意時間都有指定數(shù)量的Pod“副本”在運(yùn)行。如果為某個Pod創(chuàng)建了Replication Controller并且指定2個副本,它會創(chuàng)建2個Pod,并且持續(xù)監(jiān)控它們。

Kubernetes是強(qiáng)大的云原生體系工具,對容器進(jìn)行編排,實(shí)現(xiàn)了集群化的管理。

企業(yè)級PaaS平臺中的翹楚OpenShift

紅帽O(jiān)penShift平臺在Kubernetes的基礎(chǔ)上,提高了平臺運(yùn)行穩(wěn)定性,集成了Jeckins等工具,更易于實(shí)現(xiàn)Devops,可以為企業(yè)提供全面的應(yīng)用上云服務(wù)。

1.OpenShift的發(fā)展歷程

OpenShift是由紅帽公司推出的PaaS云計算平臺,它誕生于2011年,核心架構(gòu)采用自研容器編排平臺Gear。Kubernetes推出后,紅帽決定對OpenShift進(jìn)行重構(gòu)。2015年6月,紅帽推出了基于Kubernetes1.0的OpenShift3.0。2018年6月,OpenShift4.1發(fā)布,它與OpenShift3.0相比,較大的變化是引入了CoreOS作為默認(rèn)操作系統(tǒng)。當(dāng)前最新版本的OpenShift平臺是2019年12月17日發(fā)布的4.2.11,新版系統(tǒng)進(jìn)一步實(shí)現(xiàn)了混合云環(huán)境企業(yè)級服務(wù)的簡化和自動化,同時可以讓開發(fā)者通過云原生應(yīng)用實(shí)現(xiàn)創(chuàng)新并提高業(yè)務(wù)價值。

OpenShift在Kubernetes的基礎(chǔ)上擴(kuò)展提供了軟件定義網(wǎng)絡(luò)、軟件定義存儲、權(quán)限管理、企業(yè)級鏡像倉庫、統(tǒng)一入口路由、持續(xù)集成流程(S2/Jenkins統(tǒng)一管理控制臺、監(jiān)控日志等功能,形成覆蓋整個軟件生命周期的解決方案,提供了企業(yè)級的服務(wù)支持。當(dāng)前其提供三種產(chǎn)品:OpenShift Online、OpenShift Enterprise和OpenShift Origin。其中,OpenShift Online是面向普通開發(fā)者和小微企業(yè)的線上公有云平臺;OpenShift Enterprise是面向企業(yè)的私有云平臺;OpenShift Origin是一個開源項(xiàng)目,是構(gòu)成前兩個的基礎(chǔ)。

2.OpenShift的技術(shù)架構(gòu)

OpenShift平臺可以安裝于幾乎所有的基礎(chǔ)平臺上,例如裸機(jī)、虛擬機(jī)、私有云、公有云等。整個OpenShift平臺可以分為Container Storage、CoreOS、Kubernetets、Automated operations、Services等幾個層級。下面分別進(jìn)行介紹。

OpenShift平臺可以安裝于幾乎所有的基礎(chǔ)平臺上,例如裸機(jī)、虛擬機(jī)、私有云、公有云等。整個OpenShift平臺可以分為Container Storage、CoreOS、Kubernetets、Automated operations、Services等幾個層級。下面分別進(jìn)行介紹。

Container Storage是持久化的存儲結(jié)構(gòu),它為整個基于容器的環(huán)境提供存儲支持。CoreOS是Linux的一個發(fā)行版,提供容器執(zhí)行的基礎(chǔ)操作系統(tǒng)。Kubernetes即容器編排的調(diào)度平臺。Automated operations指的是對于集群上運(yùn)行的容器宿主機(jī)、Kubernetes集群和應(yīng)用等服務(wù),進(jìn)行自動化的更新、管理等功能。Services包含平臺所提供的具體服務(wù),如集群服務(wù)(監(jiān)控、擴(kuò)縮容、鏡像倉庫、日志系統(tǒng)),應(yīng)用服務(wù)(融合中間件、基礎(chǔ)軟件服務(wù)),Service Mesh(管理微服務(wù)應(yīng)用),開發(fā)服務(wù)(開發(fā)工具、自動構(gòu)建、持續(xù)集成、持續(xù)交付)等。

可以看出,OpenShift在Kubernetes的基礎(chǔ)上,提供了底層支持,擴(kuò)展了應(yīng)用功能,以提供更全面、更便捷的服務(wù)。

智能運(yùn)維系統(tǒng)上云實(shí)踐

智能運(yùn)維系統(tǒng)是一個全面的運(yùn)維平臺,可以實(shí)現(xiàn)監(jiān)控相關(guān)系統(tǒng)的主要運(yùn)行指標(biāo)、發(fā)現(xiàn)異常后匹配應(yīng)急方案、發(fā)起應(yīng)急操作及驗(yàn)證、系統(tǒng)配置、用戶管理等功能。

將該系統(tǒng)部署于OpenShift平臺簡要來說可分為3個步驟:創(chuàng)建容器、將生成的容器打好標(biāo)簽推送至鏡像倉庫、在OpenShift平臺拉取鏡像開始配置運(yùn)行。介紹如下。

1.創(chuàng)建容器

通過Dockerfile來組合基礎(chǔ)鏡像和軟件,Dockerfile中包含的內(nèi)容包括基本鏡像、要安裝的軟件包,要復(fù)制到容器中的軟件,網(wǎng)絡(luò)端口和掛載的存儲卷等信息。編寫好Dockerfile后,可通過運(yùn)行docker build命令來創(chuàng)建一個存儲在本地的容器鏡像。

2.將生成的容器打好標(biāo)簽推送至鏡像倉庫

使用docker tag命令向新容器鏡像添加標(biāo)簽,以標(biāo)識其在鏡像倉庫的位置。然后,通過運(yùn)行docker push命令將該鏡像推送到鏡像倉庫。

3.在OpenShift平臺配置運(yùn)行容器

在OpenShift平臺配置Deployment、Service、Router等運(yùn)行策略,即可從鏡像倉庫拉取相關(guān)鏡像,自動分配Pod,相關(guān)應(yīng)用即可對外提供服務(wù)。

到此,有關(guān)云平臺技術(shù)的介紹已經(jīng)分享完畢。從基礎(chǔ)容器技術(shù)Docker,到集群容器編排Kubernetes,最后到企業(yè)級PaaS平臺OpenShift,云技術(shù)越來越成熟,并逐步形成生態(tài)體系。云原生應(yīng)用體系對于Devops、微服務(wù)等的實(shí)現(xiàn)也具有天然的優(yōu)勢,在持續(xù)集成、持續(xù)部署上更加高效、安全,極大的提高了生產(chǎn)效率,將在企業(yè)數(shù)字化轉(zhuǎn)型中發(fā)揮巨大的作用。

最后

作為一個奮戰(zhàn)在一線的運(yùn)維人員,經(jīng)常遇到集群擴(kuò)容、環(huán)境遷移、頻繁的變更等等一系列繁雜的任務(wù)與問題,處理起來費(fèi)時且容易出錯。在接觸到云原生應(yīng)用后,被其標(biāo)準(zhǔn)化、輕量、高效的運(yùn)行、部署模式所吸引,感受到應(yīng)用上云對運(yùn)維方式帶來的巨大改變,故障自愈、一鍵遷移、一鍵部署等都輕易實(shí)現(xiàn),隨后對各個技術(shù)的官網(wǎng)文檔、相關(guān)書籍、網(wǎng)絡(luò)博客進(jìn)行了研究,形成了本文,希望能對未來的系統(tǒng)建設(shè)添磚加瓦。
責(zé)任編輯:tzh

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 云計算
    +關(guān)注

    關(guān)注

    39

    文章

    7976

    瀏覽量

    140023
  • 網(wǎng)絡(luò)
    +關(guān)注

    關(guān)注

    14

    文章

    7814

    瀏覽量

    90922
  • 容器
    +關(guān)注

    關(guān)注

    0

    文章

    511

    瀏覽量

    22449
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    生產(chǎn)環(huán)境中Kubernetes容器安全的最佳實(shí)踐

    隨著容器化技術(shù)的快速發(fā)展Kubernetes已成為企業(yè)級容器編排的首選平臺。然而,在享受Kubernetes帶來的便利性和可擴(kuò)展性的同時,安全問題也日益凸顯。本文將從運(yùn)維工程師的角度,深入探討生產(chǎn)環(huán)境中
    的頭像 發(fā)表于 07-14 11:09 ?106次閱讀

    紅帽OpenShift Lightspeed正式發(fā)布,生成式AI助力混合云生產(chǎn)力提升

    中國北京 ? – 2025 年 6 月 6 日 ? – 全球領(lǐng)先的開源解決方案提供商紅帽公司近日宣布正式發(fā)布紅帽OpenShift Lightspeed。該產(chǎn)品是一款基于生成式AI(gen AI
    發(fā)表于 07-01 15:04 ?768次閱讀

    docker無法啟用怎么解決?

    mengxing@mengxing-virtual-machine:/etc/docker$ sudo systemctl daemon-reload
    發(fā)表于 06-23 07:17

    GPU架構(gòu)深度解析

    GPU架構(gòu)深度解析從圖形處理到通用計算的進(jìn)化之路圖形處理單元(GPU),作為現(xiàn)代計算機(jī)中不可或缺的一部分,已經(jīng)從最初的圖形渲染專用處理器,發(fā)展成為強(qiáng)大的并行計算引擎,廣泛應(yīng)用于人工智能、科學(xué)計算
    的頭像 發(fā)表于 05-30 10:36 ?369次閱讀
    GPU<b class='flag-5'>架構(gòu)</b>深度<b class='flag-5'>解析</b>

    如何使用Docker部署大模型

    隨著深度學(xué)習(xí)和大模型的快速發(fā)展,如何高效地部署這些模型成為了一個重要的挑戰(zhàn)。Docker 作為一種輕量級的容器化技術(shù),能夠?qū)⒛P图捌湟蕾嚟h(huán)境打包成一個可移植的容器,極大地簡化了部署流程。本文將詳細(xì)介紹如何使用 Docker 部署
    的頭像 發(fā)表于 05-24 16:39 ?338次閱讀

    Kubernetes Helm入門指南

    Helm 是 Kubernetes 的包管理工具,它允許開發(fā)者和系統(tǒng)管理員通過定義、打包和部署應(yīng)用程序來簡化 Kubernetes 應(yīng)用的管理工作。Helm 的出現(xiàn)是為了解決在 Kubernetes
    的頭像 發(fā)表于 04-30 13:42 ?2269次閱讀
    <b class='flag-5'>Kubernetes</b> Helm入門指南

    解鎖未來汽車電子技術(shù):軟件定義車輛與區(qū)域架構(gòu)深度解析

    解鎖未來汽車電子技術(shù):軟件定義車輛與區(qū)域架構(gòu)深度解析 ——立即下載白皮書,搶占智能汽車發(fā)展先機(jī) *附件:解鎖未來汽車電子技術(shù):軟件定義車輛與區(qū)域架構(gòu)深度
    的頭像 發(fā)表于 04-27 11:58 ?571次閱讀

    【技術(shù)案例】Android in Docker

    Docker介紹Docker是一個開源的容器化平臺,用于打包、分發(fā)和運(yùn)行應(yīng)用程序。它通過將應(yīng)用及其所有依賴打包到獨(dú)立的容器中,確保應(yīng)用在不同環(huán)境中一致運(yùn)行。Docker提供快速部署、隔離性強(qiáng)和高效
    的頭像 發(fā)表于 04-02 16:33 ?666次閱讀
    【技術(shù)案例】Android in <b class='flag-5'>Docker</b>

    NVIDIA Blackwell數(shù)據(jù)手冊與NVIDIA Blackwell架構(gòu)技術(shù)解析

    NVIDIA Blackwell數(shù)據(jù)手冊與NVIDIA Blackwell 架構(gòu)技術(shù)解析
    的頭像 發(fā)表于 03-20 17:19 ?727次閱讀

    使用 Flexus 云服務(wù)器 X 實(shí)例部署 Kubernetes 圖形化管理平臺

    Kubernetes 作為當(dāng)今最流行的容器編排平臺,隨著云計算、微服務(wù)架構(gòu)和 DevOps 文化的普及,Kubernetes 在自動化部署、擴(kuò)展和管理容器化應(yīng)用程序方面扮演著越來越重要的角色。未來
    的頭像 發(fā)表于 01-21 16:14 ?339次閱讀
    使用 Flexus 云服務(wù)器 X 實(shí)例部署 <b class='flag-5'>Kubernetes</b> 圖形化管理平臺

    k8s和docker區(qū)別對比,哪個更強(qiáng)?

    DockerKubernetes(K8s)是容器化技術(shù)的兩大流行工具。Docker關(guān)注構(gòu)建和打包容器,適用于本地開發(fā)和單主機(jī)管理;而K8s則提供容器編排和管理平臺,適用于多主機(jī)或云環(huán)境,具備自動化
    的頭像 發(fā)表于 12-11 13:55 ?669次閱讀

    docker和k8s部署在云平臺性能要求盤點(diǎn)

    DockerKubernetes在云平臺部署時有各自的性能要求。Docker需要足夠的CPU、內(nèi)存和存儲資源,以及快速的網(wǎng)絡(luò)帶寬和優(yōu)化的鏡像大小。而Kubernetes則強(qiáng)調(diào)集群管理
    的頭像 發(fā)表于 11-05 10:47 ?528次閱讀

    使用Velero備份Kubernetes集群

    Velero 是 heptio 團(tuán)隊(被 VMWare 收購)開源的 Kubernetes 集群備份、遷移工具。
    的頭像 發(fā)表于 08-05 15:43 ?640次閱讀
    使用Velero備份<b class='flag-5'>Kubernetes</b>集群

    手動構(gòu)建Docker鏡像的方法

    不推薦使用docker commit命令,而應(yīng)該使用更靈活、更強(qiáng)大的dockerfile來構(gòu)建docker鏡像。
    的頭像 發(fā)表于 08-05 15:30 ?909次閱讀
    手動構(gòu)建<b class='flag-5'>Docker</b>鏡像的方法

    risc-v的發(fā)展歷史

    RISC-V的發(fā)展歷史可以追溯到2006年左右,當(dāng)時David Patterson和其他研究者開始探索創(chuàng)建一個開放和可擴(kuò)展的指令集架構(gòu)(ISA)。以下是RISC-V發(fā)展的主要里程碑:
    發(fā)表于 07-29 17:20