雲原生套用構建

雲原生套用構建

《雲原生套用構建》是由機械工業出版社出版的圖書,作者魏新宇、王洪濤、陳耿,這是一部從開發和運維兩種視角講解如何基於OpenShift構建雲原生套用的著作。

基本介紹

  • 中文名:雲原生套用構建
  • 作者:魏新宇、王洪濤、陳耿
  • 出版社:機械工業出版社
  • ISBN:9787111657866 
內容簡介,圖書目錄,作者簡介,

內容簡介

這是一部從開發和運維兩種視角講解如何基於OpenShift構建雲原生套用的著作。三位作者分別來自紅帽和微軟公司,都是OpenShift和雲原生領域的布道者和領軍人物,經驗非常豐富。
全書一共14章,秉承全棧理念講解了構建雲原生套用需要掌握的雲原生技術、OpenShift技術以及開源分散式中間件技術。
*部分:雲原生篇(第1~11章)
首先,講解了雲原生和與之相關的分散式開源中間件的技術,如基於雲原生的Java實現等;其次,講解了雲原生構建的6大步驟及其相關的技術和方法,如發展DevOps文化、構建分散式快取等;*後,講解了人工智慧在容器雲上的實踐。
第二部分:OpenShift篇(第12~14章)
詳細講解了OpenShift 集群的規劃、管理、離線安裝與部署,以及OpenShift 在公有雲上的*實踐。

圖書目錄

序言
前言
部分 雲原生篇
第1章 雲原生套用的構建之路2
1.1 雲原生套用2
1.1.1 什麼是雲原生套用2
1.1.2 雲原生套用開發和部署的四大
原則3
1.2 雲原生套用構建之路的步驟3
1.3 藉助Red Hat開源解決方案實現
   雲原生6
1.4 本章小結8
第2章 傳統Linux上構建套用包9
2.1 什麼是RPM9
2.2 從原始碼構建軟體10
2.2.1 本機編譯代碼10
2.2.2 解釋型代碼11
2.3 給軟體打補丁12
2.4 安裝軟體13
2.5 原始碼生成tar.gz包14
2.6 RPM打包15
2.6.1 什麼是SPEC檔案15
2.6.2 書寫SPEC檔案17
2.7 構建二進制RPM包19
2.7.1 構建Source RPM和二進制
RPM19
2.7.2 檢查並安裝RPM包21
2.8 如何在異構環境重新編譯RPM22
2.9 本章小結24
第3章 雲原生Java的實現25
3.1 Java套用的發展25
3.1.1 Java EE架構25
3.1.2 Java套用的打包與JDK28
3.2 Kubernetes時代Java面臨的問題33
3.3 Quarkus的架構33
3.4 驗證Quarkus功能34
3.4.1 編譯和部署Quarkus套用34
3.4.2 Quarkus的熱載入39
3.4.3 在OpenShift中部署Quarkus
應用程式41
3.4.4 Quarkus套用添加REST Client
擴展45
3.4.5 Quarkus套用的容錯能力50
3.5 Quarkus的事務管理52
3.6 本章小結53
第4章 DevOps和DevSecOps的
 實現54
4.1 什麼是DevOps54
4.1.1 從瀑布式開發到敏捷開發54
4.1.2 從敏捷開發到DevOps55
4.2 DevOps的技術實現56
4.3 在OpenShift上實現DevOps58
4.3.1 S2I與Jenkins結合使用實現
CI/CD59
4.3.2 常用DevOps工具介紹61
4.3.3 OpenShift 3 Jenkins Pipeline
工作流分析64
4.4 OpenShift 4.2中的OpenShift
   Pipeline69
4.4.1 Tekton概述69
4.4.2 安裝OpenShift Pipeline71
4.4.3 驗證OpenShift Pipeline73
4.5 DevSecOps在OpenShift上的實現79
4.5.1 DevSecOps的架構79
4.5.2 DevSecOps中的安全工具80
4.5.3 DevSecOps在OpenShift上的
架構80
4.5.4 DevSecOps所依賴的OpenShift
實驗環境81
4.5.5 DevSecOps Pipeline分析83
4.5.6 執行DevSecOps Pipeline89
4.6 本章小結94
第5章 構建分散式訊息中間件和
 數據流平台95
