第Ⅰ部分 增进了解CoreOS
第1章 CoreOS家族介绍
1.1 迎接CoreOS
1.1.1 CoreOS家族
1.1.2 etcd和分布式配置状态
1.1.3 fleet和分布式服务状态
1.1.4 充当CoreOS init系统的systemd
1.1.5 Docker和/或rkt,容器运行时
1.1.6 使用cloud-config进行初始化配置
1.2 将核心服务装配到一起
1.2.1 CoreOS工作流
1.2.2 创建和运行服务
1.2.3 创建单元文件
1.2.4 服务拓扑和故障转移
1.3 本章小结
第2章 在工作站上开始研究
2.1 设置Vagrant
2.1.1 需求和设置
2.1.2 设置Vagrant并且运行它
2.1.3 让CoreOS集群在Vagrant中运行
2.2 用于与CoreOS交互的工具
2.2.1 fleetctl
2.2.2 etcdctl
2.2.3 Toolbox容器
2.2.4 Linux管理员的概念转换
2.3 本章小结
第3章 可预期的故障:CoreOS中的容错
3.1 监控的当前状态
3.1.1 有何不足
3.1.2 CoreOS的处理有何不同
3.2 服务调度与发现
3.2.1 部署生产环境NGINX和Express
3.2.2 将etcd用于配置
3.3 进行一些破坏
3.3.1 模拟机器故障
3.3.2 自修复
3.4 应用程序架构和CoreOS
3.4.1 常见陷阱
3.4.2 新项目和遗留项目
3.4.3 配置管理
3.5 本章小结
第Ⅱ部分 应用程序架构
第4章 生产环境中的CoreOS
4.1 规划和部署选项
4.1.1 Amazon Web服务
4.1.2 使用内部VM基础设施
4.1.3 在裸机上
4.2 与网络有关的注意事项
4.2.1 网络的可编程程度有多大
4.2.2 使用flannel启动和运行
4.3 我们的大容量存储在何处
4.3.1 数据系统背景
4.3.2 NAS和存储外包
4.3.3 Ceph
4.4 本章小结
第5章 应用程序架构和工作流
5.1 应用程序和十二要素方法论
5.1.1 CoreOS的方法
5.1.2 架构检查清单
5.2 软件开发周期
5.2.1 代码库和依赖性
5.2.2 环境逻辑和微服务
5.2.3 应用程序外沿
5.3 本章小结
第6章 Web栈应用程序示例
6.1 示例范围
6.1.1 这个应用程序会做些什么
6.1.2 应用架构概览
6.1.3 目标环境
6.2 设置持久化层
6.2.1 Couchbase设置
6.2.2 设置memcached
6.3 应用程序层
6.3.1 工作线程
6.3.2 Web应用
6.4 由此向何处发展
6.4.1 对故障进行响应
6.4.2 遗漏了什么
6.5 本章小结
第7章 大数据栈
7.1 本章示例的范围
7.1.1 架构的增加项
7.1.2 新的数据源
7.2 新的栈组件
7.2.1 Twitter数据收集器
7.2.2 编制Couchbase
7.2.3 启动和验证
7.2.4 启动工作线程
7.3 破坏我们的栈
7.3.1 监测故障
7.3.2 恢复机器
7.4 本章小结
第Ⅲ部分 生产环境中的CoreOS
第8章 AWS上的CoreOS
8.1 AWS背景介绍
8.1.1 AWS地区和正常运行时间
8.1.2 AWS服务
8.1.3 本章必要条件
8.1.4 CloudFormation模板
8.1.5 AWS中的云配置
8.1.6 部署
8.2 本章小结
第9章 整合到一起:部署
9.1 新的CloudFormation对象
9.1.1 参数和输出
9.1.2 AWS Lambda
9.1.3 API Gateway
9.1.4 更新栈
9.2 部署应用
9.2.1 Web sidekick
9.2.2 初始化部署
9.3 自动化部署
9.3.1 Docker Hub设置
9.3.2 推送变更
9.4 本章小结
第10章 系统管理
10.1 日志记录和备份
10.1.1 设置日志
10.1.2 更新云配置
10.1.3 单元中的awslogs
10.1.4 浏览日志
10.1.5 备份数据
10.2 系统扩展
10.2.1 集群扩展
10.2.2 扩展分区
10.2.3 迁移服务
10.3 CoreOS展望
10.3.1 新的工具
10.3.2 rkt
10.4 本章小结
展开