K8s,英文全稱為Kube.NETes,就是基于容器的集群管理平臺(tái),是用于自動(dòng)部署、擴(kuò)縮和管理容器化應(yīng)用程序的開源系統(tǒng)。
K8s是用來干啥的?
簡(jiǎn)單來說,可以用一句話來解釋:K8s的特點(diǎn)就是所有主機(jī)上都裝上Docker,然后用K8s把這些連接起來。
服務(wù)發(fā)現(xiàn)和負(fù)載均衡
Kubernetes 可以使用 DNS 名稱或自己的 IP 地址公開容器,如果到容器的流量很大,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 來為您的部署創(chuàng)建新容器,刪除現(xiàn)有容器并將它們的所有資源用于新容器。
自動(dòng)二進(jìn)制打包
Kubernetes 允許您指定每個(gè)容器所需 CPU 和內(nèi)存(RAM)。當(dāng)容器指定了資源請(qǐng)求時(shí),Kubernetes 可以做出更好的決策來管理容器的資源。
自我修復(fù)
Kubernetes 重新啟動(dòng)失敗的容器、替換容器、殺死不響應(yīng)用戶定義的運(yùn)行狀況檢查的容器,并且在準(zhǔn)備好服務(wù)之前不將其通告給客戶端。
密鑰與配置管理
Kubernetes 允許您存儲(chǔ)和管理敏感信息,例如密碼、OAuth 令牌和 ssh 密鑰。您可以在不重建容器鏡像的情況下部署和更新密鑰和應(yīng)用程序配置,也無需在堆棧配置中暴露密鑰。
Kubernetes 特性
自動(dòng)化上線和回滾
Kubernetes 會(huì)分步驟地將針對(duì)應(yīng)用或其配置的更改上線,同時(shí)監(jiān)視應(yīng)用程序運(yùn)行狀況以確保你不會(huì)同時(shí)終止所有實(shí)例。如果出現(xiàn)問題,Kubernetes 會(huì)為你回滾所作更改。你應(yīng)該充分利用不斷成長(zhǎng)的部署方案生態(tài)系統(tǒng)。
服務(wù)發(fā)現(xiàn)與負(fù)載均衡
無需修改你的應(yīng)用程序去使用陌生的服務(wù)發(fā)現(xiàn)機(jī)制。Kubernetes 為容器提供了自己的 IP 地址和一個(gè) DNS 名稱,并且可以在它們之間實(shí)現(xiàn)負(fù)載均衡。
自我修復(fù)
重新啟動(dòng)失敗的容器,在節(jié)點(diǎn)死亡時(shí)替換并重新調(diào)度容器, 殺死不響應(yīng)用戶定義的健康檢查的容器, 并且在它們準(zhǔn)備好服務(wù)之前不會(huì)將它們公布給客戶端。
存儲(chǔ)編排
自動(dòng)掛載所選存儲(chǔ)系統(tǒng),包括本地存儲(chǔ)、諸如 AWS 或 GCP 之類公有云提供商所提供的存儲(chǔ)或者諸如 NFS、iSCSI、Ceph、Cinder 這類網(wǎng)絡(luò)存儲(chǔ)系統(tǒng)。
Secret 和配置管理
部署和更新 Secret 和應(yīng)用程序的配置而不必重新構(gòu)建容器鏡像, 且不必將軟件堆棧配置中的秘密信息暴露出來。
自動(dòng)裝箱
根據(jù)資源需求和其他限制自動(dòng)放置容器,同時(shí)避免影響可用性。 將關(guān)鍵性的和盡力而為性質(zhì)的工作負(fù)載進(jìn)行混合放置,以提高資源利用率并節(jié)省更多資源。
批量執(zhí)行
除了服務(wù)之外,Kubernetes 還可以管理你的批處理和 CI 工作負(fù)載,在期望時(shí)替換掉失效的容器。
IPv4/IPv6 雙協(xié)議棧
為 Pod 和 Service 分配 IPv4 和 IPv6 地址。
水平擴(kuò)縮
使用一個(gè)簡(jiǎn)單的命令、一個(gè) UI 或基于 CPU 使用情況自動(dòng)對(duì)應(yīng)用程序進(jìn)行擴(kuò)縮。
為擴(kuò)展性設(shè)計(jì)
無需更改上游源碼即可擴(kuò)展你的 Kubernetes 集群。
綜上可知,K8s對(duì)于企業(yè)開發(fā)而言是一款極給力的神器,能夠?qū)ζ髽I(yè)的開發(fā)提供非常的幫助和支持。那么這么一款神器,添加到低代碼開發(fā)應(yīng)用中時(shí),更是如有神助。
已JNPF快速開發(fā)平臺(tái)來講,JNPF通過在線開發(fā)、流程引擎、代碼生成等核心功能快速構(gòu)建相關(guān)業(yè)務(wù)系統(tǒng),深度集成JAVA+.net 6雙技術(shù)引擎,具備易維護(hù)、便部署、高集成、高效率等多方面特性,面向企業(yè)項(xiàng)目提供開發(fā)服務(wù),提供開發(fā)構(gòu)建、開放連接、部署運(yùn)維、在線運(yùn)營(yíng)的全生命周期能力。同時(shí),支持多種云環(huán)境部署、本地部署給予最大的安全保障,可以幫助企業(yè)快速搭建適合自身應(yīng)用場(chǎng)景的產(chǎn)品。在此基礎(chǔ)上,還可提供K8s部署服務(wù),為企業(yè)的轉(zhuǎn)型開發(fā)保駕護(hù)航。