中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊
> >>
深入理解Kubernetes源碼

包郵 深入理解Kubernetes源碼

出版社:電子工業出版社出版時間:2024-08-01
開本: 16開 頁數: 696
中 圖 價:¥114.5(7.2折) 定價  ¥159.0 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>

深入理解Kubernetes源碼 版權信息

  • ISBN:9787121483233
  • 條形碼:9787121483233 ; 978-7-121-48323-3
  • 裝幀:平裝-膠訂
  • 冊數:暫無
  • 重量:暫無
  • 所屬分類:>>

深入理解Kubernetes源碼 本書特色

·專家力薦:業內專家曹偉(鳴嵩)、劉君傾情力薦。 ·深入解析:以Kubernetes 1.25.0源碼為基礎,詳解核心組件和實現原理,帶你全面掌握容器編排技術。 ·提升競爭力:通過學習Kubernetes源碼,提升在云計算領域的專業能力,增強職業競爭力。 ·實用指南:幫助開發者、運維工程師及架構師高效管理大規模多容器集群,應對生產環境中的復雜編排需求。 ·技術精髓:適合對容器技術和云計算感興趣的讀者,深入了解Kubernetes,掌握前沿技術,邁向技術巔峰。 從一個云數據庫從業者的角度來看,Kubernetes正在撬動云計算的基石。Kubernetes可以屏蔽多云、混合云laaS層面的差異,可以向業務提供Pod、Service、Deployment、StatefulSet等更高層次的統一抽象。在Kubernetes的基礎上,企業可以借助生態搭建各種PaaS服務,如管理數據庫的KubeBlocks。Kubernetes已經是云時代的Linux了,云計算的從業者、使用者都必須知曉Kubernetes的理念、原理及如何擴展Kubernetes的功能。這本書可以幫助讀者從源碼角度切入,深入掌握Kubernetes,走在技術前沿。 ——曹 偉(鳴嵩) 云猿生數據CEO,阿里云前數據庫總經理,PolarDB創始人 《深入理解Kubemetes源碼》一書從多維度、深入淺出地剖析了Kubernetes架構及源碼運行機制,非常值得學習。同時,作者在一線互聯網大廠有超大規模容器云服務開發和運維等實踐經驗,在這本書中他們給出了自己非常獨到的見解和分析。 ——劉 君 快手SRE負責人

深入理解Kubernetes源碼 內容簡介

在過去幾年中,容器技術的廣泛應用推動了容器編排技術的迅猛發展,尤其是Kubernetes的興起。作為當前非常受歡迎的容器編排系統,Kubemetes能夠有效應對生產環境中復雜的編排需求,幫助企業實現大規模多容器集群的高效管理。本書將Kubemetes 1.25.0版本源碼作為剖析對象,深入探討其核心組件和實現原理。通過學習Kubernetes源碼,讀者不僅能掌握容器編排技術的精髓,還能提升自身在云計算領域的競爭力。
本書適合對容器技術和云計算感興趣的開發者、運維工程師及架構師參考和閱讀。

深入理解Kubernetes源碼 目錄