5.1 服務之間的通信95
5.1.1 服務之間的通信方式95
5.1.2 異步通信實現97
5.1.3 訊息的分類97
5.2 AMQ在OpenShift上的企業級
   實現98
5.2.1 標準訊息中間件規範98
5.2.2 查看AMQ的多協定支持101
5.2.3 創建持久佇列101
5.2.4 AMQ的HA104
5.2.5 AMQ的Cluster105
5.2.6 AMQ在OpenShift上的部署107
5.3 Kafka在OpenShift上的實現113
5.3.1 Kafka的架構113
5.3.2 Kafka集群在OpenShift集群
上的實現方式114
5.3.3 在OpenShift上部署Kafka
集群115
5.3.4 配置Kafka外部訪問121
5.3.5 配置Mirror Maker124
5.4 本章小結128
第6章 構建分散式快取129
6.1 IT架構的演進129
6.1.1 傳統IT架構129
6.1.2 分散式IT架構130
6.1.3 分散式IT架構下的快取130
6.1.4 記憶體數據格線的套用場景131
6.2 記憶體數據格線技術實現:
   Infinispan131
6.2.1 Infinispan的兩種部署模式132
6.2.2 Infinispan的三種配置模式133
6.2.3 Infinispan功能驗證134
6.2.4 在OpenShift上實現
Infinispan138
6.3 記憶體數據格線技術實現:Redis141
6.3.1 Sentinel Redis一主多從141
6.3.2 Redis Cluster Redis多主
多從142
6.3.3 Redis在OpenShift上的實現143
6.4 Infinispan和Redis的對比150
6.5 本章小結150
第7章 構建業務流程自動化151
7.1 規則與流程151
7.2 企業規則的開源實現153
7.2.1 KIE的架構153
7.2.2 Drools的架構155
7.3 企業級規則自動化方案157
7.3.1 Red Hat Decision Manager
架構157
7.3.2 RHDM在OpenShift上的實現
架構158
7.4 以抵押貸款套用展示RHDM
   功能161
7.4.1 在RHDM上導入抵押貸款
套用源碼161
7.4.2 抵押貸款套用源碼分析163
7.4.3 探索抵押貸款套用165
7.4.4 複雜規則的處理168
7.4.5 驗證決策模型和表示法(DMN)
格式規則171
7.5 Red Hat流程自動化方案174
7.5.1 Red Hat Process Automation
Manager架構174
7.5.2 RHPAM與微服務的集成案例
環境準備176
7.5.3 RHPAM與微服務的集成實驗
流程驗證185
7.6 本章小結194
第8章 雲原生套用的安全195
8.1 雲原生套用的認證與授權195
8.2 OpenShift的單點登錄197
8.2.1 OpenShift的認證方式197
8.2.2 OpenShift與Keycloak
的集成198
8.3 實現Web套用單點登錄209
8.4 雲原生套用出口流量限制219
8.4.1 配置出口防火牆219
8.4.2 配置出口路由器220
8.5 本章小結224
第9章 分散式集成與API管理225
9.1 分散式集成225
9.1.1 分散式集成方案225
9.1.2 基於OpenShift 3.11和Camel的
微服務集成227
9.1.3 Camel K項目介紹251
9.2 API管理方案253
9.2.1 Red Hat 3Scale的技術架構與
實現效果253
9.2.2 Red Hat 3Scale對容器化套用的
管理255
9.3 本章小結262
第10章 雲原生套用與Serverless
  的結合263
10.1 無伺服器架構Serverless263
10.1.1 套用架構的演進263
10.1.2 基礎架構的演進264
10.1.3 Serverless的技術種類265
10.1.4 OpenWhisk的核心概念266
10.1.5 基於OpenShift集群部署 的
OpenWhisk267
10.2 Serverless與IoT的配合270
10.2.1 場景描述270
10.2.2 創建並驗證個Action:
formatInput271
10.2.3 創建並驗證第二個Action:
enricher274
10.2.4 將兩個Action連結276
10.2.5 創建並驗證第三個Action:
geofence277
10.2.6 驗證包含三個Action的
序列279
10.3 本章小結282
第11章 人工智慧在容器雲上的
  實踐283
