AWS云计算实战

副标题:无

作   者:安德烈亚斯·威蒂格

分类号:

ISBN:9787115484864

微信扫一扫,移动浏览光盘

简介


Amazon Web Services(AWS)是亚马逊公司的云计算平台,它提供了一整套基础设施和应用程序服务,可以帮助用户在云中运行几乎一切应用程序。本书介绍了AWS云平台的核心服务,如计算、存储和网络等内容。读者还可以从本书中了解在云上实现自动化、保证安全、实现高可用和海量扩展的系统架构的*实践。本书分4个部分,共14章。本书从介绍AWS的基本概念开始,引入具体的应用示例,让读者对云计算和AWS平台有一个整体的了解;然后讲解如何搭建包含服务器和网络的基础设施;在此基础上,深入介绍如何在云上存取数据,让读者熟悉存储数据的方法和技术;*后展开讨论在AWS上如何设计架构,了解实现高可用性、高容错率和高扩展性的*实践。

目录


第 一部分 AWS云计算起步

第 1章 什么是Amazon Web Services 3

1.1 什么是云计算 4

1.2 AWS可以做什么 4

1.2.1 托管一家网店 5

1.2.2 在专有网络内运行一个Java EE应用 6

1.2.3 满足法律和业务数据归档的需求 7

1.2.4 实现容错的系统架构 8

1.3 如何从使用AWS上获益 9

1.3.1 创新和快速发展的平台 9

1.3.2 解决常见问题的服务 9

1.3.3 启用自动化 10

1.3.4 灵活的容量(可扩展性) 10

1.3.5 为失效而构建(可靠性) 11

1.3.6 缩短上市的时间 11

1.3.7 从规模经济中受益 11

1.3.8 全球化 11

1.3.9 专业的合作伙伴 12

1.4 费用是多少 12

1.4.1 免费套餐 12

1.4.2 账单样例 13

1.4.3 按使用付费的机遇 14

1.5 同类对比 14

1.6 探索AWS服务 16

1.7 与AWS交互 18

1.7.1 管理控制台 19

1.7.2 命令行接口 20

1.7.3 SDK 20

1.7.4 蓝图 21

1.8 创建一个AWS账户 22

1.8.1 注册 22

1.8.2 登录 26

1.8.3 创建一个密钥对 28

1.8.4 创建计费告警 31

1.9 小结 31

第 2章 一个简单示例:5分钟搭建WordPress站点 33

2.1 创建基础设施 33

2.2 探索基础设施 39

2.2.1 资源组 40

2.2.2 Web服务器 41

2.2.3 负载均衡器 42

2.2.4 MySQL数据库 44

2.3 成本是多少 45

2.4 删除基础设施 46

2.5 小结 48

第二部分 搭建包含服务器和网络的虚拟基础设施

第3章 使用虚拟服务器:

EC2 51

3.1 探索虚拟服务器 51

3.1.1 启动虚拟服务器 52

3.1.2 连接到虚拟服务器 60

3.1.3 手动安装和运行软件 63

3.2 监控和调试虚拟服务器 64

3.2.1 显示虚拟服务器的日志 64

3.2.2 监控虚拟服务器的负载 65

3.3 关闭虚拟服务器 66

3.4 更改虚拟服务器的容量 67

3.5 在另一个数据中心开启虚拟服务器 69

3.6 分配一个公有IP地址 72

3.7 向虚拟服务器添加额外的网络接口 74

3.8 优化虚拟服务器的开销 77

3.8.1 预留虚拟服务器 78

3.8.2 对未使用的虚拟服务器竞价 79

3.9 小结 82

第4章 编写基础架构:命令行、SDK和CloudFormation 83

4.1 基础架构即代码 84

4.1.1 自动化和DevOps运作 85

4.1.2 开发一种基础架构语言:JIML 85

4.2 使用命令行接口 88

4.2.1 安装CLI 88

4.2.2 配置CLI 89

4.2.3 使用CLI 94

4.3 使用SDK编程 98

4.3.1 使用SDK控制虚拟服务器:nodecc 98

4.3.2 nodecc如何创建一台服务器 99

4.3.3 nodecc是如何列出服务器并显示服务器的详细信息 101

4.3.4 nodecc如何终止一台服务器 102

4.4 使用蓝图来启动一台虚拟服务器 102

4.4.1 CloudFormation模板解析 103

