Kubernetes組件和架構(gòu)簡介
一.概念簡介
1.含義:
Kubernetes是google開源的容器編排工具,本質(zhì)是一組服務(wù)器集群,在集群的各個節(jié)點上運行程序來進(jìn)行容器進(jìn)行管理,最終實現(xiàn)資源管理智能化、自動化。
2.主要功能:
(1)新容器能夠迅速接替崩潰容器,自我修復(fù)能力強(qiáng)。
(2)靈活性強(qiáng),可以對運行容器的數(shù)量進(jìn)行個性調(diào)整,也可以退回舊版本,支持橫向擴(kuò)容和整體遷移。
(3)可以自主去發(fā)現(xiàn)依賴的服務(wù)。
(4)多個容器啟動時,自動實現(xiàn)處理請求的負(fù)載均衡。
(5)可創(chuàng)建存儲卷來根據(jù)需求對容器進(jìn)行存儲。
3.相關(guān)概念:
(1)master
集群控制節(jié)點,至少需要一個master節(jié)點。
(2)node
工作負(fù)載節(jié)點,是由master分配容器到node上,node上的docker在進(jìn)行運行容器。
(3)pod
kubernetes的最小控制單元,容器運行在其中,一個pod可以有1個或多個容器。
(4)label
通過對標(biāo)簽對pod進(jìn)行分類,同一類pod有相同標(biāo)簽。
(5)namespace
用來隔離pod的運行環(huán)境。
二.組件和架構(gòu)介紹
1.master:集群的控制平面,管理集群
(1)ApiServer:資源操作的唯一入口,接收用戶輸入的命令,提供認(rèn)證、注冊等功能,可以通過REST調(diào)用、Kubectl命令行界面或者Kubeadm等來訪問。需要安裝某個服務(wù)時,安裝請求會首先發(fā)送到master節(jié)點上的ApiServer。
(2)Scheduler:監(jiān)視來自ApiServer的新請求,進(jìn)行集群資源調(diào)度,按照策略將Pod調(diào)度到最適合的node節(jié)點上。安裝請求發(fā)送到ApiServer后右Scheduler進(jìn)行選擇(在etcd中獲取node節(jié)點性能等信息并通過算法進(jìn)行選擇)將服務(wù)安裝到哪個node節(jié)點。
(3)Controller-manager:維護(hù)集群狀態(tài),故障檢測等等。ApiServer調(diào)用Controller-manager來調(diào)度node節(jié)點去安裝這個服務(wù)。
(4)etcd:存儲集群中對象的信息(類似于數(shù)據(jù)庫)。在kubernetes啟動后,master和node的信息都會存儲到這里。
2.node:集群的數(shù)據(jù)平面,為容器提供工作環(huán)境
(1)Kubelet:維護(hù)容器的生命周期,控制docker來對容器進(jìn)行創(chuàng)建刪除等操作。Kubelet接收到安裝指令后通知docker,由docker去啟動用于這個服務(wù)的Pod,容器在此Pod中運行。
(2)Kubeproxy:提供集群內(nèi)部的服務(wù)發(fā)現(xiàn)情況和負(fù)載調(diào)度。通過Kubeproxy對此服務(wù)進(jìn)行訪問。
(3)Docker:負(fù)責(zé)節(jié)點上的容器的相關(guān)操作
(4)其他組件
kube-dns:我整個集群提供dns服務(wù)
ingress controller:為服務(wù)提供外網(wǎng)入口
heapster:提供資源監(jiān)控
dashboard:提供GUI界面
fluentd-elasticsearch:集群日志采集、存儲和查詢
3.kubernetes簡單架構(gòu)圖解
到此這篇關(guān)于Kubernetes組件和架構(gòu)簡介的文章就介紹到這了,更多相關(guān)Kubernetes組件和架構(gòu)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Kubernetes控制器中DaemonSet與Job的使用教程
這篇文章主要介紹了Kubernetes控制器中DaemonSet與Job的使用,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-08-08Rainbond的ServiceMesh架構(gòu)組件端口沖突處理解決
這篇文章主要大家介紹了Rainbond?ServiceMesh架構(gòu)組件端口沖突處理方式,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04Kubernetes 1.28.2集群安裝過程中的關(guān)鍵步驟詳解(最新推薦)
Kubernetes K8s是Google開源的容器編排平臺,最初由Borg項目發(fā)展而來,K8s 1.28版本引入了非正常節(jié)點關(guān)閉恢復(fù)、內(nèi)置Sidecar容器支持、Job優(yōu)化、Proxy改進(jìn)和調(diào)度框架優(yōu)化等功能,本文介紹Kubernetes 1.28.2集群安裝過程中的關(guān)鍵步驟,感興趣的朋友一起看看吧2025-03-03Linux安裝Kubernetes(k8s)超詳細(xì)教程
Kubernetes是一個輕便的和可擴(kuò)展的開源平臺,用于管理容器化應(yīng)用和服務(wù),通過Kubernetes能夠進(jìn)行應(yīng)用的自動化部署和擴(kuò)縮容,這篇文章主要給大家介紹了關(guān)于Linux安裝Kubernetes(k8s)的相關(guān)資料,需要的朋友可以參考下2024-07-07