云原生DevOps指南

云原生DevOps指南
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: (Len Bass) , (John Klein)
2021-08
版次: 1
ISBN: 9787568072328
定价: 89.90
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 292页
字数: 240千字
7人买过
  • 随着云服务、虚拟机、微服务的发展和普及,现在的软件开发任务对程序员的要求越来越高,除了会写代码,懂业务规则,程序员还必须清楚自己的代码是如何部署到云端或虚拟机上的,以及如何借助微服务缩短发布周期,提高部署效率。换句话说,现在的程序员必须掌握一定的DevOps知识。本书是全面系统地讲解了现代软件开发涉及的部署与运维基础知识(包括虚拟化、云、容器、平台安全、微服务、系统配置、布署流水线、灾难恢复等)、流程、常用工具,帮助读者快速胜任软件开发工作。 林·巴斯,澳大利亚国家信息通信技术研究院(NICTA)的高级主任研究员。在此之前,他在卡内基·梅隆大学软件工程研究所(SEI)工作了二十五年。著有获奖图书《软件构架实践》。 译序 III

    前言 VII

    部分 概述 1

    第1章 虚拟化 4

    1.1共享与隔离 5

    1.2 虚拟机 9

    1.3 虚拟机镜像 13

    1.4 容器 15

    1.5 总结 18

    1.6 练习 18

    1.7 讨论 19

    第2章 网络 20

    2.1 简介 20

    2.2 IP地址 23

    2.2.1 分配IP地址 24

    2.2.2 消息传递 27

    2.2.3 互联网协议 28

    2.3 DNS 32

    2.3.1 主机名结构 33

    2.3.2 存活时间 34

    2.3.3 使用DNS来处理过载和故障问题 35

    2.4 端口 36

    2.5 TCP 38

    2.6 IP子网 40

    2.6.1 搭建结构化网络 41

    2.6.2 隧道 44

    2.7 虚拟机和容器网络 45

    2.8 总结 48

    2.9 练习 49

    2.10 讨论 49

    第3章 云 51

    3.1 结构 52

    3.2 云故障 58

    3.3 扩展服务容量及可用性 60

    3.3.1 负载均衡器是如何工作的 61

    3.3.2 检测和管理服务实例故障 63

    3.3.3 状态管理 66

    3.4 分布式协同 70

    3.4.1 分布式系统中的时间协同 70

    3.4.2 通过网络实现时间同步 71

    3.4.3 数据 72

    3.5 弹性伸缩 76

    3.6 总结 80

    3.7 练习 81

    3.8 讨论 81

    第4章 容器管理 83

    4.1 容器和虚拟机 84

    4.2 容器的可移植性 86

    4.3 容器镜像仓库 86

    4.4 容器集群 87

    4.4.1 集群编排 90

    4.4.2 容器伸缩 91

    4.5 无服务器架构 92

    4.6 容器技术的发展 94

    4.7 总结 95

    4.8 练习 96

    4.9 讨论 96

    第5章 基础设施的安全性 97

    5.1 安全工作的分类 98

    5.2 防护:密码学 99

    5.3 防护:密钥交换 103

    5.4 防护:认证 105

    5.5 防护:公钥基础设施和证书 108

    5.6 防护:传输层安全性 109

    5.7 防护:安全的Shell 112

    5.8 防护:安全文件传输 114

    5.9 检测:入侵检测 115

    5.10 总结 117

    5.11 练习 117

    5.12 讨论 118

    第二部分介绍 119

    第6章 微服务 122

    6.1 微服务架构的定义 124

    6.2 微服务和团队 126

    6.3 微服务质量 127

    6.3.1 可用性 128

    6.3.2 版本兼容性 130

    6.3.3 可维护性 132

    6.3.4 性能 133

    6.3.5 可重用性 135

    6.3.6 可伸缩性 137

    6.3.7 安全性 138

    6.4 服务等级目标 140

    6.5 微服务环境 141

    6.5.1 微服务发现 142

    6.5.2 在分布式系统中发出请求 143

    6.5.3 结构化请求和响应数据 147

    6.5.4 服务网格 150

    6.5.5 微服务和容器 153

    6.5.6 为部署而设计 154

    6.5.7 预防故障 155

    6.6 总结 156

    6.7 练习 157

    6.8 讨论 158

    第7章 管理系统配置 158

    7.1 版本控制 160

    7.2 配置管理工具 163

    7.3 配置参数 167

    7.4 管理机密 169

    7.5 总结 171

    7.6 练习 172

    7.7 讨论 172

    第8章 部署流水线 172

    8.1 部署流水线概览 174

    8.2 环境 176

    8.2.1 环境的要求 177

    8.2.2 环境的生命周期 180

    8.2.3 环境生命周期管理的权衡 182

    8.2.4 不同类型的部署流水线和环境 183

    8.3 开发环境 184

    8.3.1 构建 184

    8.3.2 测试 185

    8.3.3 制品 186

    8.3.4 发布 186

    8.3.5 销毁 186

    8.4 集成环境 187

    8.4.1 构建 188

    8.4.2 测试 188

    8.4.3 制品 189

    8.4.4 发布 190

    8.4.5 销毁 190

    8.5 预发环境 190

    8.5.1 构建 191

    8.5.2 测试 191

    8.5.3 部署到生产环境 195

    8.5.4 销毁 196

    8.6 部署策略 196

    8.6.1 全量部署策略 198

    8.6.2 灰度发布 204

    8.6.3 回滚 205

    8.7 总结 206

    8.8 练习 207

    8.9 讨论 208

    第9章 发布以后 209

    9.1 谁开发,谁运维 210

    9.2 日志 211

    指标 216

    9.3 隔离/定位问题 219

    9.4 生产环境测试 220

    9.5 给安全漏洞打补丁 222

    9.6 总结 223

    9.7 练习 224

    9.8 讨论 224

    第10章 灾难恢复 225

    10.1 灾难恢复计划 226

    10.1.1 RPO和RTO 227

    10.1.2 应用优先级 228

    10.1.3 数据中心 229

    10.2 2~4级应用程序的数据管理策略 233

    10.3 1级应用程序数据管理 235

    10.4 大数据 237

    10.5 备份数据中心的软件 237

    10.5.1 2~4级应用程序 238

    10.5.2 1级应用程序 239

    10.5.3 其他数据和软件 239

    10.6 故障转移 240

    10.6.1 手动故障转移 240

    10.6.2 自动化故障转移 241

    10.6.3 测试故障转移过程 242

    10.7 总结 243

    10.8 练习 244

    10.9 讨论 244

    第11章 安全开发 245

    11.1 识别并保护重要数据和资源 246

    11.2 管理访问服务的凭据 250

    11.3 管理个人凭据 254

    11.4 软件供应链和软件保障 256

    11.5 缺陷和漏洞 258

    11.6 安全漏洞的发现和打补丁修复 261

    11.7 总结 263

    11.8 练习 264

    11.9 讨论 264

    第12章 写在后 265

    12.1 部署和运维的重要性 265

    12.2 衡量DevOps的有效性 267

    12.3 站点可靠性工程 269

    12.4 移动和IoT设备 271

    12.5 颠覆性技术 272 
  • 内容简介:
    随着云服务、虚拟机、微服务的发展和普及,现在的软件开发任务对程序员的要求越来越高,除了会写代码,懂业务规则,程序员还必须清楚自己的代码是如何部署到云端或虚拟机上的,以及如何借助微服务缩短发布周期,提高部署效率。换句话说,现在的程序员必须掌握一定的DevOps知识。本书是全面系统地讲解了现代软件开发涉及的部署与运维基础知识(包括虚拟化、云、容器、平台安全、微服务、系统配置、布署流水线、灾难恢复等)、流程、常用工具,帮助读者快速胜任软件开发工作。
  • 作者简介:
    林·巴斯,澳大利亚国家信息通信技术研究院(NICTA)的高级主任研究员。在此之前,他在卡内基·梅隆大学软件工程研究所(SEI)工作了二十五年。著有获奖图书《软件构架实践》。
  • 目录:
    译序 III

    前言 VII

    部分 概述 1

    第1章 虚拟化 4

    1.1共享与隔离 5

    1.2 虚拟机 9

    1.3 虚拟机镜像 13

    1.4 容器 15

    1.5 总结 18

    1.6 练习 18

    1.7 讨论 19

    第2章 网络 20

    2.1 简介 20

    2.2 IP地址 23

    2.2.1 分配IP地址 24

    2.2.2 消息传递 27

    2.2.3 互联网协议 28

    2.3 DNS 32

    2.3.1 主机名结构 33

    2.3.2 存活时间 34

    2.3.3 使用DNS来处理过载和故障问题 35

    2.4 端口 36

    2.5 TCP 38

    2.6 IP子网 40

    2.6.1 搭建结构化网络 41

    2.6.2 隧道 44

    2.7 虚拟机和容器网络 45

    2.8 总结 48

    2.9 练习 49

    2.10 讨论 49

    第3章 云 51

    3.1 结构 52

    3.2 云故障 58

    3.3 扩展服务容量及可用性 60

    3.3.1 负载均衡器是如何工作的 61

    3.3.2 检测和管理服务实例故障 63

    3.3.3 状态管理 66

    3.4 分布式协同 70

    3.4.1 分布式系统中的时间协同 70

    3.4.2 通过网络实现时间同步 71

    3.4.3 数据 72

    3.5 弹性伸缩 76

    3.6 总结 80

    3.7 练习 81

    3.8 讨论 81

    第4章 容器管理 83

    4.1 容器和虚拟机 84

    4.2 容器的可移植性 86

    4.3 容器镜像仓库 86

    4.4 容器集群 87

    4.4.1 集群编排 90

    4.4.2 容器伸缩 91

    4.5 无服务器架构 92

    4.6 容器技术的发展 94

    4.7 总结 95

    4.8 练习 96

    4.9 讨论 96

    第5章 基础设施的安全性 97

    5.1 安全工作的分类 98

    5.2 防护:密码学 99

    5.3 防护:密钥交换 103

    5.4 防护:认证 105

    5.5 防护:公钥基础设施和证书 108

    5.6 防护:传输层安全性 109

    5.7 防护:安全的Shell 112

    5.8 防护:安全文件传输 114

    5.9 检测:入侵检测 115

    5.10 总结 117

    5.11 练习 117

    5.12 讨论 118

    第二部分介绍 119

    第6章 微服务 122

    6.1 微服务架构的定义 124

    6.2 微服务和团队 126

    6.3 微服务质量 127

    6.3.1 可用性 128

    6.3.2 版本兼容性 130

    6.3.3 可维护性 132

    6.3.4 性能 133

    6.3.5 可重用性 135

    6.3.6 可伸缩性 137

    6.3.7 安全性 138

    6.4 服务等级目标 140

    6.5 微服务环境 141

    6.5.1 微服务发现 142

    6.5.2 在分布式系统中发出请求 143

    6.5.3 结构化请求和响应数据 147

    6.5.4 服务网格 150

    6.5.5 微服务和容器 153

    6.5.6 为部署而设计 154

    6.5.7 预防故障 155

    6.6 总结 156

    6.7 练习 157

    6.8 讨论 158

    第7章 管理系统配置 158

    7.1 版本控制 160

    7.2 配置管理工具 163

    7.3 配置参数 167

    7.4 管理机密 169

    7.5 总结 171

    7.6 练习 172

    7.7 讨论 172

    第8章 部署流水线 172

    8.1 部署流水线概览 174

    8.2 环境 176

    8.2.1 环境的要求 177

    8.2.2 环境的生命周期 180

    8.2.3 环境生命周期管理的权衡 182

    8.2.4 不同类型的部署流水线和环境 183

    8.3 开发环境 184

    8.3.1 构建 184

    8.3.2 测试 185

    8.3.3 制品 186

    8.3.4 发布 186

    8.3.5 销毁 186

    8.4 集成环境 187

    8.4.1 构建 188

    8.4.2 测试 188

    8.4.3 制品 189

    8.4.4 发布 190

    8.4.5 销毁 190

    8.5 预发环境 190

    8.5.1 构建 191

    8.5.2 测试 191

    8.5.3 部署到生产环境 195

    8.5.4 销毁 196

    8.6 部署策略 196

    8.6.1 全量部署策略 198

    8.6.2 灰度发布 204

    8.6.3 回滚 205

    8.7 总结 206

    8.8 练习 207

    8.9 讨论 208

    第9章 发布以后 209

    9.1 谁开发,谁运维 210

    9.2 日志 211

    指标 216

    9.3 隔离/定位问题 219

    9.4 生产环境测试 220

    9.5 给安全漏洞打补丁 222

    9.6 总结 223

    9.7 练习 224

    9.8 讨论 224

    第10章 灾难恢复 225

    10.1 灾难恢复计划 226

    10.1.1 RPO和RTO 227

    10.1.2 应用优先级 228

    10.1.3 数据中心 229

    10.2 2~4级应用程序的数据管理策略 233

    10.3 1级应用程序数据管理 235

    10.4 大数据 237

    10.5 备份数据中心的软件 237

    10.5.1 2~4级应用程序 238

    10.5.2 1级应用程序 239

    10.5.3 其他数据和软件 239

    10.6 故障转移 240

    10.6.1 手动故障转移 240

    10.6.2 自动化故障转移 241

    10.6.3 测试故障转移过程 242

    10.7 总结 243

    10.8 练习 244

    10.9 讨论 244

    第11章 安全开发 245

    11.1 识别并保护重要数据和资源 246

    11.2 管理访问服务的凭据 250

    11.3 管理个人凭据 254

    11.4 软件供应链和软件保障 256

    11.5 缺陷和漏洞 258

    11.6 安全漏洞的发现和打补丁修复 261

    11.7 总结 263

    11.8 练习 264

    11.9 讨论 264

    第12章 写在后 265

    12.1 部署和运维的重要性 265

    12.2 衡量DevOps的有效性 267

    12.3 站点可靠性工程 269

    12.4 移动和IoT设备 271

    12.5 颠覆性技术 272 
