W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
Kubernetes 是一個可移植的、可擴展的開源平臺,用于管理容器化的工作負載和服務(wù),可促進聲明式配置和自動化。 Kubernetes 擁有一個龐大且快速增長的生態(tài)系統(tǒng)。Kubernetes 的服務(wù)、支持和工具廣泛可用。
Kubernetes 這個名字源于希臘語,意為“舵手”或“飛行員”。k8s 這個縮寫是因為 k 和 s 之間有八個字符的關(guān)系。 Google 在 2014 年開源了 Kubernetes 項目。Kubernetes 建立在 Google 在大規(guī)模運行生產(chǎn)工作負載方面擁有十幾年的經(jīng)驗 的基礎(chǔ)上,結(jié)合了社區(qū)中最好的想法和實踐。
讓我們回顧一下為什么 Kubernetes 如此有用。
早期,各個組織機構(gòu)在物理服務(wù)器上運行應(yīng)用程序。無法為物理服務(wù)器中的應(yīng)用程序定義資源邊界,這會導(dǎo)致資源分配問題。 例如,如果在物理服務(wù)器上運行多個應(yīng)用程序,則可能會出現(xiàn)一個應(yīng)用程序占用大部分資源的情況, 結(jié)果可能導(dǎo)致其他應(yīng)用程序的性能下降。 一種解決方案是在不同的物理服務(wù)器上運行每個應(yīng)用程序,但是由于資源利用不足而無法擴展, 并且維護許多物理服務(wù)器的成本很高。
作為解決方案,引入了虛擬化。虛擬化技術(shù)允許你在單個物理服務(wù)器的 CPU 上運行多個虛擬機(VM)。 虛擬化允許應(yīng)用程序在 VM 之間隔離,并提供一定程度的安全,因為一個應(yīng)用程序的信息 不能被另一應(yīng)用程序隨意訪問。
虛擬化技術(shù)能夠更好地利用物理服務(wù)器上的資源,并且因為可輕松地添加或更新應(yīng)用程序 而可以實現(xiàn)更好的可伸縮性,降低硬件成本等等。
每個 VM 是一臺完整的計算機,在虛擬化硬件之上運行所有組件,包括其自己的操作系統(tǒng)。
容器類似于 VM,但是它們具有被放寬的隔離屬性,可以在應(yīng)用程序之間共享操作系統(tǒng)(OS)。 因此,容器被認為是輕量級的。容器與 VM 類似,具有自己的文件系統(tǒng)、CPU、內(nèi)存、進程空間等。 由于它們與基礎(chǔ)架構(gòu)分離,因此可以跨云和 OS 發(fā)行版本進行移植。
容器因具有許多優(yōu)勢而變得流行起來。下面列出的是容器的一些好處:
容器是打包和運行應(yīng)用程序的好方式。在生產(chǎn)環(huán)境中,你需要管理運行應(yīng)用程序的容器,并確保不會停機。 例如,如果一個容器發(fā)生故障,則需要啟動另一個容器。如果系統(tǒng)處理此行為,會不會更容易?
這就是 Kubernetes 來解決這些問題的方法! Kubernetes 為你提供了一個可彈性運行分布式系統(tǒng)的框架。 Kubernetes 會滿足你的擴展要求、故障轉(zhuǎn)移、部署模式等。 例如,Kubernetes 可以輕松管理系統(tǒng)的 Canary 部署。
Kubernetes 為你提供:
Kubernetes 允許你自動掛載你選擇的存儲系統(tǒng),例如本地存儲、公共云提供商等。
自動部署和回滾
你可以使用 Kubernetes 描述已部署容器的所需狀態(tài),它可以以受控的速率將實際狀態(tài) 更改為期望狀態(tài)。例如,你可以自動化 Kubernetes 來為你的部署創(chuàng)建新容器, 刪除現(xiàn)有容器并將它們的所有資源用于新容器。
自動完成裝箱計算
Kubernetes 允許你指定每個容器所需 CPU 和內(nèi)存(RAM)。 當(dāng)容器指定了資源請求時,Kubernetes 可以做出更好的決策來管理容器的資源。
自我修復(fù)
Kubernetes 重新啟動失敗的容器、替換容器、殺死不響應(yīng)用戶定義的 運行狀況檢查的容器,并且在準(zhǔn)備好服務(wù)之前不將其通告給客戶端。
密鑰與配置管理
Kubernetes 允許你存儲和管理敏感信息,例如密碼、OAuth 令牌和 ssh 密鑰。 你可以在不重建容器鏡像的情況下部署和更新密鑰和應(yīng)用程序配置,也無需在堆棧配置中暴露密鑰。
Kubernetes 不是傳統(tǒng)的、包羅萬象的 PaaS(平臺即服務(wù))系統(tǒng)。 由于 Kubernetes 在容器級別而不是在硬件級別運行,它提供了 PaaS 產(chǎn)品共有的一些普遍適用的功能, 例如部署、擴展、負載均衡、日志記錄和監(jiān)視。 但是,Kubernetes 不是單體系統(tǒng),默認解決方案都是可選和可插拔的。 Kubernetes 提供了構(gòu)建開發(fā)人員平臺的基礎(chǔ),但是在重要的地方保留了用戶的選擇和靈活性。
Kubernetes:
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: