中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

成都網(wǎng)站建設(shè)服務(wù)全搜網(wǎng)

成都網(wǎng)站建設(shè)服務(wù),全搜網(wǎng),縣級(jí)政府網(wǎng)站建設(shè)建議,河南襄縣做網(wǎng)站的公司常用組件大白話說 如果想要官方的,詳細(xì)的信息,請(qǐng)看官方文檔。 https://kubernetes.io/zh-cn/docs/concepts/overview/components/ 現(xiàn)在介紹一些核心的概念: etcd:存儲(chǔ)所有節(jié)點(diǎn)的信息,節(jié)點(diǎn)上部署的容器信息等都存在數(shù)…

常用組件大白話說

如果想要官方的,詳細(xì)的信息,請(qǐng)看官方文檔。

https://kubernetes.io/zh-cn/docs/concepts/overview/components/

在這里插入圖片描述

現(xiàn)在介紹一些核心的概念:

  • etcd:存儲(chǔ)所有節(jié)點(diǎn)的信息,節(jié)點(diǎn)上部署的容器信息等都存在數(shù)據(jù)庫(kù),這是一個(gè)key-value的數(shù)據(jù)庫(kù),和redis差不多。
  • api-server:k8s作為一個(gè)高級(jí)的容器管理平臺(tái),對(duì)每一個(gè)發(fā)來的請(qǐng)求都要進(jìn)行校驗(yàn),該請(qǐng)求是否被集群允許。刪除集群中的一個(gè)容器組,是否被允許。k8s默認(rèn)運(yùn)行后,6個(gè)組件每一個(gè)組件的請(qǐng)求,都要經(jīng)過api-server進(jìn)行校驗(yàn)。
  • controller manager:具體部署容器到目標(biāo)節(jié)點(diǎn),使用的控制器。容器負(fù)載均衡部署,Deployment控制器就是其中之一。
  • scheduler:運(yùn)維寫nginx.yaml(描述信息),預(yù)期部署3個(gè)nginx容器到k8s-node2節(jié)點(diǎn)上。將Pod調(diào)度到相應(yīng)的Node機(jī)器上。
  • kubelet:管理目標(biāo)節(jié)點(diǎn)中Pod的進(jìn)程。
  • kubectl:在master節(jié)點(diǎn)上敲打的命令。
  • kube-proxy:在node節(jié)點(diǎn)中我們可以看到有kubectl和kube-proxy。kubectl用于和master的api-server通信決定容器創(chuàng)建時(shí)的信息獲取,信息更新。而kube-proxy則是pod要對(duì)外提供網(wǎng)絡(luò)訪問,底層基于iptables的規(guī)則轉(zhuǎn)發(fā)數(shù)據(jù)包,修改數(shù)據(jù)包。

我們來用一個(gè)例子來理解生動(dòng)的理解這些東西。

Kubernetes cluster成為硅谷集團(tuán),類似于騰訊集團(tuán),阿里集團(tuán)。

而Master集群就是硅谷集團(tuán)的總部(Controller Plane),負(fù)責(zé)決策的。節(jié)點(diǎn)集群就是硅谷集團(tuán)用來專門做事情的工廠(Node)。

每一個(gè)Node節(jié)點(diǎn)所擅長(zhǎng)的不一樣,比如有的Node內(nèi)存大,有的Node存儲(chǔ)空間大,有的Node在當(dāng)前的情況下網(wǎng)絡(luò)環(huán)境比較好等等。

