Kubenetes(k8s)簡要介紹

 

雲計算技術發展包括兩大方向:虛擬化及容器化。虛擬化技術是傳統的雲計算技術,容器化是新一代的雲計算技術。

之前講過的Docker便屬於容器化範疇。本號已有文章介紹過Docker的安裝流程(《centos7安裝docker》),裏面也簡單介紹了Docker,也有另一篇文章(《通過Docker安裝GitLab(基於Centos7虛擬機)》)介紹如何使用Docker安裝我們所需要的系統。

如果想要將Docker應用於具體的業務實現,是存在困難的——編排、管理和調度等各個方面都不容易。於是,人們迫切需要一套管理系統,對Docker及容器進行更高級更靈活的管理,此時Kubenetes,即k8s出現了。

k8s的目標是讓部署容器化的應用簡單並且高效,k8s提供了應用部署、規劃、更新、維護的一種機制。白話可以理解爲k8s是個管家,負責每個小屋子的監控、流通和控制。


以下對其歷史、優點和架構進行介紹:


1. 歷史
Kubernetes單詞起源於希臘語, 是「舵手」或者「領航員」的意思,是“管理者”和“控制論”的根源。k8s是把用8代替8個字符“ubernete”而成的縮寫。

其歷史來源頗爲有趣:

K8s是谷歌Borg的一個開源版本。Borg是谷歌的一個久負盛名的內部使用的大規模集羣管理系統,它基於容器技術,目的是實現資源管理的自動化,以及跨多個數據中心的資源利用率的最大化。十幾年以來,谷歌一直通過Borg系統管理着數量龐大的應用程序集羣。由於谷歌員工都簽署了保密協議,即便離職也不能泄露Borg的內部設計,所以外界一直無法瞭解關於它的更多信息。直到2015年4月,傳聞許久的Borg論文伴隨K8s的高調宣傳被谷歌首次公開,大家才得以瞭解它的更多內幕。正是由於站在Borg這個前輩的肩膀上,汲取了Borg過去十年間的經驗與教訓,所以Kubernetes一經開源就一鳴驚人,並迅速稱霸容器領域。


2. 優點
使用Kubernetes會收穫哪些好處呢?

  • 首先,可以“輕裝上陣”地開發複雜系統。因爲Kubernetes已經幫我們做了很多運維調度工作。
  • 其次,可以全面擁抱微服務架構。將微服務架構的基礎設施直接打包到Kubernetes解決方案中,讓我們可以直接應用微服務架構解決複雜業務系統的架構問題。
  • 再次,可以隨時隨地將系統整體“搬遷”到公有云上。
  • 然後,Kubernetes內在的服務彈性擴容機制可以讓我們輕鬆應對突發流量。中國鐵路總公司的12306購票系統,在客流高峯期(如節假日)就租用了阿里雲進行分流。
  • 最後,Kubernetes系統架構超強的橫向擴容能力可以讓我們的競爭力大大提升。


3.架構
Kubernetes集羣由以下組件組成:

  • Kubernetes master:主節點,負責容器部署的調度等
  • Kubernetes nodes:工作節點,由Kubernetes master控制的,使用docker支行應用
  • etcd:作爲主要數據存儲
  • Kubernetes network:完成多個節點多個容器間的通信


它們之間的關係如下圖所示:


好了,對k8s的簡要介紹就到此了,下一篇文章介紹它的安裝流程,敬請期待!


本文轉自微信公衆號:superdiao的果殼

喜歡的朋友可以去關注(關注後有福利哦~),記得先給本文點贊或者點喜歡吶!

微信公衆號:superdiao的果殼

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章