《DevOps实践》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:(瑞典)JOAKIMVERONA著;高清华,马博文译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2016
  • ISBN:9787121298127
  • 页数:200 页
图书介绍:本书详细讲解了DevOps的相关知识,可以更好地促进IT团队与软件开发者之间的全方位合作,提高团队效率来确保软件正常的开发和运营。本书的主要内容有:对DevOps和持续交付的简单介绍,DevOps如何影响架构,如何创建企业Java应用程序,如何使用不同的代码库,如何使用一些简单的工具执行代码测试,如何成功配置你的测试,如何监测代码异常以及如何处理日志以及跟踪影响进程的事件。你将会学到:了解DevOps和持续交付的优点以及DevOps如何支持敏捷过程;了解如何将所有系统组装成一个大的整体;安装和熟悉所有你可以用来提高效率的DevOps工具;使用Devops设计一款适合持续部署系统的应用程序;使用不同的选项高效地储蓄和管理代码,例如Git、Gerrit和 Gitlab;配置job来创建CRUD应用样本;使用Jenkins Selenium回归测试测试代码;使用工具来配置你的代码,例如:Puppet、Ansible、Palletops、Chef和Vagrant;使用Nagios、Munin和 Graphite监控代码运行状态;探索Trac(一个跟踪事件的工具)的工作方式。

1DevOps和持续交付简介 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

AW S 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