[ 收藏 ] [ 繁体中文 ]  
臺灣貨到付款、ATM、超商、信用卡PAYPAL付款,4-7個工作日送達,999元臺幣免運費   在線留言 商品價格為新臺幣 
首頁 電影 連續劇 音樂 圖書 女裝 男裝 童裝 內衣 百貨家居 包包 女鞋 男鞋 童鞋 計算機周邊

商品搜索

 类 别:
 关键字:
    

商品分类

  •  管理

     一般管理学
     市场/营销
     会计
     金融/投资
     经管音像
     电子商务
     创业企业与企业家
     生产与运作管理
     商务沟通
     战略管理
     商业史传
     MBA
     管理信息系统
     工具书
     外文原版/影印版
     管理类职称考试
     WTO
     英文原版书-管理
  •  投资理财

     证券/股票
     投资指南
     理财技巧
     女性理财
     期货
     基金
     黄金投资
     外汇
     彩票
     保险
     购房置业
     纳税
     英文原版书-投资理财
  •  经济

     经济学理论
     经济通俗读物
     中国经济
     国际经济
     各部门经济
     经济史
     财政税收
     区域经济
     统计 审计
     贸易政策
     保险
     经济数学
     各流派经济学说
     经济法
     工具书
     通货膨胀
     财税外贸保险类考试
     英文原版书-经济
  •  社会科学

     语言文字
     社会学
     文化人类学/人口学
     新闻传播出版
     社会科学总论
     图书馆学/档案学
     经典名家作品集
     教育
     英文原版书-社会科学
  •  哲学

     哲学知识读物
     中国古代哲学
     世界哲学
     哲学与人生
     周易
     哲学理论
     伦理学
     哲学史
     美学
     中国近现代哲学
     逻辑学
     儒家
     道家
     思维科学
     马克思主义哲学
     经典作品及研究
     科学哲学
     教育哲学
     语言哲学
     比较哲学
  •  宗教

  •  心理学

  •  古籍

  •  文化

  •  历史

     历史普及读物
     中国史
     世界史
     文物考古
     史家名著
     历史地理
     史料典籍
     历史随笔
     逸闻野史
     地方史志
     史学理论
     民族史
     专业史
     英文原版书-历史
     口述史
  •  传记

  •  文学

  •  艺术

     摄影
     绘画
     小人书/连环画
     书法/篆刻
     艺术设计
     影视/媒体艺术
     音乐
     艺术理论
     收藏/鉴赏
     建筑艺术
     工艺美术
     世界各国艺术概况
     民间艺术
     雕塑
     戏剧艺术/舞台艺术
     艺术舞蹈
     艺术类考试
     人体艺术
     英文原版书-艺术
  •  青春文学

  •  文学

     中国现当代随笔
     文集
     中国古诗词
     外国随笔
     文学理论
     纪实文学
     文学评论与鉴赏
     中国现当代诗歌
     外国诗歌
     名家作品
     民间文学
     戏剧
     中国古代随笔
     文学类考试
     英文原版书-文学
  •  法律

     小说
     世界名著
     作品集
     中国古典小说
     四大名著
     中国当代小说
     外国小说
     科幻小说
     侦探/悬疑/推理
     情感
     魔幻小说
     社会
     武侠
     惊悚/恐怖
     历史
     影视小说
     官场小说
     职场小说
     中国近现代小说
     财经
     军事
  •  童书

  •  成功/励志

  •  政治

  •  军事

  •  科普读物

  •  计算机/网络

     程序设计
     移动开发
     人工智能
     办公软件
     数据库
     操作系统/系统开发
     网络与数据通信
     CAD CAM CAE
     计算机理论
     行业软件及应用
     项目管理 IT人文
     计算机考试认证
     图形处理 图形图像多媒体
     信息安全
     硬件
     项目管理IT人文
     网络与数据通信
     软件工程
     家庭与办公室用书
  •  建筑

  •  医学

     中医
     内科学
     其他临床医学
     外科学
     药学
     医技学
     妇产科学
     临床医学理论
     护理学
     基础医学
     预防医学/卫生学
     儿科学
     医学/药学考试
     医院管理
     其他医学读物
     医学工具书
  •  自然科学

     数学
     生物科学
     物理学
     天文学
     地球科学
     力学
     科技史
     化学
     总论
     自然科学类考试
     英文原版书-自然科学
  •  工业技术

     环境科学
     电子通信
     机械/仪表工业
     汽车与交通运输
     电工技术
     轻工业/手工业
     化学工业
     能源与动力工程
     航空/航天
     水利工程
     金属学与金属工艺
     一般工业技术
     原子能技术
     安全科学
     冶金工业
     矿业工程
     工具书/标准
     石油/天然气工业
     原版书
     武器工业
     英文原版书-工业技
  •  农业/林业

  •  外语

  •  考试

  •  教材

  •  工具书

  •  中小学用书

  •  中小学教科书

  •  动漫/幽默

  •  烹饪/美食

  •  时尚/美妆

  •  旅游/地图

  •  家庭/家居

  •  亲子/家教

  •  两性关系

  •  育儿/早教

     保健/养生
     体育/运动
     手工/DIY
     休闲/爱好
     英文原版书
     港台图书
     研究生
     工学
     公共课
     经济管理
     理学
     农学
     文法类
     医学
  • 雲原生服務網格Istio:原理、實踐、架構與源碼解析(博文視點出品
    該商品所屬分類:圖書 -> 電子工業出版社
    【市場價】
    1854-2688
    【優惠價】
    1159-1680
    【作者】 張超盟章鑫徐中虎徐飛 
    【所屬類別】 電子工業出版社 
    【出版社】電子工業出版社 
    【ISBN】9787121366536
    【折扣說明】一次購物滿999元台幣免運費+贈品
    一次購物滿2000元台幣95折+免運費+贈品
    一次購物滿3000元台幣92折+免運費+贈品
    一次購物滿4000元台幣88折+免運費+贈品
    【本期贈品】①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
    版本正版全新電子版PDF檔
    您已选择: 正版全新
    溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。
    *. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。
    *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。
    *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。
    內容介紹



    出版社:電子工業出版社
    ISBN:9787121366536
    版次:1

    商品編碼:12538407
    品牌:電子工業出版社
    包裝:平裝

    開本:16開
    出版時間:2019-07-01
    用紙:膠版紙

    頁數:628
    字數:810000

    作者:張超盟,章鑫,徐中虎,徐飛

        
        
    "

    產品特色


    編輯推薦

    適讀人群 :無論是對於剛入門Istio的讀者,還是對於已經在產品中使用Istio的讀者,本書都極具參考價值。

    號外號外,本書提供免費Istio在線培訓視頻及作者在線問題解答,關注“博文視點Broadview”微信公眾號即可獲取,更多驚喜等你解鎖!


    關於雲原生服務網格Istio內容超詳盡的書籍從此誕生!

    來自大廠的Istio一手材料,厚達600多頁,多角度全解Service Mesh熱點Istio。

    從原理、實踐、架構、源碼4個層面剖析Service Mesh熱點Istio,為各層面讀者量身打造!

    提供源碼下載、與作者互動,還可能有驚喜等著你。





    內容簡介

    《雲原生服務網格Istio:原理、實踐、架構與源碼解析》分為原理篇、實踐篇、架構篇和源碼篇,由淺入深地將Istio項目庖丁解牛並呈現給讀者。原理篇介紹了服務網格技術與Istio項目的技術背景、設計理念與功能原理,能夠幫助讀者了解服務網格這一雲原生領域的標志性技術,掌握Istio流量治理、策略與遙測和安全功能的使用方法。實踐篇從零開始搭建Istio運行環境並完成一個真實應用的開發、交付、上線監控與治理的完整過程,能夠幫助讀者熟悉Istio的功能並加深對Istio的理解。架構篇剖析了Istio項目的三大核心子項目Pilot、Mixer、Citadel的詳細架構,幫助讀者熟悉Envoy、Galley、Pilot-agent等相關項目,並挖掘Istio代碼背後的設計與實現思想。源碼篇對Istio各個項目的代碼結構、文件組織、核心流程、主要數據結構及各主要代碼片段等關鍵內容都進行了詳細介紹,讀者隻需具備一定的Go語言基礎,便可快速掌握Istio各部分的實現原理,並根據自己的興趣深入了解某一關鍵機制的完整實現。本書提供源碼下載,參見http://github.com/cloudnativebooks/cloud-native-istio。

    無論是對於剛入門Istio的讀者,還是對於已經在產品中使用Istio的讀者,本書都極具參考價值。

    作者簡介

    張超盟

    華為雲應用服務網格首席架構師,擁有10年以上軟件研發經驗,先後負責華為雲PaaS容器應用運維、微服務平臺、雲服務目錄、服務網格等產品架構設計與開發工作,在容器服務、微服務架構、大數據、應用性能管理、數據庫中間件及DevOps工具等多個領域有深入的研究與實踐。開源愛好者,Istio社區成員。曾就職於Trend Micro和中鐵一局。

    章鑫

    華為雲應用服務網格首席繫統工程師, 擁有10年以上IT從業經驗,先後參與華為雲PaaS運維平臺、容器自動化運維工 具、服務網格等產品設計與開發,主導了多個服務網格項目的落地與實施工作。Istio社區成員,對於Pilot、Mixer等多個組 件 的 調 優 有 豐 富 的 經 驗。曾 在VIA-Telecom和Nokia擔任研發專家。

    徐中虎

    華為雲原生開源團隊核心成員,Istio社區Approver,Kubernetes項目核心貢獻者,現 聚 焦 於Cloud Native、Docker、Kubernetes、Service Mesh等領域,對分布式繫統性能優化、高可靠、可擴展等有深入的研究。曾就職於網易、Nokia。

    徐飛

    華為雲原生開源團隊核心成員,Istio社區Approver,Kubernetes、Federation、Kubeflow、Virtual-Kubelet社區項目成員及核心貢獻者,浙江大學碩士。從2015年開始參與容器平臺的設計與開發,並參與上遊社區的貢獻。

    華為雲原生團隊

    華為雲原生團隊創建於2013年,是國內較早參與雲原生這一技術領域的團隊之一。作為CNCF(雲原生計算基金會)的初創成員和白金會員,華為在容器、服務網格、微服務等雲原生技術領域都有著深厚的造詣,擁有10多名CNCF開源項目維護者,在Kubernetes、Istio等核心開源項目上的貢獻位居全球前列。華為雲也提供了基於CNCF開源項目所打造的商業化雲原生繫列產品,包括雲容器引擎、雲容器實例、應用服務網格、容器交付流水線等。

    華為雲原生團隊致力於雲原生技術在國內的普及與推廣,通過“容器魔方”官方微信公眾號,以及與CNCF聯合打造的Cloud Native Days China(CNDC)Meetup、Cloud Native Lives雲原生技術在線直播、線下CKA培訓等活動,推動了國內雲原生技術的學習與交流熱潮。此次打造的華為雲原生技術叢書,內容涵蓋以CNCF項目為主的多個雲原生技術熱點,可為廣大雲原生技術愛好者提供詳盡、專業、及時的原理講解與技術剖析。

    精彩書評

    以容器、微服務、DevOps等為代表的雲原生技術,具有靈活、敏捷和快速響應等特點,能夠幫助企業構建更加適用於雲的應用服務,也在引領雲計算發展的新風向。華為作為雲原生領域的優秀實踐代表,在中國信息通信研究院組織發布的《雲原生技術實踐白皮書》編寫和雲原生產業聯盟中都起著重要的作用。華為雲原生技術叢書,會對雲原生技術進行全面介紹,相信也會大大促進國內雲原生技術的普及和發展。

    ——中國信息通信研究院雲計算與大數據研究所所長 何寶宏

    Istio是雲原生領域非常流行的開源項目,近年來在CNCF所組織的各類會議上一直是很熱門的討論話題。華為一直是雲原生開源活動的積極參與者,在Kubernetes和Istio等項目中都有著突出的貢獻。這本由華為雲原生團隊傾力打造的《雲原生服務網格Istio:原理、實踐、架構與源碼解析》理論結合實踐,繫統介紹了雲原生、服務網格及微服務之間的關繫,深度剖析了Istio的原理與架構,並提供了詳細的實施指南,對於企業面向雲原生架構轉型及踐行服務網格落地都有很大的參考意義,值得一讀。

    ——CNCF中國區總監、Linux基金會亞太地區戰略規劃總監 Keith Chan

    近年來,新型開源雲計算技術和社區蓬勃發展、影響巨大,創造了包括容器、微服務、AI等技術在內的開源雲原生態繫統。各行各業的研究者們正在創造性地使用容器等雲原生技術推動基礎設施、微服務、邊緣計算、AI等領域的發展。本書立足雲原生技術前沿,繫統闡述了Istio項目的技術原理和架構,深入剖析了Istio源碼,且實踐性強,相信無論是初學者還是相關技術人員,都能從中受益。

    ——浙江大學計算機軟件研究所副所長、浙江大學互聯網金融研究院副院長 楊小虎

    雲計算已經從以“資源”為中心的1.0時代演進到以“應用”為中心的2.0時代。隨著企業應用的雲化及智能化,雲原生的基礎設施與應用平臺將成為雲原生企業與有互聯網業務訴求的中大型企業的必然選擇。華為雲原生技術團隊在以容器、微服務、服務網格等技術為代表的開源社區及產品領域耕耘多年,本書包含了其對Istio開源項目從架構到源碼的詳盡解讀,以及來自華為雲一線實踐的豐富經驗積累,值得廣大雲原生技術愛好者閱讀參考。

    ——華為雲CTO 張宇昕

    本書凝聚了華為雲Istio開源社區主要貢獻者及產品研發團隊骨干的優秀設計開發經驗及優秀應用實踐積累,從宏觀到微觀,從理論到實踐,對從Istio的原理、應用到技術架構再到最終的關鍵代碼內幕,逐層遞進、由淺入深地進行了解讀與剖析,為各行各業構建敏捷、柔性、可擴展的雲原生業務架構提供了不可多得的技術指導與參考,值得廣大雲計算從業人員及計劃引入容器技術、微服務治理框架實現雲原生軟件演進的軟件工程師與架構師認真研讀。

    ——華為雲首席架構師、華為Fellow 顧炯炯

    四年前,當我作為CNCF的初創成員董事與來自Google、IBM、紅帽等公司的其他董事討論雲原生的定義時,大家的觀點很快就統一在了“面向微服務”“用容器封裝”“進行動態編排”這幾個要素上。雲原生技術及其基礎軟件棧已從昔日的王謝堂前燕,轉變為飛入尋常“企業”家,並將隨著各行各業的業務雲化得到更廣泛的應用。服務網格與容器繫列的技術一樣,也是雲原生技術棧的重要組成部分,Istio作為服務網格技術的代表,必將在企業與行業中得到廣泛應用。很高興在這樣的背景下看到這本書,它由華為雲多位資深專家撰寫,深入淺出、案例詳盡,相信一定會對希望了解本領域技術與實操的開發人員、運維人員有所幫助。

    ——華為開源軟件與繫統首席架構師、Linux基金會&CNCF董事 侯培新

    目錄

    原 理 篇

    第1章 你好,Istio 2

    1.1 Istio是什麼 2

    1.2 通過示例看看Istio能做什麼 4

    1.3 Istio與服務治理 6

    1.3.1 關於微服務 6

    1.3.2 服務治理的三種形態 8

    1.3.3 Istio不隻解決了微服務問題 10

    1.4 Istio與服務網格 11

    1.4.1 時代選擇服務網格 11

    1.4.2 服務網格選擇Istio 14

    1.5 Istio與Kubernetes 15

    1.5.1 Istio,Kubernetes的好幫手 16

    1.5.2 Kubernetes,Istio的好基座 18

    1.6 本章總結 20

    第2章 Istio架構概述 21

    2.1 Istio的工作機制 21

    2.2 Istio的服務模型 23

    2.2.1 Istio的服務 24

    2.2.2 Istio的服務版本 26

    2.2.3 Istio的服務實例 28

    2.3 Istio的主要組件 30

    2.3.1 istio-pilot 30

    2.3.2 istio-telemetry 32

    2.3.3 istio-policy 33

    2.3.4 istio-citadel 34

    2.3.5 istio-galley 34

    2.3.6 istio-sidecar-injector 35

    2.3.7 istio-proxy 35

    2.3.8 istio-ingressgateway 36

    2.3.9 其他組件 37

    2.4 本章總結 37

    第3章 非侵入的流量治理 38

    3.1 Istio流量治理的原理 38

    3.1.1 負載均衡 39

    3.1.2 服務熔斷 41

    3.1.3 故障注入 48

    3.1.4 灰度發布 49

    3.1.5 服務訪問入口 54

    3.1.6 外部接入服務治理 56

    3.2 Istio路由規則配置:VirtualService 59

    3.2.1 路由規則配置示例 59

    3.2.2 路由規則定義 60

    3.2.3 HTTP路由(HTTPRoute) 63

    3.2.4 TLS路由(TLSRoute) 78

    3.2.5 TCP路由(TCPRoute) 81

    3.2.6 三種協議路由規則的對比 83

    3.2.7 VirtualService的典型應用 84

    3.3 Istio目標規則配置:DestinationRule 89

    3.3.1 DestinationRule配置示例 90

    3.3.2 DestinationRule規則定義 90

    3.3.3 DestinationRule的典型應用 103

    3.4 Istio服務網關配置:Gateway 107

    3.4.1 Gateway配置示例 108

    3.4.2 Gateway規則定義 109

    3.4.3 Gateway的典型應用 112

    3.5 Istio外部服務配置:ServiceEntry 120

    3.5.1 ServiceEntry配置示例 120

    3.5.2 ServiceEntry規則的定義和用法 121

    3.5.3 ServiceEntry的典型應用 123

    3.6 Istio代理規則配置:Sidecar 126

    3.6.1 Sidecar配置示例 126

    3.6.2 Sidecar規則定義 126

    3.7 本章總結 129

    第4章 可擴展的策略和遙測 131

    4.1 Istio策略和遙測的原理 131

    4.1.1 應用場景 131

    4.1.2 工作原理 136

    4.1.3 屬性 137

    4.1.4 Mixer的配置模型 140

    4.2 Istio遙測適配器配置 147

    4.2.1 Prometheus適配器 148

    4.2.2 Fluentd適配器 155

    4.2.3 StatsD適配器 159

    4.2.4 Stdio適配器 161

    4.2.5 Zipkin適配器 163

    4.2.6 廠商適配器 168

    4.3 Istio策略適配器配置 169

    4.3.1 List適配器 169

    4.3.2 Denier適配器 171

    4.3.3 Memory Quota適配器 172

    4.3.4 Redis Quota適配器 175

    4.4 Kubernetes Env適配器配置 178

    4.5 本章總結 181

    第5章 可插撥的服務安全 182

    5.1 Istio服務安全的原理 182

    5.1.1 認證 185

    5.1.2 授權 189

    5.1.3 密鑰證書管理 192

    5.2 Istio服務認證配置 193

    5.2.1 認證策略配置示例 193

    5.2.2 認證策略的定義 194

    5.2.3 TLS訪問配置 196

    5.2.4 認證策略的典型應用 200

    5.3 Istio服務授權配置 202

    5.3.1 授權啟用配置 202

    5.3.2 授權策略配置 203

    5.3.3 授權策略的典型應用 207

    5.4 本章總結 210

    第6章 透明的Sidecar機制 211

    6.1 Sidecar注入 211

    6.1.1 Sidecar Injector自動注入的原理 214

    6.1.2 Sidecar注入的實現 216

    6.2 Sidecar流量攔截 219

    6.2.1 iptables的基本原理 220

    6.2.2 iptables的規則設置 223

    6.2.3 流量攔截原理 224

    6.3 本章總結 228

    第7章 多集群服務治理 230

    7.1 Istio多集群服務治理 230

    7.1.1 Istio多集群的相關概念 230

    7.1.2 Istio多集群服務治理現狀 231

    7.2 多集群模式1:多控制面 232

    7.2.1 服務DNS解析的原理 233

    7.2.2 Gateway連接的原理 237

    7.3 多集群模式2:VPN直連單控制面 238

    7.4 多集群模式3:集群感知服務路由單控制面 240

    7.5 本章總結 246

    實 踐 篇

    第8章 環境準備 248

    8.1 在本地搭建Istio環境 248

    8.1.1 安裝Kubernetes集群 248

    8.1.2 安裝Helm 249

    8.1.3 安裝Istio 250

    8.2 在公有雲上使用Istio 253

    8.3 嘗鮮Istio命令行 255

    8.4 應用示例 257

    8.4.1 Weather Forecast簡介 257

    8.4.2 Weather Forecast部署 258

    8.5 本章總結 259

    第9章 流量監控 260

    9.1 預先準備:安裝插件 260

    9.2 調用鏈跟蹤 261

    9.3 指標監控 265

    9.3.1 Prometheus 265

    9.3.2 Grafana 268

    9.4 服務網格監控 273

    9.5 本章總結 277

    第10章 灰度發布 278

    10.1 預先準備:將所有流量都路由到各個服務的v1版本 278

    10.2 基於流量比例的路由 279

    10.3 基於請求內容的路由 283

    10.4 組合條件路由 284

    10.5 多服務灰度發布 286

    10.6 TCP服務灰度發布 288

    10.7 自動化灰度發布 290

    10.7.1 正常發布 291

    10.7.2 異常發布 294

    第11章 流量治理 296

    11.1 流量負載均衡 296

    11.1.1 ROUND_ROBIN模式 296

    11.1.2 RANDOM模式 298

    11.2 會話保持 299

    11.2.1 實戰目標 300

    11.2.2 實戰演練 300

    11.3 故障注入 301

    11.3.1 延遲注入 301

    11.3.2 中斷注入 303

    11.4 超時 304

    11.5 重試 306

    11.6 HTTP重定向 308

    11.7 HTTP重寫 309

    11.8 熔斷 310

    11.9 限流 313

    11.9.1 普通方式 314

    11.9.2 條件方式 315

    11.10 服務隔離 317

    11.10.1 實戰目標 317

    11.10.2 實戰演練 317

    11.11 影子測試 319

    11.12 本章總結 322

    第12章 服務保護 323

    12.1 網關加密 323

    12.1.1 單向TLS網關 323

    12.1.2 雙向TLS網關 326

    12.1.3 用SDS加密網關 328

    12.2 訪問控制 331

    12.2.1 黑名單 331

    12.2.2 白名單 332

    12.3 認證 334

    12.3.1 實戰目標 334

    12.3.2 實戰演練 334

    12.4 授權 336

    12.4.1 命名空間級別的訪問控制 336

    12.4.2 服務級別的訪問控制 339

    12.5 本章總結 341

    第13章 多集群管理 342

    13.1 實戰目標 342

    13.2 實戰演練 342

    13.3 本章總結 350

    架 構 篇

    第14章 司令官Pilot 352

    14.1 Pilot的架構 352

    14.1.1 Istio的服務模型 354

    14.1.2 xDS協議 356

    14.2 Pilot的工作流程 360

    14.2.1 Pilot的啟動與初始化 361

    14.2.2 服務發現 363

    14.2.3 配置規則發現 368

    14.2.4 Envoy的配置分發 376

    14.3 Pilot的插件 383

    14.3.1 安全插件 385

    14.3.2 健康檢查插件 390

    14.3.3 Mixer插件 391

    14.4 Pilot的設計亮點 392

    14.4.1 三級緩存優化 392

    14.4.2 去抖動分發 393

    14.4.3 增量EDS 394

    14.4.4 資源隔離 395

    14.5 本章總結 396

    第15章 守護神Mixer 397

    15.1 Mixer的整體架構 397

    15.2 Mixer的服務模型 398

    15.2.1 Template 399

    15.2.2 Adapter 401

    15.3 Mixer的工作流程 403

    15.3.1 啟動初始化 403

    15.3.2 用戶配置信息規則處理 409

    15.3.3 訪問策略的執行 416

    15.3.4 無侵入遙測 421

    15.4 Mixer的設計亮點 423

    15.5 如何開發Mixer Adapter 424

    15.6 本章總結 438

    第16章 安全碉堡Citadel 439

    16.1 Citadel的架構 439

    16.2 Citadel的工作流程 441

    16.3 本章總結 449

    第17章 高性能代理Envoy 450

    17.1 Envoy的架構 450

    17.2 Envoy的特性 451

    17.3 Envoy的模塊結構 452

    17.4 Envoy的線程模型 453

    17.5 Envoy的內存管理 455

    17.6 Envoy的流量控制 456

    17.7 Envoy與Istio的配合 457

    17.3 本章總結 459

    第18章 代理守護進程Pilot-agent 460

    18.1 為什麼需要Pilot-agent 461

    18.2 Pilot-agent的工作流程 461

    18.3 本章總結 468

    第19章 配置中心Galley 469

    19.1 Galley的架構 469

    19.2 Galley的工作流程 471

    19.3 本章總結 482

    源 碼 篇

    第20章 Pilot源碼解析 484

    20.1 進程啟動流程 484

    20.2 關鍵代碼分析 486

    20.3 本章總結 514

    第21章 Mixer源碼解析 515

    21.1 進程啟動流程 515

    21.2 關鍵代碼分析 5201

    21.3 本章總結 543

    第22章 Citadel源碼解析 544

    22.1 進程啟動流程 544

    22.2 關鍵代碼分析 548

    22.3 本章總結 558

    第23章 Envoy源碼解析 559

    23.1 Envoy的初始化 559

    23.2 Envoy的運行和建立新連接 564

    23.3 Envoy對數據的讀取、接收及處理 567

    23.4 Envoy發送數據到服務端 570

    23.5 本章總結 573

    第24章 Galley源碼解析 574

    24.1 進程啟動流程 574

    24.2 關鍵代碼分析 580

    24.3 本章總結 589

    結語 590

    附錄A 源碼倉庫介紹 592

    附錄B 實踐經驗和總結 598


    **篇幅限制,完整目錄請見本書**

    查看全部↓

    前言/序言

    這是一本介紹“雲原生”與“服務網格”技術的書籍。你或許對這兩個詞語感到陌生,或者耳熟卻不明其意,其實,這兩個術語分別與“雲計算”與“微服務”的概念有著非常緊密的聯繫。
    依據CNCF基金會(Cloud-Native Computing Foundation)的定義,雲原生是對在現代的動態環境下(比如雲計算的三大場景:公有雲、私有雲及混合雲)可用來構建並運行可擴展應用的技術的總稱;服務網格則是雲原生技術的典型代表之一,其他技術還包括容器、微服務、不可變基礎設施、聲明式API等。
    從技術發展的角度來看,我們可以把雲原生理解為雲計算所關注的重心從“資源”逐漸轉向“應用”的必然結果。以“資源”為中心的上一代雲計算技術關注物理設備如何虛擬化、池化、多租化,典型代表是計算、網絡、存儲三大基礎設施的雲化,以及相關硬件、操作繫統、管控面等技術;而以“應用”為中心的雲原生技術則關注應用如何更好地適應雲環境,相對於傳統應用通過遷移改造“上雲”而言,雲原生希望通過一繫列的技術支撐,使用戶能夠在雲環境下快速開發和交付雲原生應用。
    作為雲原生技術棧的一部分,服務網格則指由雲原生應用的服務化組件構成的一種網格。換句話說,我們可以將服務網格理解為一種應用網絡,即為在應用內部或應用之間由服務訪問、調用、負載均衡等服務連接關繫構成的一種網絡。你可能會注意到,這裡並沒有使用“微服務”這個術語。微服務更多地從設計、開發的視角來描述應用的一種架構或開發模式,而服務網格事實上更為關注運行時視角,因此,采用“服務”這個用於描述應用內外部調用關繫的術語更為合適。服務網格與微服務在雲原生技術棧中是相輔相成的兩部分,前者更關注應用的交付與運行時,後者更關注應用的設計與開發。更關注應用的交付與運行時,後者更關注應用的設計與開發。
    本書的主角Istio,作為服務網格技術的事實標準,是一個比較年輕的開源項目。它在2017年5月由Google與IBM聯合發布之後,經過一年多的快速發展,於2018年7月發布了1.0版本,並於2019年3月發布1.1這個大更新版本,該版本算是第一個生產可用的GA版本(雖然官方宣稱1.0版本“Production-Ready”,但從實踐評估來看,1.1作為GA版本更合適一些)。
    Istio體現了雲原生領域核心項目Kubernetes的創建者Google對服務網格技術的思考,還包含了雲計算先行者IBM對服務網格最早的實踐經驗,因此一經發布就得到雲原生領域的廣泛響應,它是繼Kubernetes之後雲原生領域非常火爆的項目之一。截至2019年年初,國內外已經有超過百家公司的公開實踐案例。
    本書作者所在的華為公司作為雲原生領域的早期實踐者與社區領導者之一,在Istio項目發展初期就參與了Istio社區,積極實踐Istio並推動Istio項目的發展。目前,華為公司內部的多個產品線已經使用了Istio,部分實踐已經進入生產環境,Istio的商業化產品也已經包含在華為公有雲、私有雲、混合雲解決方案中,並面向華為雲客戶群進行推廣。華為作為Istio社區的當前領導者之一,會繼續致力於Istio項目及服務網格技術的推廣與演進。
    本書寫作目的
    本書作為華為雲原生技術叢書的一員,面向雲計算領域的從業者及感興趣的技術人員,普及與推廣Istio服務網格技術。本書作者來自華為雲應用服務網格產品研發團隊及華為雲原生開源社區團隊。本書結合作者在華為雲及Istio社區的設計與開發實踐,以及與服務網格強相關的Kubernetes容器、微服務和雲原生領域的豐富經驗,對服務網格技術、Istio開源項目的原理、實踐,架構和源碼進行了深入剖析,由淺入深地講解Istio的功能、用法、設計與實現,幫助讀者全面、立體地了解雲原生服務網格Istio的每個技術細節。對於剛入門的讀者,本書提供了從零開始的Istio上手實戰指導;對於已經在產品中使用Istio的讀者,本書也提供了豐富的案例與經驗總結。
    本書結構
    本書分為原理篇、實踐篇、架構篇和源碼篇,總計24章,由淺入深地將Istio項目庖丁解牛並呈現給讀者。
    對於有不同需求的讀者,我們建議這樣使用本書。
    ◎ 對雲原生技術感興趣的讀者,可閱讀並理解原理篇。本篇介紹了服務網格技術與Istio項目的技術背景、設計理念與功能原理,能夠幫助讀者了解服務網格這一雲原生領域的標志性技術,掌握Istio流量治理、策略與遙測和安全功能的使用方法。
    ◎ Istio一線實踐者或動手能力較強的技術人員,通過實踐篇可以從零開始搭建Istio運行環境並完成一個真實應用的開發、交付、上線監控與治理的完整過程,能夠熟悉Istio的功能並加深對Istio原理的理解。
    ◎ 關注Istio架構設計或者正在評估是否將Istio引入當前技術棧的技術人員,架構篇能夠幫你剖析Istio項目的三大核心子項目Pilot、Mixer、Citadel的詳細架構,熟悉Envoy、Galley、Pilot-agent等相關項目,並深入挖掘Istio代碼背後的設計與實現思想。
    ◎ 對Istio源碼感興趣且希望更深入地了解Istio實現細節的讀者,可以通過源碼篇進入Istio源碼世界。源碼篇對Istio各個項目的代碼結構、文件組織、核心流程、主要數據結構及各主要代碼片段等關鍵內容都進行了詳細介紹。讀者隻需具備一定的Go語言基礎,便可快速掌握Istio各部分的實現原理,並根據自己的興趣深入了解某一關鍵機制的完整實現,以期成為Istio高手,甚至作為貢獻者參與到Istio項目開發中來。
    本書篇章組織概述如下。
    ◎ 原理篇:介紹Istio概念、核心功能、原理和使用方式,為後續的實踐提供理論基礎。其中,第1~2章分別介紹Istio的背景知識、基本工作機制、主要組件及概念模型等;第2~7章分別介紹Istio的五大塊功能集,即非侵入的流量治理、可擴展的策略和遙測、可插撥的服務安全、透明的Sidecar機制及多集群服務治理。
    ◎ 實踐篇:通過實際操作介紹如何通過一個典型應用進行Istio實踐。其中,第8章講解環境準備,完成Kubernetes與Istio平臺的基礎設施準備工作;第9~13章分別介紹如何實際操作一個天氣預報應用在Istio平臺上實現流量監控、灰度發布、流量治理、服務安全、多集群管理等功能。
    ◎ 架構篇:從架構角度剖析Istio多個主要組件的設計原理、關鍵內部流程及數據結構等內容,為高級用戶提供架構與設計層面的參考。其中,第14~19章分別介紹了Pilot、Mixer、Citadel、Envoy、Pilot-agent與Galley等6個Istio核心組件。
    ◎ 源碼篇:本篇包括第20~24章,分別介紹Istio整體的代碼組織情況,以及Pilot、Mixer、Citadel、Envoy與Galley的代碼結構與關鍵代碼片段。
    源代碼與官方參考
    Istio是一個開源項目,本書也開源了實踐篇示例應用的源代碼,讀者可通過如下鏈接獲取本書源碼及相關內容。
    ◎ Istio項目官網:https://istio.io/。
    ◎ Istio源代碼:https://github.com/istio。
    ◎ 本書示例應用源代碼:https://github.com/cloudnativebooks/cloud-native-istio。
    勘誤和支持
    若您在閱讀本書的過程中有任何問題或者建議,則可以通過本書源碼倉庫提交Issue或者PR,也可以關注華為雲原生官方微信公眾號並加入微信群與我們交流。我們十分感謝並重視您的反饋,會對您提出的問題、建議進行梳理與反饋,並在本書後續版本中及時做出勘誤與更新。
    致謝
    在本書的寫作及成書過程中,本書作者團隊得到了公司內外許多領導、同事及朋友的指導、鼓勵和幫助。感謝華為雲鄭葉來、張宇昕、廖振欽、方璞等業務主管對華為雲原生技術叢書及本書寫作的大力支持;感謝華為雲容器團隊王澤鋒、羅榮敏、毛傑、張琦等對本書的審閱與建議;感謝華為雲應用服務網格團隊陳鼕鼕、鞏培堯、王少東、李漢辰、秦玉函、張雲等為本書編寫示例程序及分享實踐經驗;感謝電子工業出版社博文視點張國霞編輯一絲不苟地制訂出版計劃及組織工作;感謝華為雲邢紫月對本書的出版建議與指導;最後,也感謝CNCF基金會及Istio、Kubernetes社區眾多開源愛好者辛勤、無私的工作,使得我們在這個技術爆發的時代能夠充分領略到技術的魅力並能夠親身參與到這份有激情、有挑戰的事業中來。謝謝大家!
    劉赫偉 博士
    華為雲原生技術叢書 總編
    華為雲容器服務域 技術總監
    張超盟
    華為雲應用服務網格 首席架構師
    推薦序
    服務網格技術Istio是雲原生(Cloud Native)時代的產物,是雲原生應用的新型架構模式,而雲原生又是雲計算產業發展的新制高點。雲計算是近10年左右流行的概念,但實際上,雲已經走了很長一段路。
    雲的概念可以追溯到20世紀60年代。約翰·麥卡錫教授在1961年麻省理工學院的百年慶典上說:“計算機也許有一天會被組織成一種公用事業,就像電話繫統是一種公用事業一樣。每個訂閱者隻需為實際使用的容量付費,就可以訪問到具有非常龐大的繫統的計算資源……”。第一個具有雲特征的服務出現在20世紀90年代,當時,電信公司從以前主要提供點對點的專用數據電路服務,轉到提供服務質量相當但成本較低的虛擬專用網絡(VPN)服務。VPN服務能夠通過切換流量和平衡服務器的使用,更有效地使用整體的網絡帶寬。電信公司開始使用雲符號來表示提供商和用戶之間的責任界面。在自20世紀60年代以來流行的分時模式的基礎上,服務提供商開始開發新的技術和算法,優化計算資源和網絡帶寬的分布,用戶可以按需獲取高端計算能力。
    2006年,亞馬遜首次推出彈性計算雲(EC2)服務,雲計算的新時代開始了。兩年後,第一個用於部署私有雲和公有雲的開源軟件OpenNebula問世;谷歌則推出了應用引擎的測試版;Gartner公司也首次提到了雲的市場機會。2010年,Rackspace和NASA聯手創建了OpenStack開源雲計算平臺,企業首次可以在標準硬件上構建消費者可以使用的雲。甲骨文、IBM、微軟等眾多公司也相繼發布雲產品,雲市場開始進入快速增長期。
    雲計算使企業擺脫了復雜而昂貴的IT基礎設施建設和維護,因此,當時的雲計算使用以資源(虛擬機、網絡和存儲)為主,也就是基礎設施即服務(IaaS)。企業主要關心怎樣將現有的IT基礎架構遷移到雲上,但在關鍵應用上對雲還是敬而遠之。隨著雲的成熟,包括Netflix和Airbnb在內的眾多雄心勃勃的互聯網初創公司開始把雲計算變成了新商業模式,直接在雲上構建企業的關鍵應用和業務;與此同時,在技術上,人們開始將Linux容器與基於微服務架構的應用結合起來,實現雲應用真正意義上的可擴展、高可靠和自動恢復等能力,於是雲原生計算誕生了。
    雲原生的崛起源於企業應用的快速發展和彈性可擴展的需求。在雲原生時代最具代表性和歷史性的技術是Kubernetes容器應用編排與管理繫統,它提供了大規模和高效管理雲應用所需的自動化和可觀測性。Kubernetes的成功源於應用容器的興起,Docker第一次真正使得容器成為大眾所喜歡和使用的工具。通過對應用的容器化,開發人員可以更輕松地管理應用程序的語言運行環境及部署的一致性和可伸縮性,這引發了應用生態繫統的巨變,極大地減小了測試繫統與生產繫統之間的差異。在容器之上,Kubernetes提供了跨多個容器和多主機服務及應用體繫結構的部署和管理。我們很高興地看到,Kubernetes正在成為現代軟件構建和運維的核心,成為全球雲技術的關鍵。Kubernetes的成功也代表了開源軟件運動所能提供的前所未有的全球開放與合作,是一次具有真正世界影響力的商業轉型。華為雲PaaS容器團隊很早就開始參與這一開源運動,是雲原生計算基金會CNCF的初創會員與董事,在Kubernetes社區的貢獻位於全球前列,也是雲原生技術的主要貢獻者之一。
    雲原生容器技術和微服務應用的出現,推動了人們對服務網格的需求。那麼,什麼是服務網格?簡而言之,服務網格是服務(包括微服務)之間通信的控制器。隨著越來越多的容器應用的開發和部署,一個企業可能會有成百上千或數萬計的容器在運行,怎樣管理這些容器或服務之間的通信,包括服務間的負載均衡、流量管理、路由、運行狀況監視、安全策略及服務間身份驗證,就成為雲原生技術的巨大挑戰。以Istio為代表的服務網格應運而生。在架構上,Istio屬於雲原生技術的基礎設施層,通過在容器旁提供一繫列網絡代理,來實現服務間的通信控制。其中的每個網絡代理就是一個網關,管理容器或容器集群中每個服務間的請求或交互。每個網絡代理還攔截服務請求,並將服務請求分發到服務網格上,因此,眾多服務構成的無數連接“編織”成網,也就有了“網格”這個概念。服務網格的中央控制器,在Kubernetes容器平臺的幫助下,通過服務策略來控制和調整網絡代理的功能,包括收集服務的性能指標。
    服務網格作為一種雲原生應用的體繫結構模式,應對了微服務架構在網絡和管理上的挑戰,也推動了技術堆棧分層架構的發展。從分布式負載平衡、防火牆到服務的可見性,服務網格通過在每個架構層提供通信層來避免服務碎片化,以安全隔離的方式解決了跨集群的工作負載問題,並超越了Kubernetes容器集群,擴展到運行在裸機上的服務。因此,雖然服務網格是從容器和微服務開始的,但它的架構優勢也可以適用於非容器應用或服務。
    從初始的雲理念到雲計算再到雲原生的發展過程中,我們看到服務網格是雲原生技術發展的必然產物。作為雲原生架構和技術棧的關鍵部分,服務網格技術Istio也逐漸成為雲原生應用平臺的另一塊基石,這不僅僅是因為Istio為服務間提供了安全、高可靠和高性能的通信機制,其本身的設計也代表一種由開發人員驅動的、基於策略和服務優先的雲原生架構設計理念。本書作者及寫作團隊具有豐富的Istio實戰經驗,在本書中由淺入深地剖析了Istio的原理、架構、實踐及源碼。通過閱讀本書,讀者不但能夠對Istio有全面的了解,還可以學到雲原生服務網格的設計思路和理念,對任何一名軟件設計架構師或工程師來說都有很大的幫助,這是一本非常有價值的雲原生時代分布式繫統書籍。
    廖振欽
    華為雲PaaS產品部總經理
    查看全部↓



    "
     
    網友評論  我們期待著您對此商品發表評論
     
    相關商品
    在線留言 商品價格為新臺幣
    關於我們 送貨時間 安全付款 會員登入 加入會員 我的帳戶 網站聯盟
    DVD 連續劇 Copyright © 2024, Digital 了得網 Co., Ltd.
    返回頂部