加入說有一天,我準(zhǔn)備完成一個(gè)飛機(jī)項(xiàng)目,那么我的硅谷總部需要做一些決策,計(jì)劃的實(shí)施等,而飛機(jī)項(xiàng)目的具體實(shí)現(xiàn)就交給Node節(jié)點(diǎn)來做。我們首先需要一個(gè)決策者。決策者(c-m)負(fù)責(zé)這個(gè)項(xiàng)目的具體操作步驟,例如撰寫相關(guān)的實(shí)施方案和資料。當(dāng)然,我們撰寫了相關(guān)的實(shí)施方案和資料之后,需要交給一個(gè)人去管理這些資料,把這些資料存放在一個(gè)地方整理起來,因此我們需要一個(gè)資料庫(kù),etcd(這個(gè)就是鍵值對(duì)的數(shù)據(jù)庫(kù)而已)。而我的決策者可不能直接把資料給資料庫(kù),我們需要一個(gè)中間人,你看到過哪個(gè)領(lǐng)導(dǎo)沒有秘書的嗎,這也算是一種任務(wù)分工,一種解耦合。我們c-m需要把資料先給秘書部(API Server)。這個(gè)時(shí)候我的Controller Plane硅谷總部準(zhǔn)備過去看一下工廠的項(xiàng)目執(zhí)行進(jìn)度,或者做一些指導(dǎo),所以我們需要一個(gè)調(diào)度者(scheduler),當(dāng)然調(diào)度者做這一間事情也是通過秘書去做的。當(dāng)我要查看東廠的時(shí)候,一個(gè)廠(Node)里面一定是有一個(gè)門衛(wèi)(kube-proxy)的,一些非法人士是無法進(jìn)入我的工廠的,并且如果你假如要去西廠,但是你走錯(cuò)廠了,去了東廠,那么東廠的門衛(wèi)大爺就會(huì)對(duì)你進(jìn)行一些指導(dǎo),引導(dǎo)你去相應(yīng)的位置,引導(dǎo)你的網(wǎng)絡(luò)訪問。當(dāng)我去一個(gè)工廠視察的時(shí)候,我不可能逐一的詢問工廠里面的每一個(gè)員工,所以我們一定要有一個(gè)廠長(zhǎng)(kubulet),廠長(zhǎng)可以有決策權(quán)把這個(gè)廠停了,或者進(jìn)行只會(huì),Master里面也會(huì)有一個(gè)廠長(zhǎng)。廠長(zhǎng)對(duì)本工廠的健康情況等進(jìn)行一個(gè)匯總和匯報(bào)。我們知道,一個(gè)公司,例如阿里云,它不可能是孤身一人的,它一定是會(huì)有合作伙伴,或者是一些其他幫手的,也就是Master里面的c-c-m,我們可以理解成外聯(lián)部,外聯(lián)部提供一些其他的支持以及合作。外聯(lián)部就Cloud provider API了,為什么叫做云,云其實(shí)就是不是你自己的東西,你用的別人的東西,其實(shí)就是云。

了解了kubernetes的基本組件之后,我們來講述一下k8s組件的工作流程。

kubernetes組件的工作流程

我們先自定義一個(gè)需求背景:

創(chuàng)建一個(gè)無狀態(tài)的nginx引用,部署一個(gè)pod即可

流程如下:

  1. 在master節(jié)點(diǎn)寫yaml描述你對(duì)容器的運(yùn)行要求,創(chuàng)建pod的要求。install-pod.yaml

  2. 使用kubectl命令去創(chuàng)建,應(yīng)用這個(gè)資源描述文件,因此k8s組件交互發(fā)出請(qǐng)求,我要?jiǎng)?chuàng)建一個(gè)pod去運(yùn)行nginx了,那么請(qǐng)求應(yīng)該發(fā)給誰呢?

    kubectl create -f install-nginx.yaml
    

    這個(gè)請(qǐng)求發(fā)給api-server。

  3. api-server此時(shí)會(huì)驗(yàn)證kubectl命令發(fā)來的請(qǐng)求是否被允許。利用本地https證書,這個(gè)證書是直接寫入Kubectl配置文件里面的,該請(qǐng)求被允許之后才會(huì)執(zhí)行。

  4. api-server將nginx-pod創(chuàng)建的信息記錄到etcd數(shù)據(jù)庫(kù)中(數(shù)據(jù)庫(kù)記錄了一些信息,例如nginx鏡像版本,容器名,是否要端口暴露)。

  5. api-server會(huì)通知下一個(gè)組件,調(diào)度器組件,scheduler準(zhǔn)備pod調(diào)度。

  6. scheduler調(diào)度,會(huì)去etcd里面查詢,部署的pod信息到底是如何,然后判定出一個(gè)合適的node節(jié)點(diǎn)去部署pod(選擇了好了具體的機(jī)器,但是還沒有執(zhí)行)

  7. scheduler調(diào)度器,會(huì)告訴api-server自己決定pod要部署到哪臺(tái)node節(jié)點(diǎn)上。

  8. api-server會(huì)把這個(gè)信息再次寫入到etcd中,數(shù)據(jù)更新了(nginx本身的容器信息+綁定關(guān)系,部署到哪個(gè)機(jī)器上面)

  9. 此時(shí)api-server會(huì)通知遠(yuǎn)程的具體機(jī)器,比如k8s-node2上的工作進(jìn)程kubelet,去讀取etcd里面的信息,根據(jù)這些信息創(chuàng)建nginx鏡像,以及創(chuàng)建Pod(nginx容器)。

