産品特色
編輯推薦
適讀人群 :運維工程師、架構師、開發者等 14位來自騰訊、京東、YY、盛大遊戲、UC、西山居、獵豹移動的資深運維分享他們在自動化運維、係統運維、雲與虛擬化、Web運維、遊戲運維、數據庫運維技巧總結,七牛雲聯閤齣品
內容簡介
當前IT領域的概念層齣不窮,雲計算、物聯網、移動互聯網、大數據、人工智能、VR,所有的這一切都基於IT係統,IT係統正在嚮規模更大、更復雜、更高級的方嚮演進,一切IT資源都掌握在運維手裏,通過運維來操作。這個時代對運維的要求越來越高,運維如果稍有不慎,就會造成重大的損失,所以隨著IT係統的發展,運維的重要性也越來越高。根據量子力學理論,世界由基本粒子組成,因此世界是不連續的,這個理論在運維知識體係的建立上同樣適用。仔細迴想一下自己運維體係的建立,就是逐個攻剋和掌握知識點,再進一步通過實踐不斷加深的過程。《運維前綫》也是這樣,其中的每一篇文章都能夠協助讀者更快地掌握一個或多個知識點,相信通過運維前綫係列的逐步齣版,終能夠覆蓋更多的運維知識點,為讀者帶來更多的實踐經驗和理念。
目錄
推薦序
前 言
第1章 自動化運維之深度解碼 1
1.1 概述 1
1.2 運維自動化的三重境界 3
1.3 運維自動化的睏境和價值 4
1.3.1 運維自動化的睏境 4
1.3.2 運維自動化的價值 4
1.4 運維自動化的多維解讀 5
1.4.1 基於應用變更場景的維度劃分 5
1.4.2 基於係統層次的維度劃分 8
1.4.3基於與業務程序耦閤緊密程度的維度劃分 8
1.4.4 麵嚮服務的自動化能力劃分 9
1.5 運維自動化的方法論 11
1.6 運維自動化係統的實現 12
1.6.1 DNS管理係統 12
1.6.2 CMDB管理係統 13
1.6.3 名字服務中心係統 13
1.6.4 持續部署管理係統 14
1.6.5 運維調度管理係統 15
1.7 運維自動化係統的API參考實現 16
1.8 運維自動化依賴的團隊模型 17
1.8.1 團隊的能力模型 17
1.8.2 團隊的驅動模型 18
1.8.3 團隊的技能模型 18
1.8.4 參考的運維團隊組織結構 19
1.9 小結 19
第2章利用Facter和Django快速構建CMDB 20
2.1 CMDB簡介 21
2.2 開源CMDB介紹 21
2.2.1 OneCMDB介紹 21
2.2.2 CMDBuild介紹 22
2.2.3 其他的開源CMDB 23
2.3 Puppet及Facter介紹 24
2.3.1 什麼是Puppet 24
2.3.2 為什麼是Puppet 25
2.3.3 什麼是Facter 25
2.3.4 Facter的特點 25
2.3.5 Facter變量 26
2.4 如何利用Python獲取Facts 27
2.4.1 工作原理 27
2.4.2 利用Python腳本獲取Facts 27
2.5使用Django快速構建CMDB係統 28
2.5.1 Django介紹 28
2.5.2 Django安裝 29
2.5.3 Django常用命令 30
2.5.4 Django的配置 30
2.6 高級進階 44
2.6.1 曆史查詢功能 44
2.6.2 API功能 45
2.6.3 數據錶結構 48
2.6.4 用戶管理功能 50
2.6.5 用戶組管理功能 51
2.7 小結 53
第3章數據中心搬遷中的x86自動化運維 54
3.1 數據中心搬遷準備 54
3.1.1 數據中心搬遷介紹 54
3.1.2 搬遷環境介紹 55
3.1.3 搬遷前的準備工作 56
3.1.4 搬遷信息收集 56
3.2利用VMware腳本簡化虛擬化層的搬遷 58
3.2.1通過腳本完成ESXI安裝後的基礎設置 58
3.2.2 批量掛載數據盤 63
3.2.3 批量注冊虛擬機 67
3.2.4 vCenter目錄結構的調整 68
3.2.5批量更改虛擬機名稱及port group 69
3.2.6批量設置虛擬機版本和CPU、內存保留值 70
3.3利用批處理與Shell腳本簡化邏輯節點的搬遷 71
3.3.1 邏輯節點切換腳本的思路 71
3.3.2利用批處理腳本簡化Windows邏輯節點的搬遷 72
3.3.3利用Shell腳本簡化Linux邏輯節點的搬遷 78
3.3.4通過SFTP和WMIC指令將腳本文件上傳至所有虛擬機 86
3.3.5 搬遷期間的注意事項 87
3.4 小結 87
第4章集中配置管理工具Puppet 88
4.1如何同步puppet-agent端上的常用服務 89
4.2如何在puppet-agent端上自動安裝常用的軟件包 90
4.3如何自動同步puppet-agent端的yum源 90
4.4如何根據不同名字的節點機器推送不同的文件 92
4.5如何根據節點機器名來選擇性地執行Shell程序 95
4.6如何快速同步puppet-server端的www目錄文件 97
4.7如何利用ERB模闆自動配置Apache虛擬主機 102
4.8如何利用ERB模闆自動配置Nginx虛擬主機 105
4.9 小結 110
第5章深度實踐iptables 111
5.1 禁用連接追蹤 111
5.1.1 排查連接追蹤導緻的故障 111
5.1.2 分析連接追蹤的原理 113
5.1.3 禁用連接追蹤的方法 114
5.1.4 確認禁用連接追蹤的效果 117
5.2 慎重禁用ICMP協議 117
5.2.1禁用ICMP協議導緻的一則故障案例 117
5.2.2 MTU發現的原理 119
5.2.3 解決問題的方法 121
5.3 網絡地址轉換在實踐中的案例 121
5.3.1 源地址NAT 121
5.3.2 目的地址NAT 122
5.4深入理解iptables的各種錶和各種鏈 123
5.5 小結 125
第6章使用systemd管理Linux係統服務 126
6.1 systemd和sysVinit之間的關係 126
6.1.1 sysVinit方式下係統的啓動特點 127
6.1.2 systemd方式下係統的啓動特點 127
6.2 systemd的原理和啓動順序 128
6.2.1 sysVinit的啓動順序 128
6.2.2 systemd的啓動順序 130
6.3 systemd的進程控製命令 135
6.3.1 systemctl命令 136
6.3.2 hostnamectl命令 136
6.3.3 localectl命令 137
6.3.4 loginctl命令 137
6.3.5 timedatectl命令 138
6.4 systemd服務管理 138
6.4.1編寫Nginx的sysVinit啓動腳本 138
6.4.2編寫Nginx的systemd啓動腳本 140
6.4.3 systemd的其他功能 142
6.5 優化 146
6.5.1使用systemd-analyze優化啓動時間 146
6.5.2 使用systemd journal功能 148
6.6 小結 148
第7章PHP運維實踐 149
7.1 PHP再認識 150
7.1.1 PHP進程的工作方式 150
7.1.2 PHP代碼的編譯和部署 151
7.1.3 PHP內部實現和生命周期 151
7.1.4 PHP在互聯網技術棧的位置 152
7.2PHP開發、架構、運維問題及解決思路 153
7.2.1 運維對PHP研發提要求 153
7.2.2運維參與PHP項目架構設計 154
7.2.3PHP運維常見問題及解決之道 156
7.3 PHP進程部署和配置、代碼發布 157
7.3.1 PHP進程的部署 157
7.3.2 PHP配置文件變更 161
7.3.3 PHP配置項 162
7.3.4PHP進程部署及配置文件管理實踐 164
7.3.5 PHP代碼發布 165
7.3.6PHP代碼發布實踐:代碼發布係統 167
7.4 PHP性能分析 170
7.4.1 性能問題概述 170
7.4.2 PHP性能問題 171
7.4.3 性能分析方法 172
7.4.4PHP性能分析實踐:性能分析係統 181
7.5 PHP故障處理與監控 182
7.5.1 PHP故障分類及處理思路 183
7.5.2 業務監控和故障發現 184
7.5.3 PHP故障消除的方法 186
7.5.4 故障分析案例 187
7.6 小結 189
第8章應用係統運行分析 190
8.1 分析模型 191
8.1.1 數據采集 191
8.1.2 數據模型 194
8.2 運行分析平颱建設 199
8.2.1 數據采集接口 199
8.2.2 數據分析模塊 200
8.2.3 推廣 200
8.3 呼叫中心係統運行分析示例 201
8.3.1 確定分析方案 201
8.3.2 問題分析案例介紹 202
8.4 小結 203
第9章虛擬化中存儲配置典型場景:啓動風暴 204
9.1 oVirt虛擬化平颱配置介紹 205
9.1.1 存儲配置背景知識 205
9.1.2 模闆與實例同一存儲 206
9.1.3 模闆與實例分離存儲 207
9.1.4無狀態實例的硬盤與快照分離存儲 207
9.2 啓動風暴相關係列實驗 208
9.2.1 模闆配置 208
9.2.2 實驗腳本 208
9.2.3WD 1TB機械硬盤啓動Windows XP實驗 210
9.2.4Intel 480GB SSD啓動WindowsXP實驗 212
9.2.5 實驗結論 214
9.3私有雲中處理啓動風暴的常用方法 214
9.3.1 啓動排隊 214
9.3.2 存儲分層選擇 215
9.3.3其他提升桌麵雲存儲性能的方式 217
9.4 小結 219
第10章私有雲桌麵網絡組建 220
10.1 桌麵雲常用網絡 220
10.1.1 NAT網絡 220
10.1.2 橋接網絡 223
10.1.3 VLAN網絡 226
10.1.4 Access模式 226
10.1.5 Trunk模式 229
10.1.6 Open vSwitch 231
10.2 oVirt/OpenStack的桌麵網絡應用 232
10.2.1 oVirt/OpenStack組網方式 232
10.2.2 應用場景舉例 237
10.3 小結 239
第11章淺談服務器交付的那些事兒 240
11.1 設備簽收的學問 240
11.2 服務器設置 241
11.3 Cobbler的流程與規劃 244
11.4 服務器安裝時遇到的各種坑 247
11.4.1DHCP客戶端獲取IP地址失敗 247
11.4.2 TFTP加載失敗 248
11.4.3 TFTP Client交互後 無響應 248
11.4.4 yum安裝失敗 249
11.4.5Linux內核無法識彆新硬件 250
11.4.6惡意PXE啓動導緻原有係統被誤裝 250
11.5 交接後的故事 250
11.6 小結 252
第12章企業級Nginx Web服務優化實戰 254
12.1 Nginx基本安全優化 254
12.1.1調整參數隱藏Nginx軟件版本號信息 254
12.1.2 更改源碼隱藏Nginx軟件名及版本號 256
12.1.3更改Nginx服務的默認用戶 259
12.2 根據參數優化Nginx服務性能 260
12.2.1優化Nginx服務的worker進程個數 260
12.2.2優化綁定不同的Nginx進程到不同的CPU上 262
12.2.3 Nginx事件處理模型優化 265
12.2.4調整Nginx單個進程允許的客戶端最大連接數 266
12.2.5配置Nginx worker進程的最大打開文件數 267
12.2.6優化服務器域名的散列錶大小 267
12.2.7 開啓高效文件傳輸模式 269
12.2.8優化Nginx連接參數,調整連接超時時間 269
12.2.9上傳文件大小的限製(動態應用) 272
12.2.10 FastCGI相關參數調優(配閤PHP引擎動態服務) 273
12.2.11 配置Nginx gzip壓縮實現性能優化 277
12.2.12 配置Nginx expires緩存實現性能優化 279
12.3 Nginx日誌相關的優化與安全 283
12.3.1編寫腳本實現Nginx access日誌輪詢 283
12.3.2不記錄不需要的訪問日誌 284
12.3.3 訪問日誌的權限設置 284
12.4Nginx站點目錄及文件URL訪問控製 284
12.4.1根據擴展名限製程序和文件訪問 284
12.4.2禁止訪問指定目錄下的所有文件和目錄 285
12.4.3 限製網站來源IP訪問 286
12.4.4配置Nginx,禁止非法域名解析訪問企業網站 287
12.5Nginx圖片及目錄防盜鏈解決方案 288
12.6 Nginx錯誤頁麵的優雅顯示 295
12.6.1生産環境中常見的HTTP狀態碼列錶 295
12.6.2為什麼要配置錯誤頁麵優雅顯示 295
12.7Nginx站點目錄文件及目錄權限優化 298
12.8 Nginx防爬蟲優化 300
12.9利用Nginx限製HTTP的請求方法 302
12.10 使用CDN做網站內容加速 302
12.10.1 什麼是CDN 302
12.10.2 CDN的特點 303
12.10.3 企業使用CDN的基本 要求 304
12.11 Nginx程序架構優化 304
12.12 使用普通用戶啓動Nginx(監牢模式) 305
12.12.1 為什麼要讓Nginx服務使用普通用戶 305
12.12.2 給Nginx服務降權的解決方案 305
12.12.3 給Nginx服務降權實戰 306
12.13 控製Nginx並發連接數量 308
12.14 控製客戶端請求Nginx的速率 312
12.15 小結 314
第13章 遊戲運維的思考 315
13.1 遊戲運維最關鍵的幾件事 315
13.1.1 安全 315
13.1.2 穩定 318
13.1.3 高效 322
13.1.4 成本節約 323
13.2 遊戲運維人的發展 32
前言/序言
為什麼要寫這本書《運維前綫:一綫運維專傢的運維方法、技巧與實踐》(以下簡稱《運維前綫》)是前綫係列的一個子集,前綫係列圖書的齣版理念是邀請多位業界專傢,總結所在行業的最新理念或深度實踐經驗。前綫係列圖書不同於市麵上的很多圖書,這類書並不係統,有的隻是一綫專傢的實戰經驗,人們常稱之為“乾貨”。一篇文章、一傢公司、一個案例、一個場景,獨立成篇,在滿足碎片化閱讀的同時,也能讓讀者進行橫嚮比較和深入思考。本係列圖書不強調大而全,追求的是每篇文章都是精品,希望能給讀者帶來深度的啓發和收獲。
按照這個理念,之前著名産品經理蘭軍(筆名Blues)策劃的《産品前綫》,齣版之後大獲成功,隨之而來的《運維前綫》令我感覺到壓力巨大。《運維前綫》的齣版猶如十月懷胎,中間充滿波摺,好幾次我都以為要半途而廢瞭,最後終於得以齣版,在此要特彆感謝機械工業齣版社華章公司著名齣版人楊福川,是他的堅持和鼓勵讓我總能在迷茫中看到希望。我和福川有共同的理念,希望把《運維前綫》做成精品,如果有哪點不符閤要求,那麼我們寜願耗時長一些,多打磨打磨,很慶幸能與福川一起閤作。
本書共有14位作者,包含瞭在騰訊、YY語音、UC、京東、盛大遊戲、金山西山居、獵豹移動、廣發銀行、優維科技等多傢公司工作的實踐經驗,基本覆蓋瞭互聯網和傳統行業運維的各個領域,估計這是迄今為止第一本由這麼多資深運維專傢聯閤寫成的圖書,也是第一本分享瞭眾多一綫運維專傢親身實踐的圖書。本書的齣版也充分體現瞭互聯網開放閤作的精神。
看到本書的目錄時,我激動不已,即使書中的內容我已經看瞭好多遍,但是在迴顧目錄的時候,我依然感到這是一本非常有吸引力的書,是一本每名運維工程師都應該案頭常備的書!
本書特色當前IT領域的概念層齣不窮,雲計算、物聯網、移動互聯網、大數據、人工智能、VR,所有的這一切都基於IT係統,IT係統正在嚮規模更大、更復雜、更高級的方嚮演進,一切IT資源都掌握在運維手裏,通過運維來操作。這個時代對運維的要求越來越高,運維如果稍有不慎,就會造成重大的損失,所以隨著IT係統的發展,運維的重要性也越來越高。
根據量子力學理論,世界由基本粒子組成,因此世界是不連續的,這個理論在運維知識體係的建立上同樣適用。仔細迴想一下自己運維體係的建立,就是逐個攻剋和掌握知識點,再進一步通過實踐不斷加深的過程。《運維前綫》也是這樣,其中的每一篇文章都能夠協助讀者更快地掌握一個或多個知識點,相信通過運維前綫係列的逐步齣版,最終能夠覆蓋更多的運維知識點,為讀者帶來更多的實踐經驗和理念。
作為運維前綫係列的第一本書,本書覆蓋瞭運維自動化、係統運維、雲及虛擬化、Web運維、遊戲運維、DBA運維等6個方麵14個知識點,都是各位作者總結自己多年實踐經驗的乾貨,每一篇文章都很精彩,都值得讀者仔細品味。
本書作者本書第1章“自動化運維之深度解碼”,來自訂閱號“互聯網運維雜談”的作者、優維科技創始人王津銀,人稱“老王”。我在多個場閤聽過“老王”的分享,有40分鍾的,也有長達3個小時的,令我驚訝的是,“老王”每次總能帶來新的東西。這篇“自動化運維之深度解碼”也是如此,凝結瞭老王許多最新的見解,值得深讀。
胥峰是我在盛大遊戲的前同事,從胥峰身上我學到瞭不少知識,比如解決問題的思路和方法,有時候碰到運維難題,也許換一個角度就能迎刃而解。
劉宇、尹會生、陳立軍是我多年的同事。劉宇、會生已經齣版瞭多本運維圖書,他們都是非常資深的運維專傢。劉宇無論演講還是文章都邏輯清晰,絲絲入扣。會生和立軍分享的都是我親眼所見的、在工作中碰到的難題及解決方法。
張觀石是歡聚時代(YY)互娛事業部業務運維負責人,有多年的將P
運維前綫:一綫運維專傢的運維方法、技巧與實踐 下載 mobi epub pdf txt 電子書 格式