kubernetes 概述

一、kubernetes 概述

1、kubernetes 基本介紹

kubernetes,簡(jiǎn)稱(chēng) K8s,是用 8 代替 8 個(gè)字符“ubernete”而成的縮寫(xiě)。是一個(gè)開(kāi)源 的,用于管理云平臺(tái)中多個(gè)主機(jī)上的容器化的應(yīng)用,Kubernetes 的目標(biāo)是讓部署容器化的 應(yīng)用簡(jiǎn)單并且高效(powerful),Kubernetes 提供了應(yīng)用部署,規(guī)劃,更新,維護(hù)的一種 機(jī)制。
傳統(tǒng)的應(yīng)用部署方式是通過(guò)插件或腳本來(lái)安裝應(yīng)用。這樣做的缺點(diǎn)是應(yīng)用的運(yùn)行、配 置、管理、所有生存周期將與當(dāng)前操作系統(tǒng)綁定,這樣做并不利于應(yīng)用的升級(jí)更新/回滾等 操作,當(dāng)然也可以通過(guò)創(chuàng)建虛擬機(jī)的方式來(lái)實(shí)現(xiàn)某些功能,但是虛擬機(jī)非常重,并不利于 可移植性。
新的方式是通過(guò)部署容器方式實(shí)現(xiàn),每個(gè)容器之間互相隔離,每個(gè)容器有自己的文件 系統(tǒng) ,容器之間進(jìn)程不會(huì)相互影響,能區(qū)分計(jì)算資源。相對(duì)于虛擬機(jī),容器能快速部署, 由于容器與底層設(shè)施、機(jī)器文件系統(tǒng)解耦的,所以它能在不同云、不同版本操作系統(tǒng)間進(jìn) 行遷移。
容器占用資源少、部署快,每個(gè)應(yīng)用可以被打包成一個(gè)容器鏡像,每個(gè)應(yīng)用與容器間 成一對(duì)一關(guān)系也使容器有更大優(yōu)勢(shì),使用容器可以在 build 或 release 的階段,為應(yīng)用創(chuàng) 建容器鏡像,因?yàn)槊總€(gè)應(yīng)用不需要與其余的應(yīng)用堆棧組合,也不依賴(lài)于生產(chǎn)環(huán)境基礎(chǔ)結(jié)構(gòu), 這使得從研發(fā)到測(cè)試、生產(chǎn)能提供一致環(huán)境。類(lèi)似地,容器比虛擬機(jī)輕量、更“透明”, 這更便于監(jiān)控和管理。
Kubernetes 是 Google 開(kāi)源的一個(gè)容器編排引擎,它支持自動(dòng)化部署、大規(guī)??缮炜s、 應(yīng)用容器化管理。在生產(chǎn)環(huán)境中部署一個(gè)應(yīng)用程序時(shí),通常要部署該應(yīng)用的多個(gè)實(shí)例以便 對(duì)應(yīng)用請(qǐng)求進(jìn)行負(fù)載均衡。
在 Kubernetes 中,我們可以創(chuàng)建多個(gè)容器,每個(gè)容器里面運(yùn)行一個(gè)應(yīng)用實(shí)例,然后通 過(guò)內(nèi)置的負(fù)載均衡策略,實(shí)現(xiàn)對(duì)這一組應(yīng)用實(shí)例的管理、發(fā)現(xiàn)、訪問(wèn),而這些細(xì)節(jié)都不需 要運(yùn)維人員去進(jìn)行復(fù)雜的手工配置和處理。

2、kubernetes 功能和架構(gòu)

