Kubernetes應用場景
Kubernetes,簡稱 K8s,是用 8 代替中間 8 個字符 “ubernete” 而成的縮寫,是一個開源的,用於管理雲平台中多個主機上的容器化的應用,Kubernetes 的目標是讓部署容器化的應用簡單並且高效(powerful),Kubernetes 提供了應用部署,規划,更新,維護的一種機制。Kubernetes 是一個分布式系統:有一台控制工作機器的主機器,工作被安排在不同的工作機器上。然后,每台機器在容器中運行工作。
Kubernetes是否適合項目?
項目應該具有多個服務或實例
從單體架構應用,部署應用只有一個或幾個,部署與伸縮的確不算是麻煩,此時Kubernetes的確沒有必要了。當擁有龐大的微服務架構時,或者每個租戶都有專用實例,同時又有很多租戶時,Kubernetes才有意義。
另外,服務應該是無狀態的,並且狀態應該存儲在群集之外的數據庫中。Kubernetes的另一個賣點是對網絡的精細漸變控制。而且,也許使用Kubernetes的最普遍的論點是它提供了容易的可伸縮性。
如果不需要可擴展性,那么Kubernetes不適用!
如果服務嚴重依賴磁盤,那么是否要遷移到Kubernetes都應該三思。基本上,一個磁盤只能連接到一個節點,因此所有服務都需要駐留在該節點上。因此,將失去節點自動縮放功能,這是Kubernetes的最大賣點之一。出於類似的原因,如果不在公共雲中托管基礎架構,則可能不應該使用K8S。在本地運行應用程序時,您需要事先購買硬件,而不能僅僅憑空想像一下機器。因此,基本上,您也將失去節點自動擴展功能,除非您願意使用混合雲並通過分解公共雲中的某些計算機來消除一些多余的負載。
如果有一個為所有客戶提供服務的整體應用程序,並且需要在各處進行擴展,那么雲服務提供商可以通過自動擴展組為您處理該應用程序。確實沒有必要為此引入Kubernetes。
微服務
基於微服務的常規體系結構,該體系結構包含許多通過HTTP和消息傳遞隊列進行通信的服務。每個服務都有其自己的數據庫,並且大多數服務都在Minio中存儲了一些文件。Minio是一個實現S3 API的對象存儲系統。
當系統允許運行多服務時,很容易就會編寫許多服務。其實,這並不是個好主意。
首先,分布式應用程序很難編寫,服務越多,問題就會越多。
其次,分布式應用程序很難調試,可能需要新的工具和日志記錄來調試。
微服務其實是一種組織層面的擴展技術,當 500 名開發人員在共同開發一個網站時,不同的開發團隊需要獨立工作,這時支付大規模分布式系統的成本是有意義的,如果是一個 5 人團隊,微服務是沒有意義的。
除非你的應用程序真的復雜到必須使用 Kubernetes,否則使用其它工具也可以很好的完成工作,例如單機 Docker Compose、類似 Heroku 的系統、用於計算管道的 Snakemake 等等。
今天先到這兒,希望對雲原生,技術領導力, 企業管理,系統架構設計與評估,團隊管理, 項目管理, 產品管管,團隊建設 有參考作用 , 您可能感興趣的文章:
領導人怎樣帶領好團隊
構建創業公司突擊小團隊
國際化環境下系統架構演化
微服務架構設計
視頻直播平台的系統架構演化
微服務與Docker介紹
Docker與CI持續集成/CD
互聯網電商購物車架構演變案例
互聯網業務場景下消息隊列架構
互聯網高效研發團隊管理演進之一
消息系統架構設計演進
互聯網電商搜索架構演化之一
企業信息化與軟件工程的迷思
企業項目化管理介紹
軟件項目成功之要素
人際溝通風格介紹一
精益IT組織與分享式領導
學習型組織與企業
企業創新文化與等級觀念
組織目標與個人目標
初創公司人才招聘與管理
人才公司環境與企業文化
企業文化、團隊文化與知識共享
高效能的團隊建設
項目管理溝通計划
構建高效的研發與自動化運維
某大型電商雲平台實踐
互聯網數據庫架構設計思路
IT基礎架構規划方案一(網絡系統規划)
餐飲行業解決方案之客戶分析流程
餐飲行業解決方案之采購戰略制定與實施流程
餐飲行業解決方案之業務設計流程
供應鏈需求調研CheckList
企業應用之性能實時度量系統演變
如有想了解更多軟件設計與架構, 系統IT,企業信息化, 團隊管理 資訊,請關注我的微信訂閱號:
作者:Petter Liu
出處:http://www.cnblogs.com/wintersun/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。 該文章也同時發布在我的獨立博客中-Petter Liu Blog。





![MegadotnetMicroMsg_thumb1_thumb1_thu[2] MegadotnetMicroMsg_thumb1_thumb1_thu[2]](/image/aHR0cDovL2ltYWdlcy5jbml0YmxvZy5jb20vYmxvZy8xNTE3Mi8yMDE1MDMvMjExMDU0MDYyNTA2MTU4LmpwZw==.png)