首先我們的運(yùn)行環(huán)境必須是容器運(yùn)行時(shí)的環(huán)境,例如Docker,因?yàn)槿萜骶哂懈綦x性。

我們的Master和Node之間的交互必須要通過api-server來進(jìn)行轉(zhuǎn)發(fā),包括Master內(nèi)部。kube-proxy是實(shí)現(xiàn)網(wǎng)絡(luò)轉(zhuǎn)發(fā)的,是實(shí)現(xiàn)負(fù)載均衡的一個(gè)重要器具。kubelet有權(quán)利讓Node里面如何做事情。

現(xiàn)在我們來進(jìn)行一些過程的描述。

假如我的的一個(gè)Node里面的應(yīng)用2直接崩了,那么我的kubelet廠長(zhǎng)會(huì)定時(shí)對(duì)Node里面的應(yīng)用進(jìn)行探測(cè),kubelet會(huì)隨時(shí)對(duì)工廠里面的流水線進(jìn)行探測(cè)。當(dāng)kubelet發(fā)現(xiàn)應(yīng)用二崩了,那么它就有權(quán)利直接把應(yīng)用2停了。如果我們的kubelet發(fā)現(xiàn)我們的當(dāng)前的Node已經(jīng)無法完成這個(gè)任務(wù)了的話,那么kubelet就會(huì)把這個(gè)情況直接發(fā)給api-server,api-server會(huì)轉(zhuǎn)發(fā)給決策者controller-manager,然后決策者就可以進(jìn)行決策了,決策者可以指定,那么這個(gè)任務(wù)我不搞了,或者給其他的廠去搞。然后把這個(gè)決策給api-server,api-server會(huì)把這個(gè)決策轉(zhuǎn)發(fā)到ETCD數(shù)據(jù)庫(kù)進(jìn)行保存。如果是交給其他的廠來搞的話,那么如何知道那些廠可以完成這個(gè)任務(wù)呢?這個(gè)時(shí)候api-server就會(huì)把這個(gè)任務(wù)發(fā)送給scheduler,scheduler得知這個(gè)任務(wù)之后,我們的scheduler決策者就會(huì)去輪詢的查找符合條件的節(jié)點(diǎn),然后選擇一個(gè)最佳的節(jié)點(diǎn),scheduler把它選擇的節(jié)點(diǎn)給api-server,然后api-server就把這一條記錄存放到ETCD數(shù)據(jù)庫(kù)里面了。

這次決策完成之后,kubelet和api-server會(huì)經(jīng)常“通電話”進(jìn)行聯(lián)系,如果要換廠的話,那么他們是可以知道這個(gè)信息的。知道了這個(gè)信息之后對(duì)應(yīng)的kubelet就會(huì)啟動(dòng)相應(yīng)的應(yīng)用。并且kubelet每過一段時(shí)間就要向api-server進(jìn)行匯報(bào)。就跟廠長(zhǎng)跟老板匯報(bào)工作一樣。

如果這個(gè)項(xiàng)目跑起來了,需要?jiǎng)e人訪問怎么辦?