查看详情
12
相关图书 / 更多
云原生DevOps指南
云原生测试实战
孙高飞
云原生DevOps指南
云原生Kubernetes全栈架构师实战
杜宽
云原生DevOps指南
云原生安全技术实践指南
张福
云原生DevOps指南
云原生开发实践(计算机技术开发与应用丛书)
高尚衡 著
云原生DevOps指南
云原生安全
李学峰 编著
云原生DevOps指南
云原生时代的CoreDNS学习指南
[美]约翰·贝拉马里奇(John Belamaric);[美]克里凯特·刘(Cricket Liu)
云原生DevOps指南
云原生构建数字世界
丁振海 宋立桓
云原生DevOps指南
云原生构建:微服务、容器化与容器编排
邹炎;谢邵虎;朱明杰
云原生DevOps指南
云原生时代的可观测系统最佳实战
罗梦婷 蒲实 著
云原生DevOps指南
云原生技术中台:从分布式到云平台设计
陈涛 索海燕
云原生DevOps指南
云原生落地:企业级DevOps实践
应阔浩 李建宇 付天时 赵耀 著
云原生DevOps指南
云原生应用架构:微服务开发最佳实战
FreeWheel核心业务系统开发团队
您可能感兴趣 / 更多
云原生DevOps指南
软件构架实践(影印版第2版)
林·巴斯(Len Bass) 著