展開(kāi)
湖北國聯(lián)計算機科技有限公司
  • 首頁(yè)HOME
  • 公司簡(jiǎn)介INTRODUCTION
  • 安全防御DEFENSE
  • 軟件開(kāi)發(fā)SOFTWARE
  • 物聯(lián)網(wǎng)IOT
  • 運行維護SRE
  • 成功案例CASE
  • 聯(lián)系我們CONTACT
  • Technology Services |技術(shù)服務(wù)

    “docker、kubernetes”知識分享
    來(lái)源:湖北國菱計算機科技有限公司-荊州網(wǎng)站建設-荊州軟件開(kāi)發(fā)-政府網(wǎng)站建設公司 時(shí)間:2019-07-22

    2019年7月12日湖北國菱公司軟件開(kāi)發(fā)部成員與運維部成員組織學(xué)習關(guān)于“docker、kubernetes原理及使用” 知識分享會(huì ),知識要點(diǎn)如下:

    第一點(diǎn):什么是容器

    在同一臺機器上運行的不同的組件需要不同的,可能存在沖突的依賴(lài)庫版本,或者其他的不同環(huán)境需求。


    當一個(gè)應用程序僅由較少數量的大組件構成時(shí),完全可以接受每個(gè)組件分配專(zhuān)用的虛擬機,以及通過(guò)給每個(gè)組件提供自己的操作系統實(shí)例來(lái)隔離他們的環(huán)境。但是當這些組件開(kāi)始變小且數量開(kāi)始增長(cháng)時(shí),如果不想浪費硬件資源,又想持續壓低硬件成本,那就不能給每個(gè)組件配置一個(gè)虛擬機。但是這不僅僅浪費硬件資源,因為每個(gè)虛擬機都需要被單獨配置和管理,所以增加虛擬機的數量也就是導致人力資源的浪費,因為這增加系統管理員的工作負擔。

    第二點(diǎn):什么是docker


    Docker是一個(gè)打包,分發(fā)和運行應用程序的平臺。正如我們所說(shuō),他允許將你的應用程序和應用程序依賴(lài)的整個(gè)環(huán)境打包在一起。這既可以是一些應用程序需要的庫,也可以是一個(gè)被安裝的操作系統所有可用的文件。Docker使的傳輸這個(gè)包到一個(gè)中央倉庫成為可能,然后這個(gè)包就能被分發(fā)到任何運行docker的機器上,在哪兒被執行。

    Docker三大組件

    鏡像:docker鏡像里包含了你打包的應用程序及其所依賴(lài)的環(huán)境。它包含應用程序可用的文件系統和其他的元數據,如鏡像運行時(shí)的可執行文件路徑,

    鏡像倉庫:docker鏡像倉庫用于存放docker鏡像,以及促進(jìn)不同人和不同主機之間共享這些鏡像。當你編譯你的鏡像時(shí),要么可以在編譯它的電腦上運行,要么可以先上傳到一個(gè)鏡像倉庫,然后下載到另外一臺電腦上并運行它。某些倉庫是公開(kāi)的,允許所有人從中拉取鏡像,同時(shí)也有一些是私有的,僅部分人和機器可接入。

    容器:docker容器通常是一個(gè)linux容器,它基于docker鏡像被創(chuàng )建。一個(gè)運行中的容器時(shí)一個(gè)運行在docker主機上進(jìn)程,但他和主機,以及所有運行在主機上的其他進(jìn)程都是隔離的。這個(gè)進(jìn)程也是資源受限的,意味著(zhù)他只能訪(fǎng)問(wèn)和使用分配給他的資源(cpu,內存等)。


    第三點(diǎn):什么是kubernetes

    Kubernetes是一個(gè)軟件系統,他允許你在其上很容易地部署和管理容器化的應用。他依賴(lài)于Linux容器的特性來(lái)運行異構應用,而無(wú)須知道這些應用的內部詳情,也不需要手動(dòng)將這些應用部署到每臺機器。因為這些應用運行在容器里,他們不會(huì )影響運行在同一臺服務(wù)器上的其他應用,當你是為完全不同的組織機構運行應用時(shí),這是很關(guān)鍵的。對于云供應商來(lái)說(shuō)是至關(guān)重要的,因為他們在追求高硬件可用率的同搜索時(shí)也必須保障所承載應用的完全隔離。

    1、Kubernetes集群架構

    主節點(diǎn):它承載著(zhù)kuberentes控制和管理整個(gè)集群系統的控制面板。

    工作節點(diǎn):它們運行用戶(hù)實(shí)際部署的應用

    2、控制面板

    控制面板用于控制集群并使它工作。它包含多個(gè)組件,組件可以運行在單個(gè)主節點(diǎn)或者通過(guò)副本分別部署在多個(gè)節點(diǎn)以確保高可用性。這些組件是:

    Kubernetes API服務(wù)器,不和其他控制面板組件都要和它通信

    Scheculer,它調度你的應用(為應用的每個(gè)可部署組件分配一個(gè)工作節點(diǎn))

    Controller Manager,他執行集群級別的功能,如復制組件,持續跟蹤工作節點(diǎn),處理節點(diǎn)失敗等

    Etcd,一個(gè)可靠的分布式數據存儲,它能持久化存儲集群配置

    3、工作節點(diǎn)

    工作節點(diǎn)是運行容器化應用的機器。運行,監控和管理應用服務(wù)的任務(wù)是由以下組件完成的:

    Docker,rtk或其他的容器類(lèi)型

    Kubelet,它與API服務(wù)器通信,并管理它所在的節點(diǎn)的容器

    Kubernetes service proxy(kube-proxy),它負責組件之間的負載均衡網(wǎng)絡(luò )流量

    以上就是這次分享會(huì )的全部?jì)热萘?,希望對大家的學(xué)習或者工作具有一定的參考學(xué)習價(jià)值,也希望能給容器小白們一些幫助。





    荊州地區政府網(wǎng)站建設 解決方案 專(zhuān)業(yè)團隊 騰訊第三方平臺 地址:湖北省荊州市沙市區荊沙大道楚天都市佳園一期C區29棟112       地址:湖北省松滋市新江口街道才知文化廣場(chǎng)1幢1146-1151室     郵編:434200 聯(lián)系電話(huà):0716-6666211     網(wǎng)站編輯部郵箱:business@gl-ns.com 鄂公網(wǎng)安備 42100202000212號 備案號:鄂ICP備2021015094號-1     企業(yè)名稱(chēng):湖北國菱計算機科技有限公司