Kubernetes操作器
温馨提示:5折以下图书主要为出版社尾货,大部分为全新(有塑封/无塑封),个别图书品相8-9成新、切口有划线标记、光盘等附件不全详细品相说明>>
- ISBN:9787519856748
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:24cm
- 页数:14,170页
- 出版时间:2021-07-01
- 条形码:9787519856748 ; 978-7-5198-5674-8
本书特色
本书展示了如何通过构建操作器来扩展Kubernetes的控制平面和API,帮助运维团队和应用程序开发人员可靠地部署和管理关键的服务及组件。 操作器是一种打包、部署与管理Kubernetes应用程序的方式。操作器能够为Kubernetes添加应用程序特有的技术,从而降低自动化复杂的有状态应用程序的难度。本书通过鲜活生动的例子向读者展示了操作器的工作方式,以及如何使用操作器框架和SDK构建操作器。 操作器非常熟悉应用程序的内部状态,能够协调应用程序的安装与升级,修复故障,并自动化充满重复性或精心策划的维护工作。本书向读者展示了如何通过构建操作器来扩展Kubernetes的控制平面和API,帮助运维团队和应用程序开发人员可靠地部署和管理关键的服务及组件。 “Kubernetes已然成为世界上功能Z强大的容器编排平台,但其真正的力量隐藏在可扩展API及自动化框架的背后,它们将重新定义未来平台的构建与操作方式。而本书正是我们缺少的手册。” —— Kelsey Hightower Google云技术专家
内容简介
本书主要内容包括: 操作器为Kubernetes带来的创新、运行操作器、构建在Kubernetes接口上的操作器、操作器框架、示例应用程序: 访客网站、适配器操作器、使用操作器SDK构建Go语言的操作器、操作器生命周期管理器等。
目录
前言 . 1
第1 章 操作器为Kubernetes 带来的创新 7
1.1 Kubernetes 的工作方式 .8
1.2 示例:无状态Web 服务器 10
1.3 有状态的应用程序 11
1.4 操作器是软件SRE 11
1.5 操作器的工作原理 12
1.6 如何创建操作器 13
1.7 示例:etcd 操作器 14
1.8 操作器面向的对象 15
1.9 整装待发 16
第2 章 运行操作器 . 17
2.1 建立操作器实验室 17
2.1.1 集群版本要求 18
2.1.2 授权要求18
2.1.3 标准的工具和技术 19
2.1.4 建议的集群配置 20
2.1.5 检查集群的版本 22
2.2 运行一个简单的操作器 .22
2.2.1 常见的示例 .23
2.2.2 获取etcd 操作器的清单 24
2.2.3 CR:自定义API 端点 24
2.2.4 我是谁:定义操作器的服务账号 25
2.2.5 部署etcd 操作器 29
2.2.6 声明etcd 集群 30
2.2.7 练习使用etcd 32
2.2.8 扩展etcd 集群 33
2.2.9 故障与自动恢复 34
2.2.10 升级etcd 集群 36
2.2.11 清理 .39
2.3 小结 .39
第3 章 构建在Kubernetes 接口上的操作器 . 41
3.1 标准伸缩:副本集资源 .41
3.2 自定义资源 43
3.3 自定义控制器 .43
3.4 操作器的范围 .44
3.4.1 命名空间范围 44
3.4.2 集群范围的操作器 45
3.5 授权 .45
3.5.1 服务账号45
3.5.2 角色 46
3.5.3 角色绑定47
3.5.4 集群角色与集群角色绑定 47
3.6 小结 .47
第4 章 操作器框架 . 49
4.1 操作器框架的起源 49
4.2 操作器成熟度模型 50
4.3 操作器SDK .51
4.4 操作器生命周期管理器 .52
4.5 操作器度量 53
4.6 小结 .54
第5 章 示例应用程序:访客网站 55
5.1 应用概况 56
5.2 使用清单安装 .57
5.2.1 部署MySQL 58
5.2.2 后端 60
5.2.3 前端 63
5.3 部署清单 65
5.4 访问访客网站 .65
5.5 清理 .66
5.6 小结 .66
第6 章 适配器操作器 . 67
6.1 Helm 操作器 69
6.1.1 构建操作器 .70
6.1.2 完善CRD 75
6.1.3 检查操作器的权限 75
6.1.4 运行Helm 操作器 75
6.2 Ansible 操作器 76
6.2.1 构建操作器 .77
6.2.2 完善CRD 80
6.2.3 检查操作器的权限 80
6.2.4 运行Ansible 操作器 80
6.3 测试操作器 81
6.4 小结 .82
6.5 补充阅读 82
第7 章 使用操作器SDK 构建Go 语言的操作器 . 83
7.1 初始化操作器 .84
7.2 操作器的范围 .85
7.3 自定义资源定义 87
7.3.1 定义Go 类型 .88
7.3.2 CRD 清单 90
7.4 操作器权限 90
7.5 控制器 91
7.6 编写操作器的技巧 94
7.6.1 检索资源94
7.6.2 创建子资源 .96
7.6.3 删除子资源 .99
7.6.4 子资源的命名 .101
7.6.5 幂等性 101
7.6.6 操作器的影响 .102
7.7 在本地运行操作器 .103
7.8 访客网站示例 104
7.9 小结 105
7.10 补充阅读 106
第8 章 操作器生命周期管理器 107
8.1 OLM 自定义资源 108
8.1.1 集群服务版本 .108
8.1.2 目录源 109
8.1.3 订阅 .109
8.1.4 安装计划 110
8.1.5 操作器组 110
8.2 安装OLM 111
8.3 使用OLM 113
8.3.1 探索操作器 119
8.3.2 删除操作器 121
8.4 OLM 捆绑包的元数据文件 121
8.4.1 自定义资源定义 122
8.4.2 集群服务版本文件 122
8.4.3 包清单文件 123
8.5 编写集群服务版本文件 123
8.5.1 生成文件的骨架 123
8.5.2 元数据 125
8.5.3 操作器拥有的CRD .127
8.5.4 操作器依赖的CRD .131
8.5.5 安装模式132
8.5.6 版本和更新 133
8.6 编写包清单文件 .134
8.7 本地运行 .135
8.7.1 前提条件135
8.7.2 构建OLM 捆绑包 .140
8.7.3 通过OLM 安装操作器 142
8.7.4 测试正在运行的操作器 .144
8.8 访客网站操作器示例 144
8.9 小结 145
8.10 补充阅读 145
第9 章 操作器的理念 147
9.1 每个应用程序的SRE 147
9.2 不劳而获 .148
9.2.1 自动化:计算机自动工作 148
9.2.2 徒劳无功:没有持久价值的工作 .149
9.2.3 扩展的痛点:随着系统扩展不断加重的工作 .149
9.3 操作器:Kubernetes 应用程序可靠性工程 150
9.3.1 管理应用程序的状态 151
9.3.2 发送到软件的黄金信号 .151
9.4 高度成功的操作器的七个习惯 153
9.5 小结 155
第10 章 亲身参与 . 157
10.1 功能请求和报告错误 .158
10.2 贡献代码 159
10.3 共享操作器 .159
10.4 小结 160
附录A 作为集群内部的部署运行操作器 . 161
附录B 自定义资源验证 163
附录C 基于角色的访问控制 . 167
作者介绍 171
封面介绍 171
作者简介
Jason Dobies是红帽的开发推广工程师,美国维拉诺瓦大学软件工程与高级项目的兼职教授。 Joshua Wood是红帽的开发推广工程师,主要从事使用开源软件构建实用程序计算的工作。
-
深度学习的数学
¥43.5¥69.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UG NX 12.0数控编程
¥22.1¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥83.3¥119.0 -
Visual Basic 语言程序设计基础(第6版)
¥32.0¥45.0 -
贝叶斯推理与机器学习
¥139.3¥199.0