4.4.2 创建第 一个模板 107

4.5 小结 113

第5章 自动化部署:CloudFormation、Elastic Beanstalk和OpsWorks 114

5.1 在灵活的云环境中部署应用程序 115

5.2 使用CloudFormation在服务器启动时运行脚本 116

5.2.1 在服务器启动时使用用户数据来运行脚本 116

5.2.2 在虚拟服务器上部署OpenSwan作为VPN服务器 116

5.2.3 从零开始,而不是更新已有的服务器 121

5.3 使用Elastic Beanstalk部署一个简单的网站应用 121

5.3.1 Elastic Beanstalk的组成部分 121

5.3.2 使用Elastic Beanstalk部署一个Node.js应用Etherpad 122

5.4 使用OpsWorks部署多层架构应用 126

5.4.1 OpsWorks的组成部分 127

5.4.2 使用OpsWorks部署一个IRC聊天应用 128

5.5 比较部署工具 137

5.5.1 对部署工具分类 138

5.5.2 比较部署服务 138

5.6 小结 139

第6章 保护系统安全:IAM、安全组和VPC 140

6.1 谁该对安全负责 141

6.2 使软件保持* 142

6.2.1 检查安全更新 142

6.2.2 在服务器启动时安装安全更新 143

6.2.3 在服务器运行时安装安全更新 144

6.3 保护AWS账户安全 145

6.3.1 保护AWS账户的root用户安全 146

6.3.2 IAM服务 146

6.3.3 用于授权的策略 147

6.3.4 用于身份认证的用户和用于组织用户的组 149

6.3.5 用于认证AWS的角色 150

6.4 控制进出虚拟服务器的网络流量 152

6.4.1 使用安全组控制虚拟服务器的流量 153

6.4.2 允许ICMP流量 154

6.4.3 允许SSH流量 155

6.4.4 允许来自源IP地址的SSH流量 156

6.4.5 允许来自源安全组的SSH流量 157

6.4.6 用PuTTY进行代理转发 159

6.5 在云中创建一个私有网络:虚拟私有云 160

6.5.1 创建VPC和IGW 162

6.5.2 定义公有堡垒主机子网 162

6.5.3 添加私有Apache网站服务器子网 164

6.5.4 在子网中启动服务器 165

6.5.5 通过NAT服务器从私有子网访问互联网 166

6.6 小结 168

第三部分 在云上保存数据

第7章 存储对象:S3和Glacierr 171

7.1 对象存储的概念 171

7.2 Amazon S3 172

7.3 备份用户的数据 173

7.4 归档对象以优化成本 175

7.4.1 创建S3存储桶配合Glacier使用 175

7.4.2 添加生命周期规则到存储桶 176

7.4.3 测试Glacier和生命周期规则 179

7.5 程序的方式存储对象 181

7.5.1 设置S3存储桶 181

7.5.2 安装使用S3的互联网应用 182

7.5.3 检查使用SDK访问S3的代码 182

7.6 使用S3来实现静态网站托管 184

7.6.1 创建存储桶并上传一个静态网站 185

7.6.2 配置存储桶来实现静态网站托管 185

7.6.3 访问S3上托管的静态网站 186

7.7 对象存储的内部机制 187

7.7.1 确保数据一致性 187

7.7.2 选择合适的键 188

7.8 小结 189

第8章 在硬盘上存储数据:EBS和实例存储 190

8.1 网络附加存储 191

8.1.1 创建EBS卷并挂载到服务器 191

8.1.2 使用弹性数据块存储 192

8.1.3 玩转性能 194

8.1.4 备份数据 195

8.2 实例存储 197

8.2.1 使用实例存储 200

8.2.2 性能测试 200

8.2.3 备份数据 201

8.3 比较块存储解决方案 201

8.4 使用实例存储和EBS卷提供共享文件系统 202

8.4.1 NFS的安全组 203

8.4.2 NFS服务器和卷 204

8.4.3 NFS服务器安装和配置脚本 206

8.4.4 NFS客户端 207

8.4.5 通过NFS共享文件 208

8.5 小结 209

第9章 使用关系数据库服务:RDS 210

9.1 启动一个MySQL数据库 212

9.1.1 用Amazon RDS数据库启动WordPress平台 212

9.1.2 探索使用MySQL引擎的RDS数据库实例 215

