书籍详情

DevOps实践:驭DevOps之力强化技术栈并优化IT运行

DevOps实践:驭DevOps之力强化技术栈并优化IT运行

作者:(瑞典)Joakim Verona(约阿基姆·维罗纳)

出版社:电子工业出版社

出版时间:2016-10-01

ISBN:9787121298127

定价:¥69.00

购买这本书可以去
内容简介
  《DevOps 实践》介绍了DevOps 的起源和概览,并通过一个贯穿全书的例子,从架构开始,到代码的存储、构建、测试、部署、监控,直至流程的跟踪,推荐了许多可用的工具和可行的示范,是一本DevOps实践方面不可多得的参考书籍。《DevOps 实践》面向愿意承担更大责任的开发人员和系统管理员,也很适合愿意更好地支持开发人员的运维人员。无须任何DevOps 知识即可快速上手!
作者简介
  Joakim Verona是一位擅长持续交付和DevOps的咨询师。自1994年以来,在系统开发的所有方面他都曾工作过。他积极地在诸如web系统、多媒体系统和软硬件混合系统等复杂的多层系统上做出了领导实践者的贡献。自2004年以来,他广泛的技能兴趣把他导向了新兴的DevOps领域。Joakim在林雪平理工学院完成了计算机科学的硕士学位。他也曾作为咨询师工作在各种各样的工业领域上,例如银行和财务、电信、工程、印刷和排版,还有游戏开发。他也对敏捷领域感兴趣,是一位Scrum认证的敏捷教练、Scrum产品负责人并拥有Java认证。【译者介绍】高清华:悦跑圈资深研发工程师。工作十多年以来,在简洁代码、自动化测试、持续集成、DevOps等方面都有着丰富的经验。曾在ThoughtWorks任职多年,从事敏捷软件开发、DevOps咨询等工作。马博文,ThoughtWorks Senior Consultant,Senior DevOps,西安DevOps Meetup发起人。AWS Certified Solution Architect/Certified Developer。《Scala Cookbook》译者。熟悉Web/Ruby/Java/Scala开发,目前专注DevOps,持续交付,容器技术,微服务,AWS等。
目录
前言 XIII 1 DevOps 和持续交付简介 1 DevOps 简介 1 多快才算快? 3 敏捷之轮 4 敏捷不只是形式 5 DevOps 和ITIL(信息技术基础架构库) 7 总结 8 2 洞察全局 9 DevOps 流程和持续交付——概览 9 开发人员 10 版本控制系统 12 构建服务器 13 工件库 13 包管理器 13 测试环境 14 预发布/生产 15 发布管理 15 Scrum、看板和交付流水线 16 圆满结束——一个完整的例子 17 识别瓶颈 18 总结 18 3 DevOps 如何影响架构 19 介绍软件架构 19 单块系统场景 20 架构经验法则 21 关注点分离 21 内聚原则 21 耦合 22 回到单块系统场景 22 一个真实例子 22 三层系统 23 表示层 23 业务层 24 数据层 24 处理数据库迁移 24 滚动升级 25 Liquibase 的Hello world 26 变更记录文件 27 pom.xml 文件 27 手动安装 29 微服务 30 小插曲——康威定律 31 如何保持服务接口向上兼容 32 微服务和数据层 33 DevOps、架构和弹性 33 总结 34 4 一切皆代码 35 源代码控制的必要性 35 源代码管理历史 36 角色和代码 37 哪一个源代码管理系统? 38 源代码管理系统迁移之言 39 选择分支策略 39 分支问题域 41 工件版本命名 42 选择一个客户端 43 创建一个基本的Git 服务器 44 共享认证 45 托管Git 服务器 45 大的二进制文件 46 尝试不同的Git 服务器实现 47 中场休息,插播Docker 48 Gerrit 49 安装git-review 包 49 历史修正主义的价值 50 拉请求模型 52 GitLab 52 总结 54 5 构建代码 55 我们为什么要构建代码 55 构建系统的各个方面 56 Jenkins 构建服务器 57 管理构建依赖 60 最终工件 61 用FPM 取巧 62 持续集成 63 持续交付 64 Jenkins 插件 64 托管服务器 66 构建从机 66 主机上的软件 67 触发器 68 任务链和构建流水线 68 Jenkins 文件系统结构概览 69 构建服务器和基础设施即代码 70 按依赖顺序构建 70 构建阶段 71 可选的构建服务器 72 校验质量指标 72 构建状态可视化 73 严肃对待构建错误 74 健壮性 74 总结 75 6 测试代码 77 人工测试 77 自动化测试的优缺点 78 单元测试 80 一般的JUnit 和特殊的JUnit 81 一个JUnit 的例子 82 Mocking 82 测试覆盖率 83 自动化集成测试 84 在自动化测试中使用Docker 84 Arquillian 85 性能测试 85 自动化接受测试 86 自动化GUI 测试 88 在Jenkins 中集成Selenium 测试 89 JavaScript 测试 90 测试后端集成点 91 测试驱动开发 93 REPL(交互式命令行)驱动开发 93 一个完整的自动化测试场景 94 人工测试web 应用 94 运行自动化测试 97 查找缺陷 98 测试巡礼 98 用Docker 处理棘手的依赖 102 总结 103 7 部署代码 105 为什么有这么多的部署系统 105 配置基础操作系统 106 描述集群 107 为系统交付包 107 虚拟化栈 109 在客户端执行代码 111 有关练习的注意事项 111 Puppet 服务器和Puppet 代理 112 Ansible 113 PalletOps 117 用Chef 做部署 117 用SaltStack 做部署 118 从执行的模型来比较Salt、Ansible、Puppet 和PalletOps 120 Vagrant 121 用Docker 做部署 123 对比表 124 云计算解决方案 124 AWS 125 Azure 126 总结 126 8 监控代码 127 Nagios 127 Munin 134 Ganglia 138 Graphite 142 日志处理 144 客户端日志类库 145 ELK 147 总结 149 9 问题跟踪 151 用问题跟踪器做什么? 151 工作流和问题的一些例子 152 我们需要从问题跟踪器里得到什么? 154 问题跟踪器激增所带来的问题 157 所有的跟踪器 158 Bugzilla 158 Trac 164 Redmine 172 GitLab 问题跟踪器 178 Jira 181 总结 183 10 物联网和DevOps 185 IoT 和DevOps 简介 185 从市场的角度看物联网的未来 188 机器到机器的通信 190 物联网的部署影响软件架构 191 物联网部署的安全性 191 好啦,但是DevOps 和物联网有什么关系? 192 DevOps 的物联网设备动手实验室 193 总结 199
猜您喜欢

读书导航