掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
作者:指北君 2022-03-21 08:23:22
云計(jì)算
云原生 Kubernetes 重新啟動(dòng)失敗的容器、替換容器、殺死不響應(yīng)用戶定義的 運(yùn)行狀況檢查的容器,并且在準(zhǔn)備好服務(wù)之前不將其通告給客戶端。

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供墨玉網(wǎng)站建設(shè)、墨玉做網(wǎng)站、墨玉網(wǎng)站設(shè)計(jì)、墨玉網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、墨玉企業(yè)網(wǎng)站模板建站服務(wù),十年墨玉做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
之前指北君給大家介紹過(guò) Docker的教程,接下來(lái)我們撬開(kāi) Kubernetes 的大門(mén)。
https://kubernetes.io/
官方介紹:
Kubernetes 是一個(gè)可移植的、可擴(kuò)展的開(kāi)源平臺(tái), Google 在 2014 年將其開(kāi)源,它用于管理容器化的工作負(fù)載和服務(wù),可促進(jìn)聲明式配置和自動(dòng)化。
Kubernetes 擁有一個(gè)龐大且快速增長(zhǎng)的生態(tài)系統(tǒng)。Kubernetes 的服務(wù)、支持和工具廣泛可用。
通俗來(lái)說(shuō),Kubernetes 是一個(gè)容器編排工具。
當(dāng)業(yè)務(wù)規(guī)模足夠大時(shí),我們會(huì)有很多容器來(lái)跑各種服務(wù),這么多服務(wù)如何批量管理?
之前學(xué) Docker 時(shí)我們介紹過(guò)Docker的官方工具 Docker-compose ,但是這是一種單機(jī)容器管理工具,并不支持集群,雖然官方出了另一種集群管理工具 Docker Swarm,但是當(dāng)你用上 Kubernetes 之后,你會(huì)覺(jué)得他們都是弟弟。
Kubernetes 這個(gè)名字源于希臘語(yǔ),意為“舵手”或“飛行員”。k8s 這個(gè)縮寫(xiě)是因?yàn)?k 和 s 之間有八個(gè)字符的關(guān)系。
部署一個(gè)服務(wù),會(huì)粗略估計(jì)服務(wù)所需要的機(jī)器性能,然后去采購(gòu)對(duì)應(yīng)的真實(shí)物理機(jī)器,然后在該機(jī)器上安裝服務(wù)需要的一些軟件,比如服務(wù)器Tomcat,數(shù)據(jù)庫(kù)MySQL等等。
(1)部署非常慢:采購(gòu)機(jī)器,安裝系統(tǒng),安裝軟件等等;
(2)成本高以及資源浪費(fèi):通常為了以防服務(wù)性能不夠,我們都會(huì)盡量采購(gòu)比預(yù)期資源高一點(diǎn)的機(jī)器,不僅會(huì)增加成本,還會(huì)造成機(jī)器資源浪費(fèi);
(3)難于擴(kuò)展與遷移:由于是真實(shí)的物理機(jī),擴(kuò)展或者遷移會(huì)比較麻煩;
VMware 相信大家都玩過(guò),通過(guò)VMware 我們能在自己電腦上創(chuàng)建很多虛擬機(jī)器,而物理機(jī)時(shí)代就是在一臺(tái)真實(shí)物理機(jī)上,虛擬出多臺(tái)機(jī)器,而且每臺(tái)機(jī)器都可以看做是一臺(tái)獨(dú)立的電腦。
相對(duì)于物理機(jī)時(shí)代,虛擬機(jī)能夠在一臺(tái)機(jī)器上創(chuàng)建多臺(tái)機(jī)器,能夠充分利用資源,并且也做到了機(jī)器之間的隔離,機(jī)器性能不夠用了,也可以通過(guò) Hypervisor 隨時(shí)進(jìn)行擴(kuò)展。
虛擬化技術(shù)相對(duì)于傳統(tǒng)部署時(shí)代能夠更好地利用物理服務(wù)器上的資源,并且因?yàn)榭奢p松地添加或更新應(yīng)用程序 而可以實(shí)現(xiàn)更好的可伸縮性,降低硬件成本等等。
但是每個(gè)虛擬機(jī)都需要安裝一些多余的東西,比如操作系統(tǒng),這算是額外的開(kāi)銷(xiāo)。
容器類(lèi)似于 VM,但是它們具有被放寬的隔離屬性,可以在應(yīng)用程序之間共享操作系統(tǒng)(OS)。因此,容器被認(rèn)為是輕量級(jí)的。容器與 VM 類(lèi)似,具有自己的文件系統(tǒng)、CPU、內(nèi)存、進(jìn)程空間等??梢园讶萜骺醋鍪遣挥冒惭b操作系統(tǒng)的虛擬機(jī),容器化技術(shù)比虛擬機(jī)更加靈活,更加小巧,更加極致的利用物理機(jī)資源。
容器部署有如下優(yōu)點(diǎn):
進(jìn)入容器化部署時(shí)代了,我們會(huì)有很多容器需要管理,在生產(chǎn)環(huán)境中,我們需要保證容器不會(huì)停機(jī),或者容器停機(jī)了能夠馬上自啟,能夠監(jiān)控容器運(yùn)行狀態(tài),甚至容器的負(fù)載均衡等等,這些 Kubernetes 都可以幫我們做到。
Kubernetes 可以使用 DNS 名稱或自己的 IP 地址公開(kāi)容器,如果進(jìn)入容器的流量很大, Kubernetes 可以負(fù)載均衡并分配網(wǎng)絡(luò)流量,從而使部署穩(wěn)定。
Kubernetes 允許你自動(dòng)掛載你選擇的存儲(chǔ)系統(tǒng),例如本地存儲(chǔ)、公共云提供商等。
Kubernetes 允許你指定每個(gè)容器所需 CPU 和內(nèi)存(RAM)。當(dāng)容器指定了資源請(qǐng)求時(shí),Kubernetes 可以做出更好的決策來(lái)管理容器的資源。
Kubernetes 重新啟動(dòng)失敗的容器、替換容器、殺死不響應(yīng)用戶定義的 運(yùn)行狀況檢查的容器,并且在準(zhǔn)備好服務(wù)之前不將其通告給客戶端。
Kubernetes 允許你存儲(chǔ)和管理敏感信息,例如密碼、OAuth 令牌和 ssh 密鑰。你可以在不重建容器鏡像的情況下部署和更新密鑰和應(yīng)用程序配置,類(lèi)似熱部署,也無(wú)需在堆棧配置中暴露密鑰。
(1)官網(wǎng):https://kubernetes.io/
(2)中文社區(qū):https://www.kubernetes.org.cn

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流