Amazon Web Services云計(jì)算實(shí)戰(zhàn)(第2版)
定 價(jià):129.8 元
- 作者:[德] 邁克爾·威蒂格(Michael Wittig) [德]安德烈亞斯·威蒂格(Andreas Wittig)
- 出版時(shí)間:2023/5/1
- ISBN:9787115609298
- 出 版 社:人民郵電出版社
- 中圖法分類:F713.36
- 頁(yè)碼:434
- 紙張:
- 版次:02
- 開(kāi)本:16開(kāi)
Amazon Web Services(AWS)是Amazon公司的云計(jì)算平臺(tái),它提供了一整套基礎(chǔ)設(shè)施和應(yīng)用服務(wù),可以幫助用戶在云中運(yùn)行幾乎一切應(yīng)用。本書介紹AWS云平臺(tái)的核心服務(wù),如計(jì)算、存儲(chǔ)網(wǎng)絡(luò)等內(nèi)容。讀者可以從本書了解在云上實(shí)現(xiàn)自動(dòng)化,保證安全,實(shí)現(xiàn)高可用、容錯(cuò)和海量擴(kuò)展的系統(tǒng)架構(gòu)的best實(shí)踐。
本書分為4部分,共17章。本書從介紹AWS的基本概念開(kāi)始,引入具體的應(yīng)用示例,讓讀者對(duì)云計(jì)算和AWS平臺(tái)有整體的了解;然后講解如何搭建包含虛擬機(jī)和網(wǎng)絡(luò)的基礎(chǔ)設(shè)施;在此基礎(chǔ)上,深入介紹如何在云上存取數(shù)據(jù),讓讀者熟悉存儲(chǔ)數(shù)據(jù)的方法和技術(shù);最后展開(kāi)討論在AWS上如何設(shè)計(jì)架構(gòu),讓讀者了解實(shí)現(xiàn)高可用性、高容錯(cuò)和高擴(kuò)展性的best實(shí)踐。
本書第2版全面修訂了第1版中的各章內(nèi)容,并涵蓋AWS的新添加的服務(wù),包括使用AWS Lambda的無(wú)服務(wù)器基礎(chǔ)設(shè)施,與EFS共享數(shù)據(jù)以及使用Amazon ElastiCache的內(nèi)存數(shù)據(jù)存儲(chǔ)等。
1.AWS云計(jì)算平臺(tái)的實(shí)戰(zhàn)指南:涵蓋了AWS云平臺(tái)的核心服務(wù)、best實(shí)踐以及如何在云上構(gòu)建系統(tǒng)架構(gòu)等內(nèi)容。是一本適合開(kāi)發(fā)人員、IT運(yùn)維工程師和企業(yè)用戶使用AWS的實(shí)戰(zhàn)指南。
2.作者經(jīng)驗(yàn)豐富:邁克爾·威蒂格和安德烈亞斯·威蒂格是AWS認(rèn)證的專業(yè)級(jí)AWS解決方案架構(gòu)師和DevOps工程師,擁有豐富的AWS遷移和運(yùn)行工作負(fù)載的顧問(wèn)經(jīng)驗(yàn)
3.新版重磅升級(jí):第2版修訂了第1版中的各章內(nèi)容,并涵蓋了AWS新添加的服務(wù),如使用AWS Lambda的無(wú)服務(wù)器基礎(chǔ)設(shè)施,與EFS共享數(shù)據(jù)等。讀者可以了解到新的AWS技術(shù)發(fā)展?fàn)顩r,掌握新的AWS技能。
4.理論結(jié)合實(shí)踐:通過(guò)具體應(yīng)用示例,讓讀者深入了解云計(jì)算和AWS平臺(tái),同時(shí)注重講解如何搭建包含虛擬機(jī)和網(wǎng)絡(luò)的基礎(chǔ)設(shè)施,讓讀者了解實(shí)現(xiàn)高可用性、高容錯(cuò)和高擴(kuò)展性的best實(shí)踐。
6.適合不同讀者群體:開(kāi)發(fā)人員、IT運(yùn)維工程師和企業(yè)用戶使用AWS的實(shí)戰(zhàn)指南。無(wú)論你是初學(xué)者還是有經(jīng)驗(yàn)的AWS用戶,本書都可以幫助你快速了解AWS的核心服務(wù)和best實(shí)踐,提高工作效率和質(zhì)量。
邁克爾·威蒂格(Michael Wittig)和安德烈亞斯·威蒂格(Andreas Wittig)是專注于Amazon Web Services(AWS)的軟件工程師和DevOps工程師。2013年,這對(duì)兄弟將一家德國(guó)銀行的整個(gè)IT基礎(chǔ)設(shè)施遷移到了AWS上。這在德國(guó)銀行界算是首例。自2015年以來(lái),他們一直擔(dān)任顧問(wèn),幫助客戶在AWS上遷移和運(yùn)行工作負(fù)載。他們專注于基礎(chǔ)設(shè)施即代碼、持續(xù)部署、無(wú)服務(wù)器、Docker和安全等領(lǐng)域,也在Amazon云上構(gòu)建SaaS產(chǎn)品。兩人都是AWS認(rèn)證的專業(yè)級(jí)AWS解決方案架構(gòu)師(AWS Certified Solutions Architect-Professional)以及AWS認(rèn)證的專業(yè)級(jí)DevOps工程師(AWS Certified DevOps Engineer-Professional)。此外,他們還喜歡通過(guò)本書、博客以及在線和現(xiàn)場(chǎng)培訓(xùn)(如AWS in Motion)與他人分享知識(shí),教授他人如何使用AWS。
第 一部分 AWS 云計(jì)算起步
第 1 章 什么是 AWS 3
1.1 什么是云計(jì)算 4
1.2 AWS 可以做什么 4
1.2.1 托管一家網(wǎng)店 5
1.2.2 在專用網(wǎng)絡(luò)內(nèi)運(yùn)行 Java EE 應(yīng)用 6
1.2.3 實(shí)施高可用的系統(tǒng) 7
1.2.4 從批量處理基礎(chǔ)設(shè)施的低成本中獲益 8
1.3 如何從使用 AWS 上獲益 9
1.3.1 創(chuàng)新和快速發(fā)展的平臺(tái) 9
1.3.2 解決常見(jiàn)問(wèn)題的服務(wù) 9
1.3.3 啟用自動(dòng)化 9
1.3.4 靈活的容量(可擴(kuò)展性) 10
1.3.5 為失效而構(gòu)建(可靠性) 10
1.3.6 縮短上市的時(shí)間 10
1.3.7 從規(guī)模經(jīng)濟(jì)中受益 11
1.3.8 全球基礎(chǔ)設(shè)施 11
1.3.9 專業(yè)的合作伙伴 11
1.4 費(fèi)用是多少 11
1.4.1 免費(fèi)套餐 12
1.4.2 賬單樣例 12
1.4.3 按使用付費(fèi)的機(jī)遇 13
1.5 同類對(duì)比 14
1.6 探索 AWS 服務(wù) 14
1.7 與 AWS 交互 17
1.7.1 管理控制臺(tái) 18
1.7.2 CLI 18
1.7.3 SDK 19
1.7.4 藍(lán)圖 20
1.8 創(chuàng)建一個(gè) AWS 賬戶 20
1.8.1 注冊(cè) 21
1.8.2 登錄 25
1.8.3 創(chuàng)建一個(gè)密鑰對(duì) 26
1.9 創(chuàng)建賬單警報(bào)跟蹤 AWS 賬單 29
1.10 小結(jié) 32
第 2 章 一個(gè)簡(jiǎn)單示例:5 分鐘搭建WordPress 站點(diǎn) 33
2.1 創(chuàng)建基礎(chǔ)設(shè)施 34
2.2 探索基礎(chǔ)設(shè)施 40
2.2.1 資源組 40
2.2.2 虛擬機(jī) 41
2.2.3 負(fù)載均衡器 43
2.2.4 MySQL 數(shù)據(jù)庫(kù) 44
2.2.5 網(wǎng)絡(luò)文件系統(tǒng) 46
2.3 成本是多少 47
2.4 刪除基礎(chǔ)設(shè)施 48
2.5 小結(jié) 49
第二部分 搭建由計(jì)算機(jī)和網(wǎng)絡(luò)組成的虛擬基礎(chǔ)設(shè)施
第 3 章 使用虛擬機(jī):EC2 53
3.1 探索虛擬機(jī) 53
3.1.1 啟動(dòng)虛擬機(jī) 54
3.1.2 連接到虛擬機(jī) 65
3.1.3 手動(dòng)安裝和運(yùn)行軟件 68
3.2 監(jiān)控和調(diào)試虛擬機(jī) 69
3.2.1 顯示虛擬機(jī)的日志 69
3.2.2 監(jiān)控虛擬機(jī)的負(fù)載 70
3.3 關(guān)閉虛擬機(jī) 71
3.4 更改虛擬機(jī)的大小 72
3.5 在另一個(gè)數(shù)據(jù)中心啟動(dòng)虛擬機(jī) 75
3.6 分配一個(gè)公有 IP 地址 78
3.7 向虛擬機(jī)添加額外的網(wǎng)絡(luò)接口 80
3.8 優(yōu)化虛擬機(jī)的開(kāi)銷 84
3.8.1 預(yù)留虛擬機(jī) 85
3.8.2 對(duì)未用虛擬機(jī)出價(jià) 87
3.9 小結(jié) 91
第 4 章 編寫基礎(chǔ)設(shè)施: 命令行、SDK 和 CloudFormation 92
4.1 基礎(chǔ)設(shè)施即代碼 94
4.1.1 自動(dòng)化和 DevOps 遷移 94
4.1.2 開(kāi)發(fā)一種基礎(chǔ)設(shè)施語(yǔ)言:JIML 94
4.2 使用 CLI 98
4.2.1 為什么要自動(dòng)化 98
4.2.2 安裝 CLI 98
4.2.3 配置 CLI 99
4.2.4 使用 CLI 102
4.3 使用 SDK 編程 106
4.3.1 使用 SDK 控制虛擬機(jī):nodecc 106
4.3.2 nodecc 如何創(chuàng)建一臺(tái)虛擬機(jī) 107
4.3.3 nodecc 如何列出虛擬機(jī)并顯示虛擬機(jī)的詳細(xì)信息 108
4.3.4 nodecc 如何終止一臺(tái)虛擬機(jī) 109
4.4 使用藍(lán)圖來(lái)啟動(dòng)一臺(tái)虛擬機(jī) 110
4.4.1 CloudFormation 模板解析 111
4.4.2 創(chuàng)建第 一個(gè)模板 114
4.5 小結(jié) 120
第 5 章 自動(dòng)化部署: CloudFormation、 Elastic Beanstalk 和 OpsWorks 121
5.1 在靈活的云環(huán)境中部署應(yīng)用 122
5.2 比較部署工具 123
5.2.1 對(duì)部署工具進(jìn)行分類 123
5.2.2 比較部署服務(wù) 123
5.3 使用 AWS CloudFormation 創(chuàng)建虛擬機(jī)并在啟動(dòng)時(shí)運(yùn)行部署腳本 124
5.3.1 在服務(wù)器啟動(dòng)時(shí)用用戶數(shù)據(jù)來(lái)運(yùn)行腳本 125
5.3.2 將 VPN 服務(wù)器 OpenSwan 部署到虛擬機(jī) 125
5.3.3 從零開(kāi)始而不是更新 129
5.4 使用 AWS Elastic Beanstalk 部署簡(jiǎn)單的 Web 應(yīng)用 130
5.4.1 Elastic Beanstalk 組件 130
5.4.2 使用 Elastic Beanstalk 部署一個(gè) Node.js 應(yīng)用Etherpad 131
5.5 使用 AWS OpsWorks Stacks 部署多層應(yīng)用 135
5.5.1 AWS OpsWorks Stacks 的組件 136
5.5.2 使用 AWS OpsWorks Stacks 部署 IRC 聊天應(yīng)用 138
5.6 小結(jié) 147
第 6 章 保護(hù)系統(tǒng)安全:IAM、 安全組和 VPC 148
6.1 誰(shuí)該對(duì)安全負(fù)責(zé) 149
6.2 使軟件保持最新 150
6.2.1 檢查安全更新 150
6.2.2 在虛擬機(jī)啟動(dòng)時(shí)安裝安全更新 151
6.2.3 在正在運(yùn)行的虛擬機(jī)上安裝安全更新 152
6.3 保護(hù) AWS 賬戶安全 153
6.3.1 保護(hù) AWS 賬戶的 root 用戶安全 154
6.3.2 AWS 身份和訪問(wèn)管理 155
6.3.3 使用 IAM 策略定義權(quán)限 156
6.3.4 用戶用于身份認(rèn)證,組用于組織用戶 158
6.3.5 使用角色認(rèn)證AWS資源 159
6.4 控制進(jìn)出虛擬機(jī)的網(wǎng)絡(luò)流量 161
6.4.1 使用安全組控制虛擬機(jī)的流量 162
6.4.2 允許 ICMP 流量 163
6.4.3 允許 SSH 流量 164
6.4.4 允許來(lái)自源 IP 地址的SSH 流量 165
6.4.5 允許來(lái)自源安全組的SSH 流量 166
6.5 在云中創(chuàng)建一個(gè)專用網(wǎng)絡(luò):亞馬遜虛擬私有云 170
6.5.1 創(chuàng)建VPC和互聯(lián)網(wǎng)網(wǎng)關(guān) 171
6.5.2 定義公有堡壘主機(jī)子網(wǎng) 172
6.5.3 添加私有 Apache Web 服務(wù)器子網(wǎng) 174
6.5.4 在子網(wǎng)中啟動(dòng)虛擬機(jī) 175
6.5.5 通過(guò) NAT 網(wǎng)關(guān)從私有子網(wǎng)訪問(wèn)互聯(lián)網(wǎng) 176
6.6 小結(jié) 178
第 7 章 用 Lambda 自動(dòng)化 操作任務(wù) 179
7.1 用 AWS Lambda 運(yùn)行代碼 180
7.1.1 什么是無(wú)服務(wù)器 180
7.1.2 在 AWS Lambda 上運(yùn)行代碼 180
7.1.3 比較 AWS Lambda 與虛擬機(jī)(Amazon EC2) 181
7.2 用 AWS Lambda 構(gòu)建網(wǎng)站健康狀況檢查 182
7.2.1 創(chuàng)建 Lambda 函數(shù) 183
7.2.2 用 CloudWatch 搜索 Lambda 函數(shù)的日志 188
7.2.3 用 CloudWatch 指標(biāo)和警報(bào)監(jiān)視 Lambda 函數(shù) 190
7.2.4 訪問(wèn) VPC 中的端點(diǎn) 194
7.3 自動(dòng)添加包含 EC2 實(shí)例所有者的標(biāo)簽 196
7.3.1 事件驅(qū)動(dòng):訂閱 CloudWatch 事件 196
7.3.2 在 Python 中實(shí)現(xiàn) Lambda 函數(shù) 199
7.3.3 用無(wú)服務(wù)器應(yīng)用模型設(shè)置Lambda 函數(shù) 200
7.3.4 授權(quán) Lambda 函數(shù)用具有IAM 角色的其他 AWS 服務(wù) 201
7.3.5 用 SAM 部署 Lambda 函數(shù) 202
7.4 用 AWS Lambda 還能做什么 203
7.4.1 AWS Lambda 有哪些限制 203
7.4.2 無(wú)服務(wù)器定價(jià)模式的影響 203
7.4.3 使用場(chǎng)景:Web 應(yīng)用 204
7.4.4 使用場(chǎng)景:數(shù)據(jù)處理 205
7.4.5 使用場(chǎng)景:物聯(lián)網(wǎng)后端 206
7.5 小結(jié) 206
第三部分 在云中存儲(chǔ)數(shù)據(jù)
第 8 章 存儲(chǔ)對(duì)象:S3 和 Glacier 211
8.1 什么是對(duì)象存儲(chǔ) 212
8.2 Amazon S3 212
8.3 使用 AWS CLI 在 S3 上備份數(shù)據(jù) 214
8.4 歸檔對(duì)象以優(yōu)化成本 216
8.4.1 創(chuàng)建 S3 存儲(chǔ)桶來(lái)配合Glacier 使用 217
8.4.2 添加生命周期規(guī)則到存儲(chǔ)桶 218
8.4.3 實(shí)驗(yàn) Glacier 和生命周期規(guī)則 220
8.5 以編程的方式存儲(chǔ)對(duì)象 222
8.5.1 設(shè)置 S3 存儲(chǔ)桶 224
8.5.2 安裝使用 S3 的Web 應(yīng)用 224
8.5.3 檢查使用 SDK 訪問(wèn) S3 的代碼 224
8.6 使用 S3 來(lái)實(shí)現(xiàn)靜態(tài)網(wǎng)站托管 226
8.6.1 創(chuàng)建存儲(chǔ)桶并上傳一個(gè)靜態(tài)網(wǎng)站 227
8.6.2 配置存儲(chǔ)桶來(lái)實(shí)現(xiàn)靜態(tài)網(wǎng)站托管 227
8.6.3 訪問(wèn) S3 上托管的網(wǎng)站 228
8.7 使用 S3 的最佳實(shí)踐 229
8.7.1 確保數(shù)據(jù)一致性 229
8.7.2 選擇正確的鍵 230
8.8 小結(jié) 231
第 9 章 在硬盤上存儲(chǔ)數(shù)據(jù): EBS 和實(shí)例存儲(chǔ) 232
9.1 彈性塊存儲(chǔ):通過(guò)網(wǎng)絡(luò)附加的持久的塊級(jí)別存儲(chǔ) 233
9.1.1 創(chuàng)建 EBS 卷并將其附加到EC2 實(shí)例 234
9.1.2 使用 EBS 234
9.1.3 調(diào)整性能 236
9.1.4 使用 EBS 快照備份數(shù)據(jù) 238
9.2 實(shí)例存儲(chǔ):臨時(shí)塊存儲(chǔ) 240
9.2.1 使用實(shí)例存儲(chǔ) 243
9.2.2 測(cè)試性能 244
9.2.3 備份數(shù)據(jù) 244
9.3 小結(jié) 245
第 10 章 在機(jī)器之間共享數(shù)據(jù)卷:EFS 246
10.1 創(chuàng)建文件系統(tǒng) 248
10.1.1 用 CloudFormation 描述文件系統(tǒng) 248
10.1.2 定價(jià) 249
10.2 創(chuàng)建安裝目標(biāo) 249
10.3 在 EC2 實(shí)例上安裝EFS 共享 251
10.4 在 EC2 實(shí)例之間共享文件 254
10.5 調(diào)整性能 255
10.5.1 性能模式 255
10.5.2 預(yù)期吞吐量 256
10.6 監(jiān)視文件系統(tǒng) 256
10.6.1 是否應(yīng)使用最大 I/O 性能模式 257
10.6.2 監(jiān)控你的允許吞吐量 258
10.6.3 監(jiān)控你的使用情況 259
10.7 備份數(shù)據(jù) 259
10.7.1 使用 CloudFormation 描述EBS 卷 260
10.7.2 使用 EBS 卷 260
10.8 小結(jié) 262
第 11 章 使用關(guān)系數(shù)據(jù)庫(kù)服務(wù): RDS 263
11.1 開(kāi)始使用 MySQL 數(shù)據(jù)庫(kù) 265
11.1.1 用 RDS 數(shù)據(jù)庫(kù)啟動(dòng)WordPress 平臺(tái) 265
11.1.2 探索帶有 MySQL 引擎的RDS 數(shù)據(jù)庫(kù)實(shí)例 268
11.1.3 Amazon RDS 的定價(jià) 268
11.2 將數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫(kù) 268
11.3 備份和還原數(shù)據(jù)庫(kù) 271
11.3.1 配置自動(dòng)快照 271
11.3.2 手動(dòng)創(chuàng)建快照 272
11.3.3 還原數(shù)據(jù)庫(kù) 273
11.3.4 復(fù)制數(shù)據(jù)庫(kù)到另一個(gè)區(qū)域 274
11.3.5 計(jì)算快照費(fèi)用 275
11.4 控制對(duì)數(shù)據(jù)庫(kù)的訪問(wèn) 275
11.4.1 控制對(duì) RDS 數(shù)據(jù)庫(kù)配置的訪問(wèn) 276
11.4.2 控制對(duì) RDS 數(shù)據(jù)庫(kù)的網(wǎng)絡(luò)訪問(wèn) 277
11.4.3 控制對(duì)數(shù)據(jù)的訪問(wèn) 277
11.5 依賴高可用數(shù)據(jù)庫(kù) 278
11.6 調(diào)整數(shù)據(jù)庫(kù)的性能 280
11.6.1 增加數(shù)據(jù)庫(kù)資源 281
11.6.2 使用讀復(fù)制來(lái)提高讀性能 282
11.7 監(jiān)控?cái)?shù)據(jù)庫(kù) 284
11.8 小結(jié) 286
第 12 章 使用內(nèi)存緩存數(shù)據(jù):Amazon ElastiCache 287
12.1 創(chuàng)建緩存集群 291
12.1.1 最小 CloudFormation 模板 292
12.1.2 測(cè)試 Redis 集群 293
12.2 緩存部署選項(xiàng) 294
12.2.1 Memcached 集群 295
12.2.2 Redis 單節(jié)點(diǎn)集群 295
12.2.3 Redis 禁用集群模式的集群 296
12.2.4 Redis 啟用集群模式的集群 297
12.3 控制緩存訪問(wèn) 298
12.3.1 控制訪問(wèn)配置選項(xiàng) 298
12.3.2 控制網(wǎng)絡(luò)訪問(wèn) 299
12.3.3 控制集群和數(shù)據(jù)訪問(wèn) 299
12.4 使用 CloudFormation 安裝示例 Discourse 應(yīng)用 300
12.4.1 VPC—網(wǎng)絡(luò)配置 301
12.4.2 緩存—安全組、子網(wǎng)組、緩存集群 302
12.4.3 數(shù)據(jù)庫(kù)—安全組、子網(wǎng)組、數(shù)據(jù)庫(kù)實(shí)例 303
12.4.4 虛擬機(jī)—安全組、EC2 實(shí)例 304
12.4.5 測(cè)試 Discourse 的CloudFormation 模板 306
12.5 監(jiān)控緩存 307
12.5.1 監(jiān)控主機(jī)相關(guān)指標(biāo) 308
12.5.2 內(nèi)存是否足夠? 309
12.5.3 Redis 只讀副本是否保持最新 309
12.6 優(yōu)化緩存性能 309
12.6.1 選擇合適的節(jié)點(diǎn)類型 310
12.6.2 選擇正確的部署選項(xiàng) 311
12.6.3 壓縮數(shù)據(jù) 311
12.7 小結(jié) 311
第 13章 面向NoSQL數(shù)據(jù)庫(kù)服務(wù)的編程:DynamoDB 312
13.1 操作 DynamoDB 314
13.1.1 管理 314
13.1.2 定價(jià) 314
13.1.3 網(wǎng)絡(luò) 315
13.1.4 與 RDS 對(duì)比 315
13.1.5 與其他 NoSQL 數(shù)據(jù)庫(kù)對(duì)比 316
13.2 開(kāi)發(fā)人員需要了解的DynamoDB 316
13.2.1 表、項(xiàng)目和屬性 316
13.2.2 主鍵 317
13.2.3 本地 DynamoDB 318
13.3 編寫待辦事項(xiàng)應(yīng)用 318
13.4 創(chuàng)建表 320
13.4.1 通過(guò)分區(qū)鍵標(biāo)識(shí)用戶 320
13.4.2 通過(guò)分區(qū)鍵和排序鍵標(biāo)識(shí)任務(wù) 321
13.5 添加數(shù)據(jù) 323
13.5.1 添加用戶 324
13.5.2 添加任務(wù) 325
13.6 檢索數(shù)據(jù) 325
13.6.1 通過(guò)鍵來(lái)獲取項(xiàng)目 326
13.6.2 通過(guò)鍵和過(guò)濾器查詢項(xiàng)目 327
13.6.3 使用全局輔助索引進(jìn)行更靈活的查詢 329
13.6.4 掃描和過(guò)濾表中的所有數(shù)據(jù) 332
13.6.5 最終一致的數(shù)據(jù)檢索 333
13.7 刪除數(shù)據(jù) 333
13.8 修改數(shù)據(jù) 334
13.9 擴(kuò)展容量 335
13.9.1 容量單元 336
13.9.2 自動(dòng)擴(kuò)展 337
13.10 小結(jié) 339
第四部分 在 AWS 上搭架構(gòu)
第 14 章 實(shí)現(xiàn)高可用性: 可用區(qū)、自動(dòng)擴(kuò)展以及 CloudWatch 343
14.1 用CloudWatch從EC2實(shí)例故障中恢復(fù) 344
14.1.1 創(chuàng)建 CloudWatch 警報(bào)來(lái)在狀態(tài)檢查失敗時(shí)觸發(fā)恢復(fù) 345
14.1.2 根據(jù)CloudWatch警報(bào)監(jiān)控和恢復(fù)虛擬機(jī) 347
14.2 從數(shù)據(jù)中心中斷中恢復(fù) 350
14.2.1 可用區(qū):一組獨(dú)立的數(shù)據(jù)中心 351
14.2.2 用自動(dòng)擴(kuò)展確保 EC2 實(shí)例一直運(yùn)行 354
14.2.3 借助自動(dòng)擴(kuò)展將出現(xiàn)故障的虛擬機(jī)恢復(fù)到另一個(gè)可用區(qū) 356
14.2.4 隱患:網(wǎng)絡(luò)附加存儲(chǔ)恢復(fù) 359
14.2.5 隱患:網(wǎng)絡(luò)接口恢復(fù) 363
14.3 分析災(zāi)難恢復(fù)的必要條件 367
14.4 小結(jié) 368
第 15 章 基礎(chǔ)設(shè)施解耦: ELB 與 SQS 369
15.1 利用負(fù)載均衡器進(jìn)行同步解耦 370
15.2 利用消息隊(duì)列進(jìn)行異步解耦 375
15.2.1 將同步過(guò)程轉(zhuǎn)換成異步過(guò)程 376
15.2.2 URL2PNG 應(yīng)用的架構(gòu) 377
15.2.3 創(chuàng)建消息隊(duì)列 377
15.2.4 以編程方式生產(chǎn)消息 378
15.2.5 以編程方式消費(fèi)消息 379
15.2.6 使用 SQS 傳遞消息的局限性 383
15.3 小結(jié) 384
第 16 章 容錯(cuò)設(shè)計(jì) 385
16.1 使用冗余 EC2 實(shí)例提高可用性 387
16.1.1 冗余可以消除單點(diǎn)故障 387
16.1.2 冗余需要解耦 389
16.2 使代碼容錯(cuò)的注意事項(xiàng) 390
16.2.1 讓其崩潰,而且重試 390
16.2.2 冪等重試使容錯(cuò)成為可能 391
16.3 構(gòu)建容錯(cuò) Web 應(yīng)用:Imagery 393
16.3.1 冪等狀態(tài)機(jī) 396
16.3.2 實(shí)現(xiàn)容錯(cuò)的 Web 服務(wù) 397
16.3.3 實(shí)現(xiàn)容錯(cuò)的工作進(jìn)程來(lái)消費(fèi) SQS 消息 404
16.3.4 部署應(yīng)用 407
16.4 小結(jié) 413
第 17 章 向上或向下擴(kuò)展:自動(dòng)擴(kuò)展和CloudWatch 414
17.1 管理動(dòng)態(tài)EC2實(shí)例池 416
17.2 使用指標(biāo)或計(jì)劃觸發(fā)擴(kuò)展 419
17.2.1 根據(jù)計(jì)劃進(jìn)行擴(kuò)展 420
17.2.2 根據(jù) CloudWatch 指標(biāo)進(jìn)行擴(kuò)展 421
17.3 解耦動(dòng)態(tài)EC2實(shí)例池 423
17.3.1 通過(guò)負(fù)載均衡器同步解耦擴(kuò)展動(dòng)態(tài) EC2 實(shí)例池 424
17.3.2 通過(guò)隊(duì)列異步解耦擴(kuò)展動(dòng)態(tài)EC2 實(shí)例池 428
17.4 小結(jié) 432
附錄 A 術(shù)語(yǔ)及縮寫 433