2.1 概述
Kubernetes 是一個(gè)輕便的和可擴(kuò)展的開(kāi)源平臺(tái),用于管理容器化應(yīng)用和服務(wù)。通過(guò) Kubernetes 能夠進(jìn)行應(yīng)用的自動(dòng)化部署和擴(kuò)縮容。在 Kubernetes 中,會(huì)將組成應(yīng)用的容 器組合成一個(gè)邏輯單元以更易管理和發(fā)現(xiàn)。Kubernetes 積累了作為 Google 生產(chǎn)環(huán)境運(yùn)行 工作負(fù)載 15 年的經(jīng)驗(yàn),并吸收了來(lái)自于社區(qū)的最佳想法和實(shí)踐。
2.2 K8s 功能:
(1)自動(dòng)裝箱
基于容器對(duì)應(yīng)用運(yùn)行環(huán)境的資源配置要求自動(dòng)部署應(yīng)用容器
(2)自我修復(fù)(自愈能力)
當(dāng)容器失敗時(shí),會(huì)對(duì)容器進(jìn)行重啟 當(dāng)所部署的 Node 節(jié)點(diǎn)有問(wèn)題時(shí),會(huì)對(duì)容器進(jìn)行重新部署和重新調(diào)度當(dāng)容器未通過(guò)監(jiān)控檢查時(shí),會(huì)關(guān)閉此容器直到容器正常運(yùn)行時(shí),才會(huì)對(duì)外提供服務(wù)
(3)水平擴(kuò)展
通過(guò)簡(jiǎn)單的命令、用戶 UI 界面或基于 CPU 等資源使用情況,對(duì)應(yīng)用容器進(jìn)行規(guī)模擴(kuò)大 或規(guī)模剪裁
(3)服務(wù)發(fā)現(xiàn)
用戶不需使用額外的服務(wù)發(fā)現(xiàn)機(jī)制,就能夠基于 Kubernetes 自身能力實(shí)現(xiàn)服務(wù)發(fā)現(xiàn)和 負(fù)載均衡
(4)滾動(dòng)更新
可以根據(jù)應(yīng)用的變化,對(duì)應(yīng)用容器運(yùn)行的應(yīng)用,進(jìn)行一次性或批量式更新
(5)版本回退
可以根據(jù)應(yīng)用部署情況,對(duì)應(yīng)用容器運(yùn)行的應(yīng)用,進(jìn)行歷史版本即時(shí)回退
(6)密鑰和配置管理
在不需要重新構(gòu)建鏡像的情況下,可以部署和更新密鑰和應(yīng)用配置,類(lèi)似熱部署。
(7)存儲(chǔ)編排
自動(dòng)實(shí)現(xiàn)存儲(chǔ)系統(tǒng)掛載及應(yīng)用,特別對(duì)有狀態(tài)應(yīng)用實(shí)現(xiàn)數(shù)據(jù)持久化非常重要
存儲(chǔ)系統(tǒng)可以來(lái)自于本地目錄、網(wǎng)絡(luò)存儲(chǔ)(NFS、Gluster、Ceph等)、公共云存儲(chǔ)服務(wù)
(8)批處理
提供一次性任務(wù),定時(shí)任務(wù);滿足批量數(shù)據(jù)處理和分析的場(chǎng)景

2.3 應(yīng)用部署架構(gòu)分類(lèi)
(1) 無(wú)中心節(jié)點(diǎn)架構(gòu)
GlusterFS
(2) 有中心節(jié)點(diǎn)架構(gòu)
HDFS
K8S
2.4 k8s 集群架構(gòu)節(jié)點(diǎn)角色功能

  1. Master Node
    k8s 集群控制節(jié)點(diǎn),對(duì)集群進(jìn)行調(diào)度管理,接受集群外用戶去集群操作請(qǐng)求; Master Node 由 API Server、Scheduler、ClusterState Store(ETCD 數(shù)據(jù)庫(kù))和 Controller MangerServer 所組成
  2. Worker Node
    集群工作節(jié)點(diǎn),運(yùn)行用戶業(yè)務(wù)應(yīng)用容器; Worker Node 包含 kubelet、kube proxy 和 ContainerRuntime;
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一. Kubernetes是什么 ? Kubernetes是Google在2014年開(kāi)源的一個(gè)容器集群管理系統(tǒng),K...
    六弦極品閱讀 567評(píng)論 1 3
  • Kubernetes 是一個(gè)可移植的、可擴(kuò)展的開(kāi)源平臺(tái),用于管理容器化的工作負(fù)載和服務(wù),可促進(jìn)聲明式配置和自動(dòng)化。...
    Rainy丶Wang閱讀 321評(píng)論 0 0
  • 1. Kubernetes是什么 Kubernetes是Google在2014年開(kāi)源的一個(gè)容器集群管理系統(tǒng),Kub...
    阿喪小威閱讀 296評(píng)論 0 16
  • 什么是Kubernetes Kubernetes是Google 2014年創(chuàng)建管理的,是Google 10多年大規(guī)...
    haodevops閱讀 92評(píng)論 0 0
  • 摘自:https://www.kubernetes.org.cn/k8s 簡(jiǎn)介 Kubernetes是一個(gè)開(kāi)源的,...
    yuhan_sining閱讀 106評(píng)論 0 0

友情鏈接更多精彩內(nèi)容