新聞中心
管理數(shù)百個Kubernetes集群需要什么?
作者:K8S技術(shù)社區(qū) 2022-02-22 10:30:49
云計算 運(yùn)行和管理數(shù)百個Kubernetes集群需要什么?這就是本文分享的內(nèi)容。下面,我們一起來看。

公司主營業(yè)務(wù):網(wǎng)站制作、成都網(wǎng)站設(shè)計、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)推出南明免費(fèi)做網(wǎng)站回饋大家。
要點(diǎn):
- 部署一個具備生產(chǎn)就緒所需所有依賴關(guān)系的Kubernetes集群需要數(shù)天時間。
- 如果不自動化這個過程,管理Kubernetes集群的浮動是非常困難的。
- 在多個集群提供商之間管理Kubernetes集群的浮動更加困難。
- 升級Kubernetes集群需要進(jìn)行密集測試,以確保更改不會破壞任何功能。這不是像通常建議的那樣按下“升級”按鈕就夠了。
管理一個Kubernetes集群很難,管理全球數(shù)百個Kubernetes集群又如何呢?
數(shù)百個Kubernetes集群,包含多個節(jié)點(diǎn)、服務(wù)、應(yīng)用程序和負(fù)載均衡器。這就是我們在Qovery所做的:管理全球數(shù)百個Kubernetes生產(chǎn)集群,幫助16000多名開發(fā)者在AWS上部署應(yīng)用。
運(yùn)行和管理數(shù)百個Kubernetes集群需要什么?這就是本文分享的內(nèi)容。
一些背景
有了Qovery,每個用戶都可以在幾秒鐘內(nèi)開始在AWS上部署應(yīng)用程序。目標(biāo)是將AWS轉(zhuǎn)變?yōu)榱鲿车拈_發(fā)者體驗(yàn)。通常,我們的用戶來自Heroku,希望跳入AWS。他們希望擁有Heroku的簡單性和AWS的靈活性。這就是使用Qovery的意義所在。
為了在這條道路上取得成功,Qovery使用EKS(AWS托管的Kubernetes)來運(yùn)行和擴(kuò)展無狀態(tài)應(yīng)用程序。每個用戶至少有一個或多個Kubernetes集群。Qovery的承諾是讓Kubernetes集群生產(chǎn)就緒,這意味著Kubernetes的部署、運(yùn)行和管理都由我們來完成。負(fù)責(zé)管理集群的軟件稱為Qovery Engine,它是開源的。
部署生產(chǎn)就緒的Kubernetes集群
為了在AWS上自動部署Kubernetes,我們創(chuàng)建了一個開源部署引擎,一個用Rust編寫的應(yīng)用程序?;旧?,它為Kubernetes、ingress、auto scaler、Loki、S3初始化虛擬私有云(VPC),以存儲Kubernetes日志,最后是Kubernetes。Qovery引擎使用Terraform、Helm和AWS API。在AWS上,從零到生產(chǎn)就緒的Kubernetes集群需要30分鐘,而不是幾周。
首次在AWS帳戶上使用Qovery時,會設(shè)置一個VPC和一個EKS集群。完全設(shè)置后,Qovery Engine將安裝并連接到Qovery控制平面,以接收應(yīng)用程序部署指令。
運(yùn)行Kubernetes
由于Qovery依賴AWS(EKS)提供的托管Kubernetes,因此運(yùn)行和管理Kubernetes變得簡單(無需管理etcd、主節(jié)點(diǎn)和網(wǎng)絡(luò)覆蓋)。AWS通過管理負(fù)責(zé)整個集群完整性的主節(jié)點(diǎn),確保集群始終處于運(yùn)行狀態(tài)。
Qovery的附加值是簡化應(yīng)用程序部署,確保這些應(yīng)用程序正確運(yùn)行。如果出現(xiàn)問題,這些應(yīng)用程序和集群本身的所有信息都會實(shí)時報告給用戶。這是由Qovery Engine和Qovery Agent處理的。
讓Kubernetes保持最新
Kubernetes每10周發(fā)布一個新版本。以這種速度,跟上時代是一項(xiàng)挑戰(zhàn)。尤其是在發(fā)生重大變化時。在生產(chǎn)環(huán)境中進(jìn)行升級之前,必須在臨時集群上測試升級,但需要相當(dāng)長的時間。
對我們來說也是如此。在Qovery,有一個專門的團(tuán)隊(duì)負(fù)責(zé)管理用戶Kubernetes集群的升級。好消息是,一旦做了一次,它對每個集群的效果(幾乎)都是一樣的。
出于安全原因,Qovery Engine連接到Qovery控制平面,并提取集群更新指令。Qovery Engine負(fù)責(zé)所有Kubernetes worker節(jié)點(diǎn)上的滾動更新,更新版本和相關(guān)依賴關(guān)系(Loki、ingresses等)。Qovery Engine保證集群完全可運(yùn)行,并準(zhǔn)備好接收新的應(yīng)用部署。
收尾
在本文中,我們已經(jīng)看到了由數(shù)百個Kubernetes集群組成的浮動是如何由Qovery Engine管理的,Qovery Engine是一個用Rust編寫的開源庫。部署、運(yùn)行和更新Kubernetes集群需要花費(fèi)大量時間,并且需要自動化以保證其正常運(yùn)行時間。
網(wǎng)站欄目:管理數(shù)百個Kubernetes集群需要什么?
本文路徑:http://m.5511xx.com/article/dhdesch.html


咨詢
建站咨詢