11.1 Caffe2和Jupyter Notebook介紹283
11.2 在OpenShift集群中部署
   Caffe2284
11.3 運行代碼分析287
11.3.1 整體代碼分析287
11.3.2 運行代碼287
11.4 Open Data Hub的簡介與展示299
11.4.1 Open Data Hub簡介299
11.4.2 Open Data Hub的安裝300
11.4.3 Open Data Hub的基本功能
展示306
11.5 本章小結307
第二部分 OpenShift篇
第12章 集群規劃與管理310
12.1 集群規劃310
12.1.1 裸金屬還是虛擬機311
12.1.2 容量評估315
12.1.3 網路考量316
12.1.4 集群的部署考量319
12.1.5 拉伸集群—跨數據中心
部署322
12.1.6 聯邦集群322
12.2 集群管理和增強338
12.2.1 多集群管理門戶338
12.2.2 集群上套用的災難備份/
恢復策略342
12.2.3 啟動OpenShift上的硬體
加速351
12.3 本章小結363
第13章 OpenShift 4集群離線部署
  詳解與簡化364
13.1 極簡環境規劃364
13.2 使用Helper節點工具輔助安裝
部署365
13.3 安裝配置確認和解析367
13.3.1 DNS手動配置及解析367
13.3.2 負載均衡器手動配置及解析369
13.3.3 WebServer手動配置及解析371
13.3.4 配置離線鏡像倉庫/還原
鏡像371
13.3.5 執行安裝步驟372
13.3.6 完成安裝376
13.3.7 附加操作:內部鏡像庫設定
使用emptydir或者NFS376
13.4 本章小結377
第14章 OpenShift與公有雲378
14.1 OpenShift結合公有雲的收益378
14.2 OpenShift公有雲部署選擇380
14.2.1 基於IaaS380
14.2.2 基於PaaS385
14.3 Azure Red Hat OpenShift385
14.3.1 集群部署與伸縮387
14.3.2 自動化運維387
14.3.3 全球部署387
14.3.4 混合雲架構388
14.3.5 安全與認證389
14.3.6 與Azure服務的集成389
14.3.7 開發者體驗389
14.3.8 聯合技術支持390
14.3.9 付費模式391
14.3.10 OpenShift 4391
14.4 公有雲OpenShift實踐391
14.4.1 因地制宜地選擇架構391
14.4.2 小化基礎架構管理工作量392
14.4.3 構建高可用的部署架構392
14.4.4 Infrastructure as Code393
14.4.5 DevOps393
14.5 本章小結393

作者簡介

魏新宇
紅帽資深解決方案架構師。在IaaS、PaaS方面有豐富的經驗,致力於開源解決方案在企業中的推廣和套用。從售前角度主導了紅帽在金融、汽車行業的PaaS方面的多個項目。曾就職於華為、IBM、VMware,工作涉及領域包括硬體、AIX/Linux、虛擬化、PaaS、DevOps、微服務等。暢銷書《OpenShift在企業中的實踐 PaaS DevOps 微服務》聯合作者。
獲得紅帽RHCA Level 5認證、RHCE認證,以及ITIL V3、Cobit5、TOGAF、C-STAR/TOGAF(鑑定級)相關認證。通過“大魏分享”(david-share)微信公眾號,分享了很多項目實踐經驗。
王洪濤
紅帽副首席架構師,曾在IBM工作多年,紅帽PaaS、JBoss認證工程師。
有20年IT行業從業經驗,先後擔任軟體開發工程師、項目經理、產品經理、架構師等職位,有豐富的容器雲、網際網路、微服務項目實施經驗。服務於國有四大行、人行、石油、海油、航信等大客戶,交付或支持電子商城、報表門戶、網際網路站、PaaS雲平台等項目。
陳 耿
微軟全球黑帶團隊雲原生技術專家, Azure Red Hat OpenShift亞太區產品技術負責人。曾是紅帽中國OpenShift核心團隊成員,是開源容器平台OpenShift在國內落地的領軍人物,長期活躍於國內的雲原生技術社區。著有國內OpenShift領域的開山之作《開源容器雲OpenShift》及《深入淺出Serverless》等作品。

相關詞條

熱門詞條

聯絡我們