五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Kubernetes架構(gòu)+核心組件最全介紹合集

2021-03-25 10:16 作者:微軟MVP-Eleven  | 我要投稿

本篇目標

分析為什么選擇kubernetes

kubernetes概述

kubernetes架構(gòu)介紹和分析

kubernetes核心概念POD,POD控制器,Service詳解

下一篇完整安裝Kubernetes


為什么需要Kubernetes

? ? ? 很多小伙伴兒對Kubernetes可能都是聽過但沒用過,然而如果你真的去落地微服務架構(gòu)會發(fā)現(xiàn),Kubernetes是繞不開的。在架構(gòu)班壓軸實戰(zhàn)-微服務架構(gòu)電商平臺中,一共有15個微服務,7個定時作業(yè)processor,再加上Redis、RabbitMQ、MongoDB、ElasticSearch、Kafka、ELK、Apollo等各種組件,分別還得集群部署,算起來都得100多個進程了,怎么部署?當然是容器化的,但是100多容器真不是人能管的過來的。中途我演示了用docker-compose管理,寫腳本都能讓人崩潰,Kubernetes才是正解!






Kubernetes是什么

Kubernetes誕生之初就是個管理容器的工具,然而在管理好容器之后,又提供了各種進階好用的功能,在架構(gòu)班的實戰(zhàn)中得到了很好的應用,下面一一介紹下:

自動發(fā)布與伸縮

可以通過聲明式的配置文件定義想要部署的容器,Kubernetes將自動進行容器的部署,達到期望的結(jié)果;通過指定容器副本數(shù),或者設(shè)置根據(jù)資源負載情況(如CPU、內(nèi)存使用率),自動對容器組進行快速的伸縮——增大或縮小容器數(shù)量,做到流量自適應

滾動升級與灰度發(fā)布:采用逐步替換的策略實現(xiàn)滾動升級,使用Kubernetes也可以很輕易地管理系統(tǒng)的灰度發(fā)布

服務發(fā)現(xiàn)與負載均衡:Kubernetes通過DNS名稱或IP地址暴露容器的訪問方式,并且可在同一容器組內(nèi)實現(xiàn)負載分發(fā)與均衡

存儲編排:Kubernetes可以自動掛載指定的存儲系統(tǒng),如local storage/nfs/云存儲等

故障恢復:Kubernetes自動重啟已經(jīng)停機的容器,替換不滿足健康檢查的容器


密鑰與配置管理:Kubernetes可以存儲與管理敏感信息,如Docker Registry的登錄憑證,密碼,ssh密鑰等

Kubernetes架構(gòu):kubernetes是用于自動部署,擴展和管理容器化應用程序的開源系統(tǒng)。它源自Google15年生產(chǎn)環(huán)境的運維經(jīng)驗,他的靈活性能讓我們在應對復雜系統(tǒng)時得心應手。



k8s核心組件:

  • etcd 保存了整個集群的狀態(tài);

  • apiserver 提供了資源操作的唯一入口,并提供認證、授權(quán)、訪問控制、API注冊和發(fā)現(xiàn)等機制;

  • controller manager負責維護集群的狀態(tài),比如故障檢測、自動擴展、滾動更新等;

  • scheduler負責資源的調(diào)度,按照預定的調(diào)度策略將Pod調(diào)度到相應的機器上;

  • kubelet 負責維護容器的生命周期,同時也負責Volume(CSI)和網(wǎng)絡(luò)(CNI)的管理;

  • Container runtime負責鏡像管理以及Pod和容器的真正運行(CRI);

  • kube-proxy負責為Service提供cluster內(nèi)部的服務發(fā)現(xiàn)和負載均衡;

  • 除了核心組件,還有一些推薦的插件,其中有的已經(jīng)成為CNCF中的托管項目:

  • CoreDNS負責為整個集群提供DNS服務

  • Ingress Controller為服務提供外網(wǎng)入口

  • Prometheus提供資源監(jiān)控

  • Dashboard提供GUI

  • Federation提供跨可用區(qū)的集群

  • Kubernetes架構(gòu)示意圖

整體架構(gòu)

Master架構(gòu)

Node架構(gòu)

分層架構(gòu)


??說 明? ?????

核心層:Kubernetes最核心的功能,對外提供API構(gòu)建高層的應用,對內(nèi)提供插件式應用執(zhí)行環(huán)境

應用層:部署(無狀態(tài)應用、有狀態(tài)應用、批處理任務、集群應用等)和路由(服務發(fā)現(xiàn)、DNS解析等)、Service Mesh(部分位于應用層)

管理層:系統(tǒng)度量(如基礎(chǔ)設(shè)施、容器和網(wǎng)絡(luò)的度量),自動化(如自動擴展、動態(tài)Provision等)以及策略管理(RBAC、Quota、PSP、NetworkPolicy等)、Service Mesh(部分位于管理層)

接口層:kubectl命令行工具、客戶端SDK以及集群聯(lián)邦

生態(tài)系統(tǒng):在接口層之上的龐大容器集群管理調(diào)度的生態(tài)系統(tǒng),可以劃分為兩個范疇

Kubernetes外部:日志、監(jiān)控、配置管理、CI/CD、Workflow、FaaS、OTS應用、ChatOps、GitOps、SecOps等

Kubernetes內(nèi)部:CRI、CNI、CSI、鏡像倉庫、Cloud Provider、集群自身的配置和管理等


K8S核心概念

POD是什么

POD是K8S創(chuàng)建、管理和部署的最小單元,其他資源對象都是支撐和擴展POD,一個POD包含一個或者多個容器。為了將容器的生命周期和進程的生命周期綁定,通常一個容器內(nèi)只包含一個進程;當一個服務運行需要多個進程時,為了保持這個規(guī)則,因此需要比容器更高一級的對象,這就是POD。


POD 控 ?制 ?器

POD控制器是什么

為更好的使用POD,K8S一般不直接創(chuàng)建POD而是通過創(chuàng)建中間層POD控制器來使用POD。通過POD控制器可以更好的實現(xiàn)POD的保活、擴縮容和升級等操作。

Service&Ingress

Service是什么



本篇文章偏理論介紹,在下一篇將實操Kubernetes集群環(huán)境構(gòu)建,一起來試試吧!

Kubernetes架構(gòu)+核心組件最全介紹合集的評論 (共 條)

分享到微博請遵守國家法律
新泰市| 乌审旗| 田阳县| 晋州市| 柘荣县| 陈巴尔虎旗| 噶尔县| 天津市| 平罗县| 衡阳市| 扶余县| 淅川县| 佳木斯市| 漠河县| 昌平区| 安乡县| 嘉黎县| 神木县| 延安市| 孝义市| 随州市| 晴隆县| 左贡县| 天峻县| 黔南| 东阳市| 南华县| 临夏市| 遂平县| 土默特右旗| 鲜城| 高安市| 新巴尔虎右旗| 虎林市| 邵阳市| 贞丰县| 灵寿县| 天峻县| 天气| 新沂市| 南安市|