Istio - 讀<<云原生網(wǎng)絡Istio>> 筆記(一)

利用幾天時間蚯斯,讀了下<<云原生網(wǎng)絡Istio>云原生網(wǎng)絡Istio>箫攀。
發(fā)現(xiàn)它的強大之處抑月,并且讓我們能夠更好的玩轉(zhuǎn)微服務子漩,所以做個筆記來梳理所看的就很有必要了豫喧。

Istio是什么?

Istio是一個用于服務治理的開放平臺幢泼。

服務治理的三種形態(tài)

  1. 應用程序中包含治理邏輯

     在微服務化的過程中嘿棘,將服務拆分后會發(fā)現(xiàn)一堆麻煩事,連基本的業(yè)務連通都成為問題旭绒。  
     所以在處理一些治理邏輯鸟妙,例如如何找到對端的服務實例,怎么選擇一個對端實例請求時挥吵,  
     都需要自己用代碼來實現(xiàn)重父。所以微服務越多,重復的代碼越多忽匈,維護艱難房午,高度耦合。  
     這樣不管是對治理邏輯升級還是對業(yè)務的升級丹允,都要改同一段代碼郭厌。如下圖所示:  
    
image.png
  1. 治理邏輯獨立的代碼

     在解決第一種形態(tài)的問題時袋倔,會很容易想到把治理的公共邏輯抽象成一個公用庫,  
     讓所有的微服務都適用這個公用庫折柠。也就是SDK模式(如下圖)宾娜,非常典型的框架就是spring cloud。  
     SDK模式雖然在代碼上解耦了業(yè)務和治理邏輯扇售,但業(yè)務代碼和SDK還是要一起編譯前塔,還在同一個進程內(nèi)。  
     所以會有幾個問題:業(yè)務代碼需要和SDK屬于同一種語言承冰。在治理邏輯升級時华弓,還需要用戶的整個服務升級。
    
image.png
  1. 治理邏輯獨立的進程

     SDK模式仍舊侵入了用戶的代碼困乒,那就再解耦一層寂屏,把治理邏輯徹底從用戶的業(yè)務代碼中剝離出來,  
     就是如下圖所示的Sidecar模式娜搂。  
     顯然迁霎,在這種形態(tài)下面,用戶的業(yè)務代碼和治理邏輯都以獨立的進程存在涌攻,  
     這樣可以做到與開發(fā)語言無關欧引,升級也相互獨立。
    
image.png

Service Mesh(服務網(wǎng)格)

實際上服務治理的第三種形態(tài)就可以認為是當前最流行概念Service Mesh的雛形恳谎。它有幾個特點:

  • 治理能力獨立(sidecar)
  • 應用程序無感知
  • 服務網(wǎng)格是一種處理服務通信的基礎設施層
image.png

Istio問世

image.png

上圖很好的歸納了Istio的一些功能點:
image.png

image.png

與Kubernetes完美結(jié)合

從場景上看Kubernetes已經(jīng)提供了非常強大的應用負載的部署芝此,升級,擴容等運行管理能力因痛。K8s中的Service機制也已經(jīng)可以做服務注冊婚苹,服務發(fā)現(xiàn)和負載均衡,支持通過服務名訪問到服務實例鸵膏。
但是K8s對服務間訪問的管理如服務的熔斷膊升,限流,動態(tài)路由谭企,調(diào)用鏈追蹤都不在它的能力范圍內(nèi)廓译,所以Istio就成了K8s的最完美幫手。

image.png

Istio與Kubernetes架構關系