第1章 Kubernetes基本架構 1
1.1 Kubernetes發展歷史 1
1.2 Kubernetes架構 2
1.3 Kubernetes各組件功能 3
1.3.1 kubectl 4
1.3.2 client-go 4
1.3.3 kube-apiserver 4
1.3.4 kube-controller-manager 4
1.3.5 kube-scheduler 5
1.3.6 kubelet 5
1.3.7 kube-proxy 6
1.3.8 Container Runtime 6
1.4 Kubernetes Project Layout設計 7
第2章 Kubernetes構建過程 10
2.1 構建方式 10
2.2 一切都始于Makefile 12
2.3 本地環境構建 13
2.3.1 本地環境構建命令 13
2.3.2 本地環境構建過程 14
2.4 容器環境構建 16
2.4.1 容器環境構建命令 16
2.4.2 容器環境構建過程 16
第3章 Kubernetes核心數據結構 19
3.1 初識數據結構 19
3.2 基本概念 19
3.2.1 API的層次結構 19
3.2.2 版本控制 20
3.2.3 組 21
3.2.4 API術語 22
3.2.5 API資源組成 25
3.2.6 版本化資源與未版本化資源 26
3.2.7 內部版本與外部版本 27
3.3 Kubernetes API的數據結構 28
3.3.1 APIGroup、APIVersions 28
3.3.2 APIResource 30
3.3.3 GVK和GVR 32
3.3.4 內置資源全景圖 33
3.4 Kubernetes資源定義 35
3.4.1 內部版本定義 35
3.4.2 外部版本定義 36
3.5 將資源注冊到Scheme中 36
3.5.1 資源類型注冊入口 37
3.5.2 Scheme的數據結構 38
3.5.3 Scheme的初始化 40
3.5.4 SchemeBuilder資源注冊 41
3.5.5 資源外部版本注冊 43
3.5.6 資源內部版本注冊 44
3.5.7 所有資源的注冊入口 45
3.5.8 資源注冊表的查詢方法 47
3.5.9 資源對象的創建 48
3.5.10 資源對象的轉換 48
3.5.11 資源對象默認值的設置 49
3.5.12 資源字段的轉換 49
3.6 對象體系設計 49
3.6.1 資源對象的基本信息 49
3.6.2 對象體系類圖 50
3.6.3 runtime.Object 51
3.6.4 metav1.TypeMeta 52
3.6.5 metav1.ObjectMeta 52
3.6.6 Unstructured 53
3.7 runtime.Codec資源編/解碼 55
3.7.1 編/解碼數據結構 56
3.7.2 CodecFactory實例化 57
3.7.3 codec編/解碼實現類 60
3.7.4 json.Serializer編/解碼 64
3.7.5 protobuf.Serializer編/解碼 65
3.7.6 UnstructuredJSONScheme實現類 67
3.7.7 NegotiatedSerializer 67
3.7.8 ParameterCodec 69
3.7.9 runtime包下的Codec相關函數 71
3.7.10 Codec核心調用鏈路 72
3.7.11 Codec的使用方式 74
3.8 Converter資源版本轉換器 75
3.8.1 Converter的數據結構 76
3.8.2 Converter轉換函數的注冊 77
3.8.3 Converter的初始化 77
3.8.4 Converter資源版本轉換的實現 78
3.9 使用RESTMapper管理GVR和GVK映射 79
3.9.1 RESTMapper的數據結構 80
3.9.2 RESTMapper實現類 81
3.9.3 DefaultRESTMapper默認實現類 82
3.9.4 PriorityRESTMapper優先級映射 83
3.9.5 DeferredDiscoveryRESTMapper實現類 84
3.9.6 RESTMapper的使用 85
3.9.7 RESTMapping的數據結構及典型用法 85
第4章 Kubernetes核心資源對象 87
4.1 初識Kubernetes資源對象 87
4.2 metav1.ObjectMeta屬性元數據 88
4.2.1 Name 88
4.2.2 GenerateName 89
4.2.3 Annotation 89
4.2.4 Generation 89
4.2.5 ResourceVersion 90
4.2.6 OwnerReference 91
4.2.7 Finalizers 92
4.2.8 ManagedFields 94
4.3 Pod資源對象 99
4.3.1 PodSpec字段詳解 100
4.3.2 Container字段詳解 110
4.3.3 Pod創建流程 114
4.3.4 Pause容器及創建流程 115
4.3.5 PodSpec生成容器參數 122
4.3.6 容器的通用創建流程 124
4.3.7 資源配額與cgroup 126
4.3.8 QoS與驅逐順序 131
4.3.9 靜態Pod 135
4.3.10 健康檢查 137
4.3.11 Pod的狀態 140
4.3.12 原地升級 144
4.4 工作負載資源 146
4.4.1 Deployment 146
4.4.2 ReplicaSet 153
4.4.3 StatefulSet 156
4.4.4 DaemonSet 160
4.4.5 Job 163
4.4.6 CronJob 166
4.5 發現和負載均衡資源 169
4.5.1 Service 169
4.5.2 Ingress 175
4.5.3 Endpoints 177
4.5.4 EndpointSlice 178
4.5.5 NetworkPolicy 182
4.6 配置和存儲資源 185
4.6.1 卷 185
4.6.2 PV與PVC 186
4.6.3 StorageClass 191
4.7 自定義資源 194
4.7.1 概述 194
4.7.2 Operator 196
4.7.3 controller-runtime 197
4.7.4 Kubebuilder 198
第5章 client-go編程式交互 200
5.1 初識client-go 200
5.2 客戶端 200
5.2.1 kubeconfig配置管理 201
5.2.2 RESTClient客戶端 204
5.2.3 ClientSet客戶端 207
5.2.4 DynamicClient客戶端 210
5.2.5 DiscoveryClient發現客戶端 212
5.3 Informer機制 214
5.3.1 Informer使用示例 214
5.3.2 Informer架構 216
5.3.3 Reflector數據同步 217
5.3.4 DeltaFIFO操作隊列 223
5.3.5 Indexer資源緩存 226
5.3.6 processor資源處理 230
5.3.7 workqueue工作隊列 233
5.4 常用工具類 240
5.4.1 事件管理機制 240
5.4.2 Leader選舉機制 247
第6章 kubectl命令式交互 256
6.1 初識kubectl 256
6.2 kubectl執行流程 256
6.2.1 初始化命令對象 257
6.2.2 補全命令參數 257
6.2.3 校驗命令參數 258
6.2.4 執行命令輸出結果 258
6.3 kubectl緩存機制 263
6.3.1 緩存數據結構 264
6.3.2 緩存機制詳解 265
6.3.3 緩存使用場景 269
6.4 kubectl變更比對策略 272
6.4.1 變更比對策略介紹 272
6.4.2 服務端應用和客戶端應用 272
6.4.3 策略比對器和JSON比對器 274
6.4.4 雙路合并和三路合并 275
6.5 kubectl擴展命令 277
6.5.1 擴展命令介紹 277
6.5.2 擴展命令實現原理 277
6.5.3 擴展命令管理器Krew 278
第7章 etcd存儲核心實現 280
7.1 初識etcd存儲 280
7.2 etcd存儲架構設計 280
7.3 RESTStorage資源存儲接口 282
7.4 genericregistry.Store通用操作封裝 283
7.4.1 標準存儲實現 283
7.4.2 版本沖突檢測 284
7.4.3 通用鉤子函數 284
7.4.4 DryRun實現原理 287
7.5 storage.Interface通用存儲接口 288
7.6 Cacher Storage緩存層 290
7.6.1 Cacher Storage緩存架構 291
7.6.2 ResourceVersion資源版本號 295
7.6.3 watchCache緩存滑動窗口 297
7.7 Underlying Storage底層存儲對象 300
7.8 Codec數據編/解碼 301
7.9 Strategy預處理 304
7.9.1 Create Strategy預處理 304
7.9.2 Update Strategy預處理 307
7.9.3 Delete Strategy預處理 308
第8章 kube-apiserver核心實現 310
8.1 初識kube-apiserver 310
8.2 網絡通信框架 311
8.2.1 go-restful框架 311
8.2.2 Protobuf序列化 314
8.3 kube-apiserver架構設計 319
8.4 kube-apiserver啟動流程 321
8.4.1 Scheme資源注冊 322
8.4.2 Cobra命令行參數解析 324
8.4.3 創建API Server通用配置 325
8.4.4 創建APIExtensionsServer 336
8.4.5 創建KubeAPIServer 345
8.4.6 創建AggregatorServer 353
8.4.7 GenericAPIServer初始化 360
8.4.8 準備和啟動HTTPS服務 362
8.5 請求處理流程 367
8.6 權限控制體系 368
8.7 認證 369
8.7.1 RequestHeader認證 370
8.7.2 ClientCA認證 372
8.7.3 TokenAuth認證 373
8.7.4 ServiceAccountAuth認證 374
8.7.5 BootstrapToken認證 377
8.7.6 OIDC認證 379
8.7.7 WebhookTokenAuth認證 381
8.7.8 Anonymous認證 383
8.8 授權 383
8.8.1 AlwaysAllow授權 386
8.8.2 AlwaysDeny授權 387
8.8.3 ABAC授權 388
8.8.4 Webhook授權 389
8.8.5 RBAC授權 391
8.8.6 Node授權 396
8.9 準入控制器 397
8.9.1 內置插件介紹 398
8.9.2 內部實現原理 401
8.9.3 MutatingAdmissionWebhook準入控制器 404
8.9.4 ValidatingAdmissionWebhook準入控制器 411
8.10 信號處理機制 416
8.10.1 常駐進程實現 416
8.10.2 進程的優雅關閉 417
8.10.3 向systemd報告進程狀態 419
8.11 List-Watch的實現原理 420
8.11.1 長連接通信協議 420
8.11.2 List-Watch的核心原理 425
第9章 kube-scheduler核心實現 430
9.1 初識kube-scheduler 430
9.1.1 kube-scheduler調度模型 430
9.1.2 kube-scheduler內部架構 431
9.1.3 kube-scheduler事件驅動 434
9.2 kube-scheduler啟動流程 437
9.2.1 Cobra命令行參數解析 438
9.2.2 實例化Scheduler對象 439
9.2.3 運行EventBroadcaster事件管理器 442
9.2.4 運行HTTPS Server 442
9.2.5 運行Informer同步資源 443
9.2.6 執行Leader選舉 444
9.2.7 運行調度器 445
9.3 Scheduling Framework 445
9.3.1 誕生背景 445
9.3.2 核心架構 446
9.4 調度器運行流程 452
9.4.1 整體運行流程 452
9.4.2 Scheduling Cycle 454
9.4.3 Binding Cycle 462
9.5 優先級與搶占機制 464
9.5.1 Pod優先級 465
9.5.2 Pod驅逐搶占機制 466
展開全部

