注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡家庭與辦公軟件Kubernetes編程

Kubernetes編程

Kubernetes編程

定 價:¥88.00

作 者: [美] 邁克爾·豪森布拉斯(Michael Hausenblas) 著,李凡希,任震宇 譯
出版社: 中國電力出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787519854799 出版時間: 2021-06-01 包裝: 平裝
開本: 16開 頁數: 317 字數:  

內容簡介

  如果你打算開發(fā)原生Kubernetes應用,《Kubernetes編程》將成為你的向導。該書面向開發(fā)者和應用運維管理員介紹如何構建原生Kubernetes應用程序,這類應用可直接通過API服務器查詢或更新資源的狀態(tài)。AWS開發(fā)倡導者Michael Hausenblas和Red Hat首席軟件工程師Stefan Schimanski將介紹這類應用的特性并向你展示如何編寫Kubernetes程序來構建它們。你將學到Kubernetes的基礎構件,包括client-go API庫以及自定義資源。你只需要具備一些初級的開發(fā)知識和系統管理工具和實踐經驗(包括包管理、Go語言和Git)即可上手。介紹了Kubernetes API的基礎知識并深入講解API服務器的內部結構。學習Go語言的Kubernetes編程接口,包括Kubernetes API對象。學習自定義資源,它是Kubernetes生態(tài)系統中核心的擴展工具。使用代碼標簽控制Kubernetes代碼生成器為自定義資源生成代碼時的行為。編寫自定義的控制器和Operator,并為部署到生產環(huán)境中做好準備。通過自定義API服務器,擴展Kubernetes的API層。

作者簡介

  Michael Hausenblas是Amazon Web Service容器開發(fā)領域的倡導者。他擁有大規(guī)模數據處理和容器編排方面的經驗,在倡導和實施W3C和IETF標準化方面有著豐富的經驗。 Stefan Schimanski是Red Hat的Go、Kubernetes和Open-Shift首席軟件工程師,他專注于Kubernetes API服務器及其在自定義資源定義、API Machinery方面的實現,以及Kubernetes預發(fā)布倉庫的管理

圖書目錄

