Kubernetes概念和術(shù)語

Kubernetes 使用共享網(wǎng)絡(luò)將多個物理機(jī)或虛擬機(jī)匯集到一個集群中色罚,在各服務(wù)器之間進(jìn)行通訊,該集群是配置Kubernetes的所有組件账劲、功能和工作負(fù)載的物理平臺戳护。集群中一臺服務(wù)器(或高可用部署中的一組服務(wù)器)用作Master瀑焦,負(fù)責(zé)管理整個集群腌且,余下的其他機(jī)器用作Worker Node(早起版本中也稱為Minion),它們是使用本地以及外部資源接收和運(yùn)行作負(fù)載的服務(wù)器榛瓮。(集群中的主機(jī)可以是物理機(jī)也可以是虛擬機(jī))

Master

Master是集群中的網(wǎng)關(guān)和中樞铺董,負(fù)責(zé)諸如為用戶和客戶端暴露API。跟蹤其他服務(wù)器的健康狀態(tài)禀晓、以最優(yōu)方式調(diào)度工作負(fù)載精续,以及編排其他組件之間的通訊等任務(wù)坝锰,它是用戶或客戶端與集群之間的核心聯(lián)絡(luò)點(diǎn),并負(fù)責(zé)Kubenetes系統(tǒng)的大多數(shù)集中式管控邏輯重付,單個Master節(jié)點(diǎn)即可完成所有功能什黑,但出于冗余及負(fù)載均衡的目的,生產(chǎn)環(huán)境中通常需要協(xié)同部署多個此類主機(jī)堪夭。Master節(jié)點(diǎn)類似于蜂群中的蜂王愕把。

Node

Node是Kubernetes集群中的工作節(jié)點(diǎn),負(fù)責(zé)接收來自Master的工作指令并根據(jù)指令相應(yīng)的創(chuàng)建或銷毀Pod對象森爽,以及調(diào)整網(wǎng)絡(luò)規(guī)則以合理地路由和轉(zhuǎn)發(fā)流量等恨豁。理論上講,Node可以是任何形式的計算設(shè)備爬迟,不過Master會統(tǒng)一將其抽象為Node對象進(jìn)行管理橘蜜。Node類似于蜂群中的工蜂,生產(chǎn)環(huán)境中它們通常數(shù)量眾多付呕。
Kubernetes將所有Node的資源集結(jié)于一處形成一臺更加強(qiáng)大的“服務(wù)器”计福,在用戶將應(yīng)用部署于其上時,Master會使用調(diào)度算法將其自動指派至某個特定的Node上運(yùn)行徽职。在Node加入集群或從集群中移除時象颖,Master也會按需重新編排影響到的Pod(容器)。于是用戶無需關(guān)心其應(yīng)用究竟運(yùn)行于何處姆钉。

資源抽象

從抽象的視角來講说订,Kubernetes還有眾多的組件來支撐其內(nèi)部的業(yè)務(wù)邏輯,包括運(yùn)行應(yīng)用潮瓶、應(yīng)用編排陶冷、服務(wù)暴露、應(yīng)用恢復(fù)等毯辅,它們在Kuberbetes中被抽象為Pod埂伦、Service、Controller等資源類型思恐,下面列出了幾個較為常用的資源抽象

Pod

Kubernetes并不直接運(yùn)行容器沾谜,而是使用一個抽象的資源對象來封裝一個或者多個容器,這個抽象即為Pod它也是Kubernetes的最小調(diào)度單元壁袄。同一個Pod中容器共享網(wǎng)絡(luò)名稱空間和存儲資源类早,這些容器可經(jīng)由本地回環(huán)接口lo直接通信,但是最為最小的調(diào)度單元嗜逻,他應(yīng)該盡可能的保持‘小’涩僻,即通常只應(yīng)該包含一個主容器,以及必要的輔助型容器(sidecar)

資源標(biāo)簽(Label)