深入理解Kubernetes源碼 作者簡介

鄭東旭(Derek Zheng),BFE(萬億流量轉發引擎)開源項目的作者之一,擅長Linux下高性能服務器的開發,對云計算、區塊鏈相關技術領域有深刻的理解。邱世達,云原生技術專家,熱愛開源事業,長期參與Kubernetes社區貢獻,Kubernetes Contributor Top 30,Sig Cluster Lifecycle成員,Kubeadm項目維護者之一,具備多年云計算領域研究工作經驗。冀超,曾在百度等多家互聯網公司任職,參與過公有云和公司內的云原生平臺建設,具有多年Kubernetes使用和開發經驗。李晉林,長期致力于云原生領域,對Kubernetes有深入理解和研究。在金融交易系統中擁有多年的Kubernetes使用和二次開發經驗,主要主導公司業務上云、線上流量遷移等工作。楊川胡(陽明),云原生愛好者,k8s技術圈社區作者,云原生學習網站優點知識創始人。周世偉,資深碼農,云原生愛好者和踐行者,擅長Kubernetes、服務網格開發,技術宅。

商品評論(0條)
暫無評論……
書友推薦
編輯推薦
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 湿地保护| 上海电子秤厂家,电子秤厂家价格,上海吊秤厂家,吊秤供应价格-上海佳宜电子科技有限公司 | 聚丙烯酰胺PAM-聚合氯化铝PAC-絮凝剂-河南博旭环保科技有限公司 巨野电机维修-水泵维修-巨野县飞宇机电维修有限公司 | 工装定制/做厂家/公司_工装订做/制价格/费用-北京圣达信工装 | 线材成型机,线材折弯机,线材成型机厂家,贝朗自动化设备有限公司1 | 耐磨陶瓷管道_除渣器厂家-淄博浩瀚陶瓷科技有限公司 | 苏州柯瑞德货架-仓库自动化改造解决方案 | H型钢切割机,相贯线切割机,数控钻床,数控平面钻,钢结构设备,槽钢切割机,角钢切割机,翻转机,拼焊矫一体机 | 超细|超微气流粉碎机|气流磨|气流分级机|粉体改性机|磨粉机|粉碎设备-山东埃尔派粉体科技 | 胶水,胶粘剂,AB胶,环氧胶,UV胶水,高温胶,快干胶,密封胶,结构胶,电子胶,厌氧胶,高温胶水,电子胶水-东莞聚力-聚厉胶粘 | 斗式提升机,斗式提升机厂家-淄博宏建机械有限公司 | 气弹簧定制-气动杆-可控气弹簧-不锈钢阻尼器-工业气弹簧-可调节气弹簧厂家-常州巨腾气弹簧供应商 | 高效复合碳源-多核碳源生产厂家-污水处理反硝化菌种一长隆科技库巴鲁 | 打孔器,打孔钳厂家【温州新星德牌五金工具】 | KBX-220倾斜开关|KBW-220P/L跑偏开关|拉绳开关|DHJY-I隔爆打滑开关|溜槽堵塞开关|欠速开关|声光报警器-山东卓信有限公司 | 游泳池设计|设备|配件|药品|吸污机-东莞市太平洋康体设施有限公司 | 西门子代理商_西门子变频器总代理-翰粤百科| 膏方加工_丸剂贴牌_膏滋代加工_湖北康瑞生物科技有限公司 | 标准件-非标紧固件-不锈钢螺栓-非标不锈钢螺丝-非标螺母厂家-三角牙锁紧自攻-南京宝宇标准件有限公司 | 瓶盖扭矩仪(扭力值检测)-百科| 房车价格_依维柯/大通/东风御风/福特全顺/江铃图片_云梯搬家车厂家-程力专用汽车股份有限公司 | 赛默飞Thermo veritiproPCR仪|ProFlex3 x 32PCR系统|Countess3细胞计数仪|371|3111二氧化碳培养箱|Mirco17R|Mirco21R离心机|仟诺生物 | 好物生环保网、环保论坛 - 环保人的学习交流平台 | 河南正规膏药生产厂家-膏药贴牌-膏药代加工-修康药业集团官网 | 印刷人才网 印刷、包装、造纸,中国80%的印刷企业人才招聘选印刷人才网! | 3d可视化建模_三维展示_产品3d互动数字营销_三维动画制作_3D虚拟商城 【商迪3D】三维展示服务商 广东健伦体育发展有限公司-体育工程配套及销售运动器材的体育用品服务商 | 环氧乙烷灭菌器_压力蒸汽灭菌器_低温等离子过氧化氢灭菌器 _低温蒸汽甲醛灭菌器_清洗工作站_医用干燥柜_灭菌耗材-环氧乙烷灭菌器_脉动真空压力蒸汽灭菌器_低温等离子灭菌设备_河南省三强医疗器械有限责任公司 | 空气净化器租赁,空气净化器出租,全国直租_奥司汀净化器租赁 | 胶泥瓷砖胶,轻质粉刷石膏,嵌缝石膏厂家,腻子粉批发,永康家德兴,永康市家德兴建材厂 | 示波器高压差分探头-国产电流探头厂家-南京桑润斯电子科技有限公司 | 玉米深加工设备|玉米加工机械|玉米加工设备|玉米深加工机械-河南成立粮油机械有限公司 | 篷房|仓储篷房|铝合金篷房|体育篷房|篷房厂家-华烨建筑科技官网 知名电动蝶阀,电动球阀,气动蝶阀,气动球阀生产厂家|价格透明-【固菲阀门官网】 | 油漆辅料厂家_阴阳脚线_艺术漆厂家_内外墙涂料施工_乳胶漆专用防霉腻子粉_轻质粉刷石膏-魔法涂涂 | 市政路灯_厂家-淄博信达电力科技有限公司 | 乐考网-银行从业_基金从业资格考试_初级/中级会计报名时间_中级经济师 | 大型果蔬切片机-水果冬瓜削皮机-洗菜机切菜机-肇庆市凤翔餐饮设备有限公司 | 吸污车_吸粪车_抽粪车_电动三轮吸粪车_真空吸污车_高压清洗吸污车-远大汽车制造有限公司 | 工业淬火油烟净化器,北京油烟净化器厂家,热处理油烟净化器-北京众鑫百科 | 密封无忧网 _ 专业的密封产品行业信息网 | 真空吸污车_高压清洗车厂家-程力专用汽车股份有限公司官网 | 碳化硅,氮化硅,冰晶石,绢云母,氟化铝,白刚玉,棕刚玉,石墨,铝粉,铁粉,金属硅粉,金属铝粉,氧化铝粉,硅微粉,蓝晶石,红柱石,莫来石,粉煤灰,三聚磷酸钠,六偏磷酸钠,硫酸镁-皓泉新材料 |