目錄
前言 .1
第1 章 概論 .7
1.1 什么是Kubernetes 編程? .7
1.2 一個實際的例子 10
1.3 擴展模式 11
1.4 控制器和Operator 12
1.4.1 控制循環(huán). 13
1.4.2 事件 14
1.4.3 邊沿觸發(fā)與水平觸發(fā) 17
1.4.4 改變集群對象或外部系統狀態(tài) 20
1.4.5 樂觀并發(fā). 23
1.4.6 Operator 26
1.5 小結 28
第2 章 Kubernetes API 基礎 .30
2.1 API 服務器 30
2.1.1 API 服務器的HTTP 接口 31
2.1.2 API 術語 . 33
2.1.3 Kubernetes API 版本 . 36
2.1.4 聲明式狀態(tài)管理 . 37
2.2 通過命令行使用API . 38
2.3 API 服務器是如何處理請求的 43
2.4 小結 47
第3 章 client-go 基礎 49
3.1 代碼倉庫 49
3.1.1 客戶端庫. 49
3.1.2 Kubernetes API 類型 . 51
3.1.3 API Machinery . 52
3.1.4 創(chuàng)建并使用客戶端對象 53
3.1.5 版本與兼容性 56
3.1.6 API 版本與兼容性保證 59
3.2 Go 語言中的Kubernetes 對象 62
3.2.1 TypeMeta 63
3.2.2 ObjectMeta 67
3.2.3 規(guī)格與狀態(tài) 68
3.3 客戶端集合 . 68
3.3.1 狀態(tài)子資源:UpdateStatus 71
3.3.2 列表與刪除 71
3.3.3 Watch 72
3.3.4 客戶端擴展 73
3.3.5 客戶端選項 73
3.4 Informer 和緩存 75
3.5 深入API Machinery 83
3.5.1 型別 83
3.5.2 資源 83
3.5.3 REST 映射 . 84
3.5.4 Scheme 86
3.6 Vendor 機制 88
3.6.1 glide 88
3.6.2 dep . 89
3.6.3 Go 模塊 90
3.7 小結 92
第4 章 使用自定義資源 93
4.1 服務發(fā)現信息 95
4.2 類型定義 97
4.3 自定義資源的高級功能 . 100
4.3.1 自定義資源合法性驗證 100
4.3.2 短名字與類別 103
4.3.3 打印列 104
4.3.4 子資源 106
4.4 開發(fā)者眼中的自定義資源 . 111
4.4.1 動態(tài)客戶端 . 112
4.4.2 強類型客戶端 114
4.4.3 Operator SDK 和Kubebuilder 的controller-runtime 客戶端 121
4.5 小結 . 123
第5 章 自動代碼生成 124
5.1 為何需要代碼生成器 124
5.2 調用代碼生成器 125
5.3 通過標簽控制代碼生成器行為 127
5.3.1 全局標簽 128
5.3.2 局部標簽 129
5.3.3 deepcopy-gen 標簽 131
5.3.4 runtime.Object 與DeepCopyObject 131
5.3.5 client-gen 標簽 133
5.3.6 informer-gen 和lister-gen 135
5.4 小結 . 136
第6 章 編寫Operator 的方案 137
6.1 準備工作 138
6.2 基于sample-controller 138
6.2.1 引導 139
6.2.2 業(yè)務邏輯 140
6.3 Kubebuilder . 148
6.3.1 引導 149
6.3.2 業(yè)務邏輯 155
6.4 Operator SDK . 160
6.4.1 引導 161
6.4.2 業(yè)務邏輯 163
6.5 其他方案 167
6.6 應用和未來的方向 168
6.7 小結 . 169
第7 章 發(fā)布控制器和Operator 170
7.1 生命周期管理和打包 170
7.1.1 打包:挑戰(zhàn) . 171
7.1.2 Helm 172
7.1.3 Kustomize 174
7.1.4 其他打包方法 176
7.1.5 打包的最佳實踐 177
7.1.6 生命周期管理 178
7.2 準生產部署 179
7.2.1 將權限設置正確 179
7.2.2 自動構建與測試 183
7.2.3 自定義控制器和可觀測性 184
7.3 小結 . 187
第8 章 自定義API 服務器 . 189
8.1 自定義API 服務器的適用場景 189
8.2 示例:一個披薩店 192
8.3 架構:聚合 193
8.3.1 API 服務 195
8.3.2 自定義API 服務器的內部結構 198
8.3.3 委托身份認證和信任機制 200
8.3.4 委托授權 201
8.4 開發(fā)自定義API 服務器 . 204
8.4.1 選項、配置模式和啟動基礎設施 204
8.4.2 第一次啟動 . 213
8.4.3 內部類型和轉換 214
8.4.4 編寫API 類型 218
8.4.5 轉換 220
8.4.6 默認值處理 . 224
8.4.7 雙程測試 226
8.4.8 驗證 228
8.4.9 注冊表與策略 231
8.4.10 安裝API 237
8.4.11 準入 . 242
8.5 部署自定義API 服務器 . 253
8.5.1 部署清單文件 254
8.5.2 設置RBAC . 257
8.5.3 不安全地運行自定義API 服務器 259
8.5.4 證書與信任 . 262
8.5.5 共享etcd 265
8.6 小結 . 266
第9 章 自定義資源進階 . 268
9.1 自定義資源版本 268
9.1.1 改進披薩餐廳 269
9.1.2 轉換Webhook 架構 273
9.1.3 實現轉換Webhook . 277
9.1.4 搭建HTTPS 服務器 278
9.1.5 部署轉換Webhook . 285
9.1.6 觀察實際轉換過程 286
9.2 準入Webhook . 290
9.2.1 餐館示例中的準入需求 291
9.2.2 準入Webhook 架構 292
9.2.3 注冊準入Webhook . 295
9.2.4 實現準入Webhook . 296
9.2.5 準入Webhook 實戰(zhàn) 302
9.3 結構化Schema 與CRD 的未來 . 304
9.3.1 結構化Schema . 305
9.3.2 剪裁或保留不能識別的字段 307
9.3.3 控制剪裁 308
9.3.4 IntOrString 和RawExtensions 310
9.3.5 默認值 311
9.4 小結 . 313
附錄 資源 . 315
作者介紹 319
封面介紹 319

本目錄推薦

掃描二維碼
Copyright ? 讀書網 ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號