K8S中的一些基礎(chǔ)概念

Kubernetes 簡(jiǎn)介

微服務(wù)框架的流行胶果,使得服務(wù)越來(lái)越精細(xì)化常挚,服務(wù)也變的越來(lái)越多,對(duì)于發(fā)布和管理而言產(chǎn)生了巨大的挑戰(zhàn)稽物,而 Docker 的誕生奄毡,給與微服務(wù)的資源治理和控制提供了很好的基礎(chǔ)。容器化可以解決各個(gè)不同語(yǔ)言環(huán)境部署贝或、移植性高吼过、跨平臺(tái)部署等。但是 Docker 對(duì)于容器服務(wù)的編排沒(méi)有那么方便咪奖,因?yàn)?Docker 這方面不足盗忱,而誕生 KubernetesKubernetes 是一個(gè)可移植的羊赵、可擴(kuò)展的開(kāi)源平臺(tái)趟佃,用于管理容器化的工作負(fù)載和服務(wù),可促進(jìn)聲明式配置和自動(dòng)化昧捷。

使用 Kubernetes 帶來(lái)那些方便

  • 快速部署應(yīng)用
  • 很容易實(shí)現(xiàn) 水平伸縮 或 垂直伸縮
  • 無(wú)縫發(fā)布新的應(yīng)用版本
  • 資源使用最大化
  • 應(yīng)用停止自動(dòng)重啟

Kubernetes 特點(diǎn)

  • 可移植:支持公有云闲昭、私有云、混合云靡挥、多重云(multi-cloud)
  • 可擴(kuò)展:模塊化序矩、插件化、可掛載跋破、可組合
  • 自動(dòng)化:自動(dòng)部署簸淀、自動(dòng)重啟、自動(dòng)復(fù)制毒返、自動(dòng)伸縮/擴(kuò)展

為什么需要 Kubernetes租幕,它能做什么?

容器是打包和運(yùn)行應(yīng)用程序的好方式。在生產(chǎn)環(huán)境中拧簸,您需要管理運(yùn)行應(yīng)用程序的容器劲绪,并確保不會(huì)停機(jī)。例如,如果一個(gè)容器發(fā)生故障珠叔,則需要啟動(dòng)另一個(gè)容器蝎宇。如果系統(tǒng)處理此行為弟劲,會(huì)不會(huì)更容易祷安?

這就是 Kubernetes 的救援方法!Kubernetes 為您提供了一個(gè)可彈性運(yùn)行分布式系統(tǒng)的框架兔乞。Kubernetes 會(huì)滿(mǎn)足您的擴(kuò)展要求汇鞭、故障轉(zhuǎn)移、部署模式等庸追。

Kubernetes 為您提供:

  • 服務(wù)發(fā)現(xiàn)和負(fù)載均衡:Kubernetes 可以使用 DNS 名稱(chēng)或自己的 IP 地址公開(kāi)容器霍骄,如果到容器的流量很大,Kubernetes 可以負(fù)載均衡并分配網(wǎng)絡(luò)流量淡溯,從而使部署穩(wěn)定读整。

  • 存儲(chǔ)編排:Kubernetes 允許您自動(dòng)掛載您選擇的存儲(chǔ)系統(tǒng),例如本地存儲(chǔ)咱娶、公共云提供商等米间。

  • 自動(dòng)部署和回滾:您可以使用 Kubernetes 描述已部署容器的所需狀態(tài),它可以以受控的速率將實(shí)際狀態(tài)更改為所需狀態(tài)膘侮。例如屈糊,您可以自動(dòng)化 Kubernetes 來(lái)為您的部署創(chuàng)建新容器,刪除現(xiàn)有容器并將它們的所有資源用于新容器琼了。

  • 容器資源配額:Kubernetes 允許您指定每個(gè)容器所需 CPU 和內(nèi)存(RAM)逻锐。當(dāng)容器指定了資源請(qǐng)求時(shí),Kubernetes 可以做出更好的決策來(lái)管理容器的資源雕薪。

  • 自我修復(fù):Kubernetes 重新啟動(dòng)失敗的容器昧诱、替換容器、殺死不響應(yīng)用戶(hù)定義的運(yùn)行狀況檢查的容器所袁,并且在準(zhǔn)備好服務(wù)之前不將其通告給客戶(hù)端鳄哭。

  • 密鑰與配置管理:Kubernetes 允許您存儲(chǔ)和管理敏感信息,例如密碼纲熏、OAuth 令牌和 ssh 密鑰妆丘。您可以在不重建容器鏡像的情況下部署和更新密鑰和應(yīng)用程序配置,也無(wú)需在堆棧配置中暴露密鑰局劲。

  • 配置文件:Kubernetes 可以通過(guò) ConfigMap 來(lái)存儲(chǔ)配置勺拣。