標(biāo)簽(Label)是將資源進(jìn)行分類的標(biāo)識符,資源標(biāo)簽其實就是一個鍵值型(key/values)數(shù)據(jù)逆日。標(biāo)簽旨在指定對象(如Pod等)辨識性的屬性嵌巷,這些屬性僅對用戶存在特定的意義,對Kubernetes集群來說并不直接表達(dá)核心系統(tǒng)語義室抽。標(biāo)簽可以在創(chuàng)建對象是附加其上搪哪,并能夠在創(chuàng)建后的任意時間進(jìn)行添加和修改。一個對象可以擁有多個標(biāo)簽坪圾,一個標(biāo)簽也可以附加于多個對象(通常是同一類對象)之上

標(biāo)簽選擇器

標(biāo)簽選擇器(Selector)全程為”Label Selector“晓折,它是一種根據(jù)Label來過濾符合條件的資源對象的機(jī)制。例如兽泄,將附有標(biāo)簽“role:backend”的所有Pod對象挑選除開歸為一組就是標(biāo)簽選擇器的一種應(yīng)用漓概,用戶通常使用標(biāo)簽對資源對象進(jìn)行分類,而后使用標(biāo)簽選擇器挑選出它們病梢,例如將其創(chuàng)建為某Service的端點(diǎn)胃珍。

(Pod 控制器)

盡管Pod是Kubernetes的最小調(diào)度單元,但用戶通常并不會直接部署及管理Pod對象蜓陌,而是要借助于另一類抽象----控制器(Controller)對其進(jìn)行管理觅彰。用于工作負(fù)載的控制器是一種管理Pod生命周期的資源抽象,它們是Kubernetes上的一類對象钮热,而非單個資源對象填抬, 包括ReplicationController、ReplicaSet霉旗、Deplotment痴奏、StatefulSet蛀骇、Job等厌秒。以Deplotment控制器為例,他負(fù)責(zé)確保指定的Pod對象副本數(shù)量精確符合定義擅憔,否則“多退少補(bǔ)”鸵闪、使用控制器之后就不在需要手動管理Pod對象了,用戶只需要聲明應(yīng)用的期望狀態(tài)暑诸,控制器就會自動對其進(jìn)行進(jìn)程管理蚌讼。

服務(wù)資源(Service)

Service是建立在一組Pod對象之上的資源抽象,他通過標(biāo)簽選擇器選定一組Pod對象个榕,并為這組Pod對象定義一個統(tǒng)一的固定訪問入口(通常是一個IP地址)篡石,若Kubernetes集群存在DNS附件,他就會在Service創(chuàng)建時為期自動配置一個DNS名稱以便客戶端進(jìn)行服務(wù)發(fā)現(xiàn)西采。到達(dá)Service IP 的請求將被負(fù)載均衡至其后的端點(diǎn)--各個Pod對象之上凰萨,因此Service從本質(zhì)上來講是一個四層代理服務(wù)。另外,Service還可以將集群外部流量引入到集群中來胖眷。

存儲卷

存儲卷(Volume)是獨(dú)立于容器文件系統(tǒng)之外的存儲空間武通,常用于擴(kuò)展容器的存儲空間并為它提供持久存儲能力。Kubernetes集群上的存儲卷答題可以分為臨時卷珊搀、本地卷和網(wǎng)絡(luò)卷冶忱。臨時卷和本地卷都位于Node本地,一旦Pod被調(diào)度至其他Node境析,此類型卷的存儲卷將無法訪問到囚枪,因此臨時卷和本地卷通常用于數(shù)據(jù)緩存,持久化的數(shù)據(jù)則需要放置于持久卷(persistent volume)之上劳淆。

Name和Namespace

名稱(Name)是Kubernetes集群中資源對象的標(biāo)識符眶拉,它們的作用域通常是名稱空間(Namespace),因此名稱空間是名稱的額外的限定機(jī)制憔儿。在同一個名稱空間中忆植,同一類型資源對象的名稱必須具有唯一性。名稱空間通常用于實現(xiàn)租戶或項目的資源隔離谒臼,從而形成邏輯分組朝刊,創(chuàng)建的Pod和Service等資源對象都屬于名稱空間級別,未指定時蜈缤,它們都屬于默認(rèn)的名稱空間“default”拾氓。