kube-proxy是門衛(wèi)大爺,而且門衛(wèi)大爺都很喜歡相互打電話聯(lián)系,所以知道其他的情況。例如我的應(yīng)用1想要訪問應(yīng)用3的話,那么kube-proxy會(huì)告訴你所有的應(yīng)用三的地址。

在這里插入圖片描述

門衛(wèi)大爺互相同步

所以kube-proxy是用來決定我的應(yīng)用去哪里訪問的,是負(fù)載均衡實(shí)現(xiàn)的源頭。

http://www.risenshineclean.com/news/56969.html

相關(guān)文章:

  • 懷化市委網(wǎng)站網(wǎng)站快速排名互點(diǎn)軟件
  • 杭州盤石做網(wǎng)站專業(yè)嗎做百度網(wǎng)站一年多少錢
  • 如果在網(wǎng)站暗藏鏈接商城做推廣廣安seo外包
  • 娛樂網(wǎng)站模板手機(jī)網(wǎng)頁(yè)設(shè)計(jì)制作網(wǎng)站
  • 阿里網(wǎng)站建設(shè)優(yōu)秀營(yíng)銷軟文100篇
  • 微友說是做網(wǎng)站維護(hù)讓幫忙投注網(wǎng)店代運(yùn)營(yíng)騙局
  • 做網(wǎng)站博客怎么推廣雅思培訓(xùn)班價(jià)格一覽表
  • 做智能家居網(wǎng)站需要的參考文獻(xiàn)關(guān)鍵詞優(yōu)化公司推薦
  • 網(wǎng)站建設(shè)報(bào)價(jià)方案下載企業(yè)網(wǎng)站模板建站
  • 專業(yè)的app網(wǎng)站開發(fā)百度關(guān)鍵詞優(yōu)化多久上首頁(yè)
  • 可直接打開網(wǎng)站的網(wǎng)頁(yè)地推任務(wù)網(wǎng)
  • 網(wǎng)站安全如何做百度seo在線優(yōu)化
  • flask做的購(gòu)物網(wǎng)站互聯(lián)網(wǎng)推廣廣告
  • 如何做網(wǎng)站推廣 求指點(diǎn)網(wǎng)絡(luò)建設(shè)推廣
  • 質(zhì)量好網(wǎng)站建設(shè)哪家便宜網(wǎng)站優(yōu)化費(fèi)用報(bào)價(jià)明細(xì)
  • 大型商業(yè)廣場(chǎng)網(wǎng)站建設(shè)免費(fèi)b2b平臺(tái)推廣
  • 做網(wǎng)站后端需要什么語言競(jìng)價(jià)托管多少錢
  • 個(gè)人網(wǎng)頁(yè)設(shè)計(jì)包含html和css南寧網(wǎng)站優(yōu)化公司電話
  • 懷遠(yuǎn)做網(wǎng)站電話溫州seo招聘
  • 網(wǎng)絡(luò)規(guī)劃設(shè)計(jì)師自學(xué)百度小程序優(yōu)化排名
  • 怎么做qq二維碼網(wǎng)站排名優(yōu)化系統(tǒng)
  • 自媒體網(wǎng)站開發(fā)充電寶關(guān)鍵詞優(yōu)化
  • web仿網(wǎng)站開發(fā)視頻如何建立企業(yè)網(wǎng)站
  • 羅湖做網(wǎng)站的公司哪家好營(yíng)銷方式和手段有哪些
  • 白城學(xué)做網(wǎng)站外貿(mào)平臺(tái)推廣
  • 長(zhǎng)春網(wǎng)站建設(shè)推薦網(wǎng)誠(chéng)傳媒網(wǎng)絡(luò)營(yíng)銷的推廣手段
  • 如果做網(wǎng)站賺錢優(yōu)化關(guān)鍵詞的步驟
  • html怎么寫廣州網(wǎng)站優(yōu)化服務(wù)商
  • 怎么去跟客戶談網(wǎng)站建設(shè)四川seo優(yōu)化
  • 網(wǎng)站建設(shè)題庫(kù)核心關(guān)鍵詞舉例