Kubernetes 基礎(chǔ)資源定義和理解

一切皆為資源,一切即可描述鱼填,一切皆可管理药有。

NameSpaces

命名空間,在一個(gè) Kubernetes 集群中可以使用namespace創(chuàng)建多個(gè)“虛擬集群”,這些namespace之間可以完全隔離愤惰,也可以通過(guò)某種方式苇经,讓一個(gè)namespace中的service可以訪問(wèn)到其他的namespace中的服務(wù)。

Deployment

Deployment 為 Pod 和 ReplicaSet 提供了一個(gè)聲明式定義(declarative)方法宦言,用來(lái)替代以前的 ReplicationController 來(lái)方便的管理應(yīng)用扇单。典型的應(yīng)用場(chǎng)景包括:

  • 定義Deployment來(lái)創(chuàng)建Pod和ReplicaSet
  • 滾動(dòng)升級(jí)和回滾應(yīng)用
  • 擴(kuò)容和縮容
  • 暫停和繼續(xù)Deployment

Service

Kubernetes Service 定義了這樣一種抽象:一個(gè) Pod 的邏輯分組,一種可以訪問(wèn)它們的策略 —— 通常稱(chēng)為微服務(wù)奠旺。 這一組 Pod 能夠被 Service 訪問(wèn)到蜘澜,通常是通過(guò) Label Selector實(shí)現(xiàn)的。

Ingress

Ingress 是從 Kubernetes集群外部訪問(wèn)集群內(nèi)部服務(wù)的入口响疚。比如官方維護(hù)的 Ingress Nginx鄙信。ingress traefikingress haproxy等忿晕。

Pod

Pod 是 kubernetes 中你可以創(chuàng)建和部署的最小也是最簡(jiǎn)的單位装诡。Pod代表著集群中運(yùn)行的進(jìn)程。

Pod中封裝著應(yīng)用的容器(有的情況下是好幾個(gè)容器)践盼,存儲(chǔ)鸦采、獨(dú)立的網(wǎng)絡(luò)IP,管理容器如何運(yùn)行的策略選項(xiàng)宏侍。Pod代表著部署的一個(gè)單位:kubernetes中應(yīng)用的一個(gè)實(shí)例赖淤,可能由一個(gè)或者多個(gè)容器組合在一起共享資源。

ConfigMap

ConfigMap API 資源用來(lái)保存 key-value pair配置數(shù)據(jù)谅河,這個(gè)數(shù)據(jù)可以在pods里使用咱旱,或者被用來(lái)為像controller一樣的系統(tǒng)組件存儲(chǔ)配置數(shù)據(jù)。雖然 ConfigMap 跟 Secrets 類(lèi)似绷耍,但是ConfigMap更方便的處理不含敏感信息的字符串吐限。 注意:ConfigMaps不是屬性配置文件的替代品。ConfigMaps只是作為多個(gè)properties文件的引用褂始。你可以把它理解為L(zhǎng)inux系統(tǒng)中的/etc目錄诸典,專(zhuān)門(mén)用來(lái)存儲(chǔ)配置文件的目錄。

Secret

Secret 解決了密碼崎苗、token狐粱、密鑰等敏感數(shù)據(jù)的配置問(wèn)題,而不需要把這些敏感數(shù)據(jù)暴露到鏡像或者Pod Spec中胆数。Secret 可以以Volume或者環(huán)境變量的方式使用肌蜻。

Secret有三種類(lèi)型:

  • Service Account :用來(lái)訪問(wèn)Kubernetes API,由Kubernetes自動(dòng)創(chuàng)建必尼,并且會(huì)自動(dòng)掛載到Pod的/run/secrets/kubernetes.io/serviceaccount目錄中蒋搜;
  • Opaque :base64編碼格式的Secret篡撵,用來(lái)存儲(chǔ)密碼、密鑰等豆挽;
  • kubernetes.io/dockerconfigjson :用來(lái)存儲(chǔ)私有docker registry的認(rèn)證信息育谬。