Annotation

Annotation(注解)是另一種附加在對象之上的鍵值類型的數(shù)據(jù),但它擁有更大的數(shù)據(jù)容量底哥。Annotation常用于將各種非標(biāo)識型元數(shù)據(jù)(metadata)附加到對象上咙鞍,但它不能用于標(biāo)識和選擇對象,通常也不會被Kubernetes直接使用趾徽,其主要目的是方便工具或用戶的閱讀及查找续滋。

Ingress

Kubernetes將Pod對象和外部網(wǎng)絡(luò)環(huán)境進(jìn)行了隔離,Pod和Service等對象間的通訊都使用其內(nèi)部專用地址進(jìn)行孵奶,如若需要放開某些Pod對象提供給外部訪問疲酌,則需要為其請求流量打開一個通往Kubernetes集群的內(nèi)部通道,除了Service之外了袁,Ingress也是這類通道的實現(xiàn)方式之一朗恳。

內(nèi)容摘自Kubernetes 進(jìn)階實戰(zhàn):馬永亮著

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市载绿,隨后出現(xiàn)的幾起案子粥诫,更是在濱河造成了極大的恐慌,老刑警劉巖崭庸,帶你破解...
    沈念sama閱讀 221,635評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件怀浆,死亡現(xiàn)場離奇詭異劝堪,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)揉稚,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評論 3 399
  • 文/潘曉璐 我一進(jìn)店門秒啦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人搀玖,你說我怎么就攤上這事余境。” “怎么了灌诅?”我有些...
    開封第一講書人閱讀 168,083評論 0 360
  • 文/不壞的土叔 我叫張陵芳来,是天一觀的道長。 經(jīng)常有香客問我猜拾,道長即舌,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,640評論 1 296
  • 正文 為了忘掉前任挎袜,我火速辦了婚禮顽聂,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘盯仪。我一直安慰自己紊搪,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,640評論 6 397
  • 文/花漫 我一把揭開白布全景。 她就那樣靜靜地躺著耀石,像睡著了一般。 火紅的嫁衣襯著肌膚如雪爸黄。 梳的紋絲不亂的頭發(fā)上滞伟,一...
    開封第一講書人閱讀 52,262評論 1 308
  • 那天,我揣著相機(jī)與錄音炕贵,去河邊找鬼梆奈。 笑死,一個胖子當(dāng)著我的面吹牛鲁驶,可吹牛的內(nèi)容都是我干的鉴裹。 我是一名探鬼主播,決...
    沈念sama閱讀 40,833評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼钥弯,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了督禽?” 一聲冷哼從身側(cè)響起脆霎,我...
    開封第一講書人閱讀 39,736評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎狈惫,沒想到半個月后睛蛛,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鹦马,經(jīng)...
    沈念sama閱讀 46,280評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,369評論 3 340
  • 正文 我和宋清朗相戀三年忆肾,在試婚紗的時候發(fā)現(xiàn)自己被綠了荸频。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,503評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡客冈,死狀恐怖旭从,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情场仲,我是刑警寧澤和悦,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站渠缕,受9級特大地震影響鸽素,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜亦鳞,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,870評論 3 333
  • 文/蒙蒙 一馍忽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧燕差,春花似錦舵匾、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至刹帕,卻和暖如春吵血,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背偷溺。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評論 1 272
  • 我被黑心中介騙來泰國打工蹋辅, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人挫掏。 一個月前我還...
    沈念sama閱讀 48,909評論 3 376
  • 正文 我出身青樓侦另,卻偏偏與公主長得像,于是被迫代替她去往敵國和親尉共。 傳聞我的和親對象是個殘疾皇子褒傅,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,512評論 2 359

推薦閱讀更多精彩內(nèi)容