image.png
  1. 數(shù)據(jù)面
    數(shù)據(jù)面Sidecar運行在Kubernetes的Pod里债查,作為一個Proxy和業(yè)務容器部署在一起非区。在服務網(wǎng)格的定義中要求應用程序在運行的時候感知不到Sidecar的存在钧栖。而基于Kubernetes的一個Pod多個容器的優(yōu)秀設計使得部署運維對用戶透明惜索,用戶甚至感知不到部署Sidecar的過程。用戶還是用原有的方式創(chuàng)建負載甘有,通過Istio的自動注入服務,可以自動給指定的負載注入Proxy管怠。如果在另一種環(huán)境下部署和使用Proxy淆衷,則不會有這樣的便利。

  2. 統(tǒng)一服務發(fā)現(xiàn)
    Istio的服務發(fā)現(xiàn)機制非常完美地基于Kubernetes的域名訪問機制構建而成渤弛,省去了再搭一個類似Eureka的注冊中心的麻煩祝拯,更避免了在Kubernetes上運行時服務發(fā)現(xiàn)數(shù)據(jù)不一致的問題。
    盡管Istio強調(diào)自己的可擴展性的重要性在于適配各種不同的平臺暮芭,也可以對接其他服務發(fā)現(xiàn)機制鹿驼,但在實際場景下欲低,通過深入分析Istio幾個版本的代碼和設計辕宏,便可以發(fā)現(xiàn)其重要的能力都是基于Kubernetes進行構建的。

  3. 基于Kubernetes CRD描述規(guī)則
    Istio的所有路由規(guī)則和控制策略都是通過Kubernetes CRD實現(xiàn)的砾莱,因此各種規(guī)則策略對應的數(shù)據(jù)也被存儲在Kube-apiserver中瑞筐,不需要另外一個單獨的APIServer和后端的配置管理。所以腊瑟,可以說Istio的APIServer就是Kubernetes的APIServer聚假,數(shù)據(jù)也自然地被存在了對應Kubernetes的etcd中。
    Istio非常巧妙地應用了Kubernetes這個好基座闰非,基于Kubernetes的已有能力來構建自身功能膘格。Kubernetes里已經(jīng)有的,絕不再自己搞一套财松,避免了數(shù)據(jù)不一致和用戶使用體驗的問題瘪贱。

好啦,后面會整理Istio中的一些基本概念和Demo辆毡。

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末菜秦,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子舶掖,更是在濱河造成了極大的恐慌球昨,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,590評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件眨攘,死亡現(xiàn)場離奇詭異主慰,居然都是意外死亡,警方通過查閱死者的電腦和手機鲫售,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評論 3 399
  • 文/潘曉璐 我一進店門共螺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人龟虎,你說我怎么就攤上這事璃谨。” “怎么了?”我有些...
    開封第一講書人閱讀 169,301評論 0 362
  • 文/不壞的土叔 我叫張陵佳吞,是天一觀的道長拱雏。 經(jīng)常有香客問我,道長底扳,這世上最難降的妖魔是什么铸抑? 我笑而不...
    開封第一講書人閱讀 60,078評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮衷模,結(jié)果婚禮上鹊汛,老公的妹妹穿的比我還像新娘。我一直安慰自己阱冶,他們只是感情好刁憋,可當我...
    茶點故事閱讀 69,082評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著木蹬,像睡著了一般至耻。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上镊叁,一...
    開封第一講書人閱讀 52,682評論 1 312
  • 那天尘颓,我揣著相機與錄音,去河邊找鬼晦譬。 笑死疤苹,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的敛腌。 我是一名探鬼主播卧土,決...
    沈念sama閱讀 41,155評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼迎瞧!你這毒婦竟也來了夸溶?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,098評論 0 277
  • 序言:老撾萬榮一對情侶失蹤凶硅,失蹤者是張志新(化名)和其女友劉穎缝裁,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體足绅,經(jīng)...
    沈念sama閱讀 46,638評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡捷绑,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,701評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了氢妈。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片粹污。...
    茶點故事閱讀 40,852評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖首量,靈堂內(nèi)的尸體忽然破棺而出壮吩,到底是詐尸還是另有隱情进苍,我是刑警寧澤,帶...
    沈念sama閱讀 36,520評論 5 351
  • 正文 年R本政府宣布鸭叙,位于F島的核電站觉啊,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏沈贝。R本人自食惡果不足惜杠人,卻給世界環(huán)境...
    茶點故事閱讀 42,181評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望宋下。 院中可真熱鬧嗡善,春花似錦、人聲如沸学歧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽撩满。三九已至蜒程,卻和暖如春绅你,著一層夾襖步出監(jiān)牢的瞬間伺帘,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評論 1 274
  • 我被黑心中介騙來泰國打工忌锯, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留伪嫁,地道東北人。 一個月前我還...
    沈念sama閱讀 49,279評論 3 379
  • 正文 我出身青樓偶垮,卻偏偏與公主長得像张咳,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子似舵,可洞房花燭夜當晚...
    茶點故事閱讀 45,851評論 2 361

推薦閱讀更多精彩內(nèi)容