更新时间:2020-08-13 11:26:11
封面
版权页
译者序
前言
关于评审者
第1章 面向开发人员的Kubernetes简介
1.1 技术需求
1.1.1 安装Docker
1.1.2 安装kubectl
1.1.3 安装Minikube
1.1.4 本章代码
1.2 Kubernetes简介
1.2.1 容器编排平台
1.2.2 Kubernetes发展历史
1.2.3 Kubernetes现状
1.3 Kubernetes架构
1.3.1 控制平面
1.3.2 数据平面
1.4 微服务的完美搭档
1.4.1 微服务打包和部署
1.4.2 微服务公开和发现
1.4.3 微服务安全
1.4.4 微服务验证和授权
1.4.5 微服务升级
1.5 创建本地集群
1.5.1 安装Minikube
1.5.2 探索集群
1.5.3 安装Helm
1.6 小结
1.7 扩展阅读
第2章 微服务入门
2.1 技术需求
2.1.1 在macOS上通过Homebrew安装Go
2.1.2 在其他平台上安装Go
2.1.3 本章代码
2.2 微服务编程——少即是多
2.3 微服务自治
2.4 使用接口和契约
2.5 通过API公开服务
2.6 使用客户端库
2.7 管理依赖
2.8 协调微服务
2.9 利用所有权
2.10 理解康威定律
2.10.1 垂直组织
2.10.2 水平组织
2.10.3 矩阵组织
2.11 跨服务故障排除
2.12 利用共享服务库
2.13 选择源代码控制策略
2.13.1 单体仓库
2.13.2 多仓库
2.13.3 混合模式
2.14 选择数据策略
2.14.1 每个微服务对应一个数据存储
2.14.2 运行分布式查询
2.14.3 使用Saga模式管理跨服务事务
2.15 小结
2.16 扩展阅读
第3章 示例应用程序——Delinkcious
3.1 技术需求
3.1.1 Visual Studio Code
3.1.2 GoLand
3.1.3 LiteIDE
3.1.4 其他选项
3.1.5 本章代码
3.2 为什么选择Go
3.3 认识Go kit
3.3.1 使用Go kit构建微服务
3.3.2 理解传输
3.3.3 理解端点
3.3.4 理解服务
3.3.5 理解中间件
3.3.6 理解客户端
3.3.7 生成样板
3.4 Delinkcious目录结构
3.4.1 cmd子目录
3.4.2 pkg子目录
3.4.3 svc子目录
3.5 Delinkcious微服务
3.5.1 对象模型
3.5.2 服务实现
3.5.3 支持函数实现
3.5.4 通过客户端库调用API
3.6 数据存储
3.7 小结
3.8 扩展阅读
第4章 构建CI/CD流水线
4.1 技术需求
4.2 理解CI/CD流水线
4.3 选择CI/CD流水线工具
4.3.1 Jenkins X
4.3.2 Spinnaker
4.3.3 Travis CI和CircleCI
4.3.4 Tekton
4.3.5 Argo CD
4.3.6 自研工具
4.4 GitOps
4.5 使用CircleCI构建镜像
4.5.1 查看源代码树