9.1.3 Amazon RDS的定价 217

9.2 将数据导入数据库 218

9.3 备份和恢复数据库 220

9.3.1 配置自动快照 220

9.3.2 手动创建快照 221

9.3.3 恢复数据库 222

9.3.4 复制数据库到其他的区域 223

9.3.5 计算快照的成本 224

9.4 控制对数据库的访问 224

9.4.1 控制对RDS数据库的配置的访问控制 225

9.4.2 控制对RDS数据库的网络访问 226

9.4.3 控制数据访问 226

9.5 可以依赖的高可用的数据库 227

9.6 调整数据库的性能 229

9.6.1 增加数据库资源 229

9.6.2 使用读副本来增加读性能 231

9.7 监控数据库 232

9.8 小结 234

第 10章 面向NoSQL数据库服务的编程:DynamoDB 235

10.1 操作DynamoDB 236

10.1.1 管理 236

10.1.2 价格 237

10.1.3 与RDS对比 237

10.2 开发者需要了解的DynamoDB内容 238

10.2.1 表、项目和属性 238

10.2.2 主键 238

10.2.3 与其他NoSQL数据库的对比 239

10.2.4 DynamoDB本地版 239

10.3 编写任务管理应用程序 239

10.4 创建表 241

10.4.1 使用分区键的用户表 242

10.4.2 使用分区键和排序键的任务表 243

10.5 添加数据 245

10.5.1 添加一个用户 246

10.5.2 添加一个任务 247

10.6 获取数据 247

10.6.1 提供键来获取数据 248

10.6.2 使用键和过滤来查询 249

10.6.3 更灵活地使用二级索引查询数据 251

10.6.4 扫描和过滤表数据 253

10.6.5 *终一致地数据提取 254

10.7 删除数据 255

10.8 修改数据 256

10.9 扩展容量 256

10.10 小结 258

第四部分 在AWS上搭架构

第 11章 实现高可用性:可用区、自动扩展以及

CloudWatch 263

11.1 使用CloudWatch恢复失效的服务器 264

11.1.1 建立一个CloudWatch告警 266

11.1.2 基于CloudWatch对虚拟服务器监控与恢复 267

11.2 从数据中心故障中恢复 270

11.2.1 可用区:每个区域有多个数据中心 271

11.2.2 使用自动扩展确保虚拟服务器一直运行 275

11.2.3 在另一个可用区中通过自动扩展恢复失效的虚拟服务器 277

11.2.4 陷阱:网络附加存储恢复 280

11.2.5 陷阱:网络接口恢复 283

11.3 分析灾难恢复的需求 287

11.4 小结 288

第 12章 基础设施解耦:ELB与SQS 289

12.1 利用负载均衡器实现同步解耦 290

12.1.1 使用虚拟服务器设置负载均衡器 291

12.1.2 陷阱:过早地连接到服务器 293

12.1.3 更多使用场景 294

12.2 利用消息队列实现异步解耦 300

12.2.1 将同步过程转换成异步过程 300

12.2.2 URL2PNG应用的架构 301

12.2.3 创建消息队列 302

12.2.4 以程序化的方法处理消息 302

12.2.5 程序化地消费消息 303

12.2.6 SQS消息传递的局限性 306

12.3 小结 307

第 13章 容错设计 308

13.1 使用冗余EC2实例提高可用性 310

13.1.1 冗余可以去除单点故障 310

13.1.2 冗余需要解耦 312

13.2 使代码容错的注意事项 313

13.2.1 让其崩溃,但也重试 313

13.2.2 幂等重试使得容错成为可能 314

13.3 构建容错Web应用:Imagery 316

13.3.1 幂等图片状态机 318

13.3.2 实现容错Web服务 320

13.3.3 实现容错的工作进程来消费SQS消息 326

13.3.4 部署应用 329

13.4 小结 336

第 14章 向上或向下扩展:自动扩展和CloudWatch 337

14.1 管理动态服务池 339

14.2 使用监控指标和时间计划触发扩展 342

14.2.1 基于时间计划的扩展 343

14.2.2 基于CloudWatch参数的扩展 344

14.3 解耦动态服务器池 347

14.3.1 由负载均衡器同步解耦扩展动态服务器池 349

14.3.2 队列异步解耦扩展动态服务器池 354

14.4 小结 356




已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

AWS云计算实战
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon