DevOps 開發運維訓練營
內容描述
DevOps(Development 和Operations 的組合)是一組過程、方法與系統的統稱,用於促進開發(應用程序/ 軟件工程)、技術運營和質量保障(QA)部門之間的溝通、協作與整合。
本書從以練代學的角度講解了IT 運維的一些實用知識和相關運維工具的使用技巧,總共分為8 章,其內容有DevOps 概念與評估框架,如何安裝Jenkins 持續集成服務器,如何使用開發或者QA 環境的容器,雲計算與配置管理,持續交付,自動化測試(功能和負載測試),使用編排技術自動化應用程序生命周期的不同方法,與特定角色相關的安全和監控。
本書適合打算學習DevOps 以及打算在公司內部建設DevOps文化的IT 開發人員、運營人員和管理員閱讀。
目錄大綱
第1章DevOps概念與評估框架1
1.1 DevOps的必要性1
1.1.1雲計算概述3
1.1.2 DevOps概述4
1.2如何發展DevOps文化6
1.2.1敏捷開發7
1.2.2 DevOps 7
1.3 PPT——人、過程和技術——的重要性10
1.3.1人10
1.3.2過程11
1.3.3技術12
1.4為什麼說DevOps不全和工具有關12
1.5 DevOps評估問題14
1.6小結15
第2章持續集成… 16
2.1安裝Jenkins 2 16
2.2創建和配置基於Maven的JEE Web應用程序19
2.2.1 Jenkins中的單元測試用例結果21
2.2.2 Jenkins中的主代理架構22
2.3集成Jenkins和SonarQube 25
2.4 Jenkins中的電子郵件通知28
2.5用Visual Studio Team Services執行持續集成29
2.5.1 Eclipse和VSTS集成29
2.5.2 VSTS中的持續集成35
2.6小結43
第3章容器… 45
3.1 Docker容器概述45
3.2理解虛擬機和容器之間的差別47
3.2.1虛擬機47
3.2.2容器48
3.3 Docker的安裝與配置48
3.4創建一個Tomcat容器56
3.5小結63
第4章云計算與配置管理… 64
4.1 Chef配置管理工具概述64
4.2 Chef工作站的安裝與配置69
4.2.1用Chef工作站匯聚Chef節點71
4.2.2用烹飪書安裝軟件包75
4.2.3創建角色77
4.3為Amazon Web服務和Microsoft Azure安裝Knife插件80
4.3.1在Amazon EC2中創建和配置虛擬機83
4.3.2在Microsoft Azure中創建和配置虛擬機89
4.4小結93
第5章持續交付… 94
5.1用Jenkins插件在Docker容器中持續交付94
5.2用腳本在AWS EC2和Microsoft Azure VM中持續交付101
5.3用Jenkins插件在AWS Elastic Beanstalk中持續交付102
5.4用FTP在Microsoft Azure App Services中持續交付109
5.5用VSTS在Microsoft Azure App Services中持續交付114
5.6小結126
第6章自動測試(功能和負載測試) 127
6.1用Selenium進行功能測試127
6.1.1在Jenkins中進行功能測試139
6.1.2用Jenkins執行負載測試141
6.2用基於URL的測試和Apache JMeter執行
Microsoft Azure負載測試144
6.2.1基於URL的測試144
6.2.2 Apache JMeter 147
6.3小結151
第7章編排——端到端自動化… 153
7.1用Jenkinss實現應用程序生命期管理的端到端自動化153
7.2用Jenkins、Chef和AWS EC2實現端到端自動化155
7.3用Jenkins和AWS Elastic Beanstalk實現端到端自動化169
7.4用Jenkins和Microsoft Azure應用服務實現端到端自動化169
7.5用VSTS進行應用程序生命期管理的端到端自動化編排170
7.6小結182
第8章安全與監控… 183
8.1 Jenkins和VSTS中的安全性183
8.2 Jenkins中的用戶管理184
8.3監控Jenkins和Microsoft Azure 190
8.3.1監控Jenkins 190
8.3.2 Azure Web Apps檢修和監控195
8.3.3 Azure Web應用程序監控205
8.4小結206
作者介紹
Mitesh Soni是一位熱心的學習者,在IT行業已有10年的經驗。他擁有SCJP、SCWCD、VCP、IBM Urbancode認證,是IBM Bluemix認證專家。
他熱愛DevOps和雲計算,對Java編程也有興趣,覺得設計模式十分迷人。他相信“一圖勝千言”。
Mitesh喜歡和孩子一起玩耍,擺弄自己的照相機,在Indroda公園拍攝照片。他痴迷於拍照,但是並不想弄懂許多技術細節。他生活在聖雄甘地祖國的首都。
Mitesh已經在Packt出版瞭如下書籍:
Implementing DevOps with Microsoft Azure、DevOps for Web Developers [Video]
DevOps for Web Development、Jenkins Essentials
Learning Chef