作品简介

本书聚焦于云原生和多云环境的持续部署方案,共分13章,内容涉及声明式持续部署概述、Spinnaker基础与实战、金丝雀发布与灰度发布、部署安全、混沌工程及生产化建议等,结构清晰,循序渐进,深入浅出。

在持续部署最佳实践方面,本书重点介绍了如何实施灰度发布、自动金丝雀分析和混沌工程,这些高级部署功能是Netflix公司实现快速而稳定迭代的核心技术。关于如何落地Spinnaker,本书站在人和组织架构的视角,为迁移团队提供了指导性的意见,解决了新技术落地难的问题。

王炜,腾讯云CODING高级架构师,CNCF大使,KubeCon评审委员会成员,开源云原生开发境Nocalhost研发负责人,腾讯云大学讲师。多年来始终从事云原生架构、Docker、Kubernetes、DevOps及微服务领域的研究与实践,擅长开源项目治理和运营。

王振威,腾讯云CODING研发总监,开源云原生开发环境Nocalhost产品负责人。深耕开发者工具领域,实现了CODING代码托管、CI/CD等产品从0到1的突破,在Linux、Golang、Java、Kubernetes、Docker等技术领域有所见长。

作品目录

  • 内容简介
  • 推荐语
  • 推荐序一
  • 推荐序二
  • 自序
  • 前言
  • 01 声明式持续部署概述
  • 1.1 持续交付与持续部署
  • 1.2 命令式与声明式
  • 1.3 常见的声明式系统
  • 1.4 声明式与命令式结合:声明式脚本流水线
  • 1.5 声明式脚本流水线的意义
  • 1.6 本章小结
  • 02 管理云基础设施
  • 2.1 迁移至云原生与混合云的挑战
  • 2.2 组织云基础设施
  • 2.3 流量组织形式
  • 2.4 持续部署工具对比
  • 2.5 本章小结
  • 03 Spinnaker简介
  • 3.1 概念
  • 3.2 应用管理
  • 3.3 应用程序部署
  • 3.4 云提供商
  • 3.5 Spinnaker架构
  • 3.6 本章小结
  • 04 安装Spinnaker
  • 4.1 环境要求
  • 4.2 安装部署
  • 4.3 本章小结
  • 05 Spinnaker基本工作流程:流水线
  • 5.1 管理流水线
  • 5.2 部署制品
  • 5.3 启动参数
  • 5.4 阶段
  • 5.5 触发器
  • 5.6 通知
  • 5.7 流水线表达式
  • 5.8 版本控制和审计
  • 5.9 动态流水线示例
  • 5.10 本章小结
  • 06 深入核心概念
  • 6.1 虚拟机阶段
  • 6.2 Kubernetes阶段
  • 6.3 集成外部系统阶段
  • 6.4 流程控制阶段
  • 6.5 其他阶段
  • 6.6 部署制品类型
  • 6.7 配置触发器
  • 6.8 使用流水线模板
  • 6.9 消息通知
  • 6.10 本章小结
  • 07 自动金丝雀分析
  • 7.1 Spinnaker自动金丝雀发布
  • 7.2 安装组件
  • 7.3 配置金丝雀
  • 7.4 获取金丝雀报告
  • 7.5 工作原理
  • 7.6 最佳实践
  • 7.7 本章小结
  • 08 混沌工程
  • 8.1 理论基础
  • 8.2 为什么需要混沌工程
  • 8.3 五大原则
  • 8.4 如何实现混沌工程
  • 8.5 在Spinnaker中实施混沌工程
  • 8.6 本章小结
  • 09 使部署更加安全
  • 9.1 集群部署
  • 9.2 流水线执行
  • 9.3 自动验证阶段
  • 9.4 审计和可追溯
  • 9.5 本章小结
  • 10 最佳实践
  • 10.1 南北流量自动灰度发布:Kubernetes + Nginx Ingress
  • 10.2 东西流量自动灰度发布:Kubernetes + Service Mesh
  • 10.3 本章小结
  • 11 生产建议
  • 11.1 SSL
  • 11.2 认证
  • 11.3 授权
  • 11.4 Redis配置优化
  • 11.5 横向扩容
  • 11.6 使用MySQL作为存储系统
  • 11.7 监控
  • 11.8 本章小结
  • 12 扩展Spinnaker
  • 12.1 配置开发环境
  • 12.2 编写新阶段
  • 12.3 本章小结
  • 13 迁移到Spinnaker
  • 13.1 如何说服团队
  • 13.2 迁移原则
  • 13.3 本章小结
展开全部