從Kubernetes容器編排技術火熱想到的
2021-11-09閱讀 617

隨著敏捷開發(fā)(Agile Development)和開發(fā)運維一體化(DevOps)等良好實踐逐漸在軟件開發(fā)領域成為主流,從事軟件開發(fā)的行業(yè)或企業(yè)為了逐步適應每次敏捷迭代需交付最小可運行產品(MVP)的產品增量的內在訴求,他們必然要考慮如何把現有的巨石架構所需開發(fā)的新功能特性拆解成可以納入某次迭代交付的產品增量。從而敏捷開發(fā)方法的普及無形中加持了企業(yè)系統(tǒng)在架構解耦方面的內在訴求。

當產品增量在某次迭代被開發(fā)出來后,最好能夠實現如DevOps提倡的一次編譯,多次的在不同環(huán)境間無差別的部署,即所謂的Build One, Run Anywhere?;谠圃娜萜骰渴鸷突贙ubernetes的容器編排產品的應用正好完美的解決了DevOps的自動化部署的場景化訴求。

Kubernetes的原意是古希臘文字舵手的意思,目前它是最為流行的容器編排產品。該產品是由著名的互聯網公司Google于2015年向市場開源。Kubernetes也稱K8S,因為K和S之間有八個字母而得名。以下為Kubernetes(K8S)的整體架構概覽圖:

我們可以透過容器部署和容器編排工具火熱的現象看到其價值的核心本質所在,現通過如下幾點總結來整體闡述:

   1、故障隔離域的訴求:目前IT運維的故障域正在從傳統(tǒng)的服務器到虛擬機,再到容器。也就是實現充分解耦的應用模塊可以做到基于容器的自動化部署,由于容器的部署會自帶應用所運行的用戶空間的環(huán)境,所以容器可以實現基于容器鏡像實例在不同環(huán)境間的無差別部署。并且,容器之間彼此的運行環(huán)境是邏輯隔離的,單個容器所導致的故障損壞不會影響別的容器的正常運行。從而運維可以很好的實現故障診斷和基于容器為單位的秒級恢復,提升了業(yè)務應用的可用性和業(yè)務數據的可靠性;

   2、替換代替安裝的訴求:為了盡快恢復業(yè)務,可以采取基于容器為單位的應用模塊的秒級?自動替換,從而實現了業(yè)務應用的高度容錯機制。相較于基于物理服務器的安裝配置和虛擬機的鏡像或快照回滾,容器的自動重啟和替換是一種性價比最優(yōu)的方案;

  3、簡化IT運維的訴求:目前云用戶更多關注其應用本身的開發(fā)邏輯的實現而不是IT基礎設施的搭建和運維,這更加符合其業(yè)務價值的切身利益。把承載業(yè)務應用的容器的全生命周期的管理交給專業(yè)的容器編排產品Kubernetes則顯得那樣的恰如其分。目前很多云廠商如阿里或華為都適時推出基于Kubernetes版的容器服務,進而提供高性能和可伸縮的容器應用管理服務,支持企業(yè)級Kubernetes容器化應用的全生命周期管理。比如某云廠商的云容器實例(Cloud Container Instance)提供基于Kubernetes的無服務器(Serverless)的容器服務,兼容K8S和容器(Docker)原生接口,即用戶無需關注集群和服務器,而只要通過簡單配置即可快速創(chuàng)建容器負載。

總之,Kubernetes容器編排技術的火熱是有其業(yè)務價值快速交付和IT運維變革的內在訴求的。業(yè)務上云應用云原生的容器化部署服務也會逐漸成為一個必選的最佳實踐。

頭像
劉通
464
文章總數
1223520
總閱讀數