Kubernetes進階實戰一2.1Kubernetes快速入門

      網友投稿 850 2022-05-29

      第2章

      Kubernetes快速入門

      Kubernetes集群將所有節點上的資源都整合到一個大的虛擬資源池里,以代替一個個單獨的服務器,而后開放諸如CPU、內存和I/O這些基本資源用于運行其基本單元—Pod資源對象。Pod的容器中運行著隔離的任務單元,它們以Pod為原子單位,并根據其資源需求從虛擬資源池中為其動態分配資源。若可以將整個集群類比為一臺傳統的服務器,那么Kubernetes(Master)就好比是操作系統內核,其主要職責在于抽象資源并調度任務,而Pod資源對象就是那些運行于用戶空間中的進程。于是,傳統意義上的向單節點或集群直接部署、配置應用的模型日漸式微,取而代之的是向Kubernetes的API Server提交運行Pod對象。

      API Server是負責接收并響應客戶端提交任務的接口,用戶可使用諸如CLI工具(如kubectl)、UI工具(如Dashboard)或程序代碼(客戶端開發庫)發起請求,其中,kubectl是最為常用的交互式命令行工具。快速了解Kubernetes的辦法之一就是部署一個測試集群,并嘗試測試使用它的各項基本功能。本章在簡單介紹核心資源對象后將嘗試使用kubectl創建Deployment和Service資源部署并暴露一個Web應用,以便讀者快速了解如何在Kubernetes系統上運行應用程序的核心任務。

      2.1 Kubernetes的核心對象

      《 Kubernetes進階實戰》一2.1Kubernetes快速入門

      API Server提供了RESTful風格的編程接口,其管理的資源是Kubernetes API中的端點,用于存儲某種API對象的集合,例如,內置Pod資源是包含了所有Pod對象的集合。資源對象是用于表現集群狀態的實體,常用于描述應于哪個節點進行容器化應用、需要為其配置什么資源以及應用程序的管理策略等,例如,重啟、升級及容錯機制。另外,一個對象也是一種“意向記錄”—一旦創建,Kubernetes就需要一直確保對象始終存在。Pod、Deployment和Service等都是最常用的核心對象。

      2.1.1 Pod資源對象

      Pod資源對象是一種集合了一到多個應用容器、存儲資源、專用IP及支撐容器運行的其他選項的邏輯組件,如圖2-1所示。換言之,Pod代表著Kubernetes的部署單元及原子運行單元,即一個應用程序的單一運行實例,它通常由共享資源且關系緊密的一個或多個應用容器組成。

      Kubernetes的網絡模型要求其各Pod對象的IP地址位于同一網絡平面內(同一IP網段),各Pod之間可使用其IP地址直接進行通信,無論它們運行于集群內的哪個工作節點之上,這些Pod對象都像是運行于同一局域網中的多個主機。

      讀者可以將每個Pod對象想象成一個邏輯主機,它類似于現實世界中的物理主機或VM(Virtual Machine),運行于同一個Pod對象中的多個進程也類似于物理機或VM上獨立運行的進程。不過,Pod對象中的各進程均運行于彼此隔離的容器中,并于各容器間共享兩種關鍵資源:網絡和存儲卷。

      ★ ? 網絡(networking):每個Pod對象都會被分配一個集群內專用的IP地址,也稱為Pod IP,同一Pod內部的所有容器共享Pod對象的Network和UTS名稱空間,其中包括主機名、IP地址和端口等。因此,這些容器間的通信可以基于本地回環接口lo進行,而與Pod外的其他組件的通信則需要使用Service資源對象的ClusterIP及其相應的端口完成。

      ★ ? 存儲卷(volume):用戶可以為Pod對象配置一組“存儲卷”資源,這些資源可以共享給其內部的所有容器使用,從而完成容器間數據的共享。存儲卷還可以確保在容器終止后被重啟,甚至是被刪除后也能確保數據不會丟失,從而保證了生命周期內的Pod對象數據的持久化存儲。

      一個Pod對象代表某個應用程序的一個特定實例,如果需要擴展應用程序,則意味著為此應用程序同時創建多個Pod實例,每個實例均代表應用程序的一個運行的“副本”(replica)。這些副本化的Pod對象的創建和管理通常由另一組稱之為“控制器”(Controller)的對象實現,例如,Deployment控制器對象。

      創建Pod時,還可以使用Pod Preset對象為Pod注入特定的信息,如Conf?igMap、Secret、存儲卷、卷掛載和環境變量等。有了Pod Preset對象,Pod模板的創建者就無須為每個模板顯式提供所有信息,因此,也就無須事先了解需要配置的每個應用的細節即可完成模板定義。這些內容將在后面的章節中予以介紹。

      基于期望的目標狀態和各節點的資源可用性,Master會將Pod對象調度至某選定的工作節點運行,工作節點于指向的鏡像倉庫(image registry)下載鏡像,并于本地的容器運行時環境中啟動容器。Master會將整個集群的狀態保存于etcd中,并通過API Server共享給集群的各組件及客戶端。

      容器 Kubernetes

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:[跟著官方文檔學pytest][二][學習筆記]
      下一篇:華為云國際站非洲-約翰內斯堡節點彈性公網IP服務于2020年2月25日 00:00(北京時間)降價通知
      相關文章
      亚洲综合色一区二区三区小说| 2048亚洲精品国产| 中文字幕精品亚洲无线码二区| 亚洲国产综合精品中文第一| 亚洲欧洲日产专区| 老汉色老汉首页a亚洲| 久久久亚洲精品国产| 亚洲日韩欧洲无码av夜夜摸| 亚洲国产成人五月综合网| 亚洲AV无码专区在线观看成人 | 久久精品国产亚洲AV不卡| 五月婷婷亚洲综合| 内射无码专区久久亚洲| 亚洲日本VA午夜在线电影| 亚洲砖码砖专无区2023| 亚洲免费观看在线视频| 亚洲免费中文字幕| 亚洲成A∨人片在线观看无码| 亚洲精品自在线拍| 91亚洲精品自在在线观看| 亚洲精品国产啊女成拍色拍| 亚洲精品成人网站在线播放| 亚洲成人福利在线| 国产精品亚洲四区在线观看 | 亚洲午夜久久久久久久久电影网| 亚洲色精品vr一区二区三区| 久久精品亚洲乱码伦伦中文| 亚洲伊人久久大香线蕉综合图片| 久久亚洲高清观看| 亚洲国产综合91精品麻豆| 久久国产精品亚洲一区二区| 亚洲精品视频在线| 亚洲精品中文字幕无乱码| 亚洲av乱码一区二区三区| 亚洲综合色丁香婷婷六月图片| 国产91在线|亚洲| 亚洲AV成人精品一区二区三区| 国产偷国产偷亚洲清高APP| 亚洲AⅤ优女AV综合久久久| 亚洲综合精品香蕉久久网| 久久噜噜噜久久亚洲va久|