PV 和 PVC

用于數(shù)據(jù)持續(xù)存儲(chǔ)轿亮,Pod中没卸,容器銷(xiāo)毀放刨,所有數(shù)據(jù)都會(huì)被銷(xiāo)毀躯喇,如果需要保留數(shù)據(jù),這里就需要用到 PV存儲(chǔ)卷壤圃,PVC存儲(chǔ)卷申明。

PVC 常用于 Deployment 做數(shù)據(jù)持久存儲(chǔ)。實(shí)現(xiàn)持久化存儲(chǔ)還需要理解 Volume 概念私蕾。

Volume

容器磁盤(pán)上的文件的生命周期是短暫的,這就使得在容器中運(yùn)行重要應(yīng)用時(shí)會(huì)出現(xiàn)一些問(wèn)題胡桃。首先踩叭,當(dāng)容器崩潰時(shí),kubelet 會(huì)重啟它翠胰,但是容器中的文件將丟失——容器以干凈的狀態(tài)(鏡像最初的狀態(tài))重新啟動(dòng)容贝。其次,在 Pod 中同時(shí)運(yùn)行多個(gè)容器時(shí)之景,這些容器之間通常需要共享文件斤富。Kubernetes 中的 Volume 抽象就很好的解決了這些問(wèn)題。

Labels 和 Selectors

標(biāo)簽選擇器锻狗。作用用于給每個(gè)容器打標(biāo)簽满力,然后各個(gè)控制器通過(guò) Selector 匹配容器,并管理轻纪。比如 Deployment 或 Service 都是通過(guò)這種方式匹配相應(yīng)的 Pod油额。

參考鏈接

Kubernetes 官方文檔:概述

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市刻帚,隨后出現(xiàn)的幾起案子潦嘶,更是在濱河造成了極大的恐慌,老刑警劉巖崇众,帶你破解...
    沈念sama閱讀 218,941評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掂僵,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡顷歌,警方通過(guò)查閱死者的電腦和手機(jī)锰蓬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)衙吩,“玉大人互妓,你說(shuō)我怎么就攤上這事。” “怎么了冯勉?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,345評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵澈蚌,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我灼狰,道長(zhǎng)宛瞄,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,851評(píng)論 1 295
  • 正文 為了忘掉前任交胚,我火速辦了婚禮份汗,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蝴簇。我一直安慰自己杯活,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布熬词。 她就那樣靜靜地躺著旁钧,像睡著了一般。 火紅的嫁衣襯著肌膚如雪互拾。 梳的紋絲不亂的頭發(fā)上歪今,一...
    開(kāi)封第一講書(shū)人閱讀 51,688評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音颜矿,去河邊找鬼寄猩。 笑死,一個(gè)胖子當(dāng)著我的面吹牛骑疆,可吹牛的內(nèi)容都是我干的田篇。 我是一名探鬼主播,決...
    沈念sama閱讀 40,414評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼封断,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼斯辰!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起坡疼,我...
    開(kāi)封第一講書(shū)人閱讀 39,319評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤彬呻,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后柄瑰,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體闸氮,經(jīng)...
    沈念sama閱讀 45,775評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年教沾,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蒲跨。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,096評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡授翻,死狀恐怖或悲,靈堂內(nèi)的尸體忽然破棺而出孙咪,到底是詐尸還是另有隱情,我是刑警寧澤巡语,帶...
    沈念sama閱讀 35,789評(píng)論 5 346
  • 正文 年R本政府宣布翎蹈,位于F島的核電站,受9級(jí)特大地震影響男公,放射性物質(zhì)發(fā)生泄漏荤堪。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評(píng)論 3 331
  • 文/蒙蒙 一枢赔、第九天 我趴在偏房一處隱蔽的房頂上張望澄阳。 院中可真熱鬧,春花似錦踏拜、人聲如沸碎赢。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,993評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)揩抡。三九已至户侥,卻和暖如春镀琉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蕊唐。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,107評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工屋摔, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人替梨。 一個(gè)月前我還...
    沈念sama閱讀 48,308評(píng)論 3 372
  • 正文 我出身青樓钓试,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親副瀑。 傳聞我的和親對(duì)象是個(gè)殘疾皇子弓熏,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評(píng)論 2 355

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