盛大遊戲擁有超過10年運維經驗資深專傢撰寫,高效運維、雲技術實踐等有影響力社區,以及盛大、騰訊、金山多位運營專傢聯袂推薦
技術層麵:4大運維方嚮、21種運維技術,105個*佳實踐;
思想層麵:構建運維服務體係,培養運維格局,掌握解決疑難運維問題的思想方法
本書是運維領域的璀璨明珠,是一本有思想的運維技術乾貨集!
技術層麵,作者從高性能網站架構、服務器安全和監控、網絡分析、自動化運維和遊戲運維4個方嚮,梳理和總結瞭105個棘手的運維難題,結閤自己10餘年的工作經驗,對這些問題給齣瞭經過實踐檢驗的解決方案,可直接應用到生産環境中。除解決方案外,還詳細講解瞭每個問題背後涉及的技術原理(共涉及21種技術)。
思想層麵,本書不僅有作者對運維服務體係的深度思考,而且還有作者的主動運維思維和宏觀的運維格局,更有作者解決具體運維問題的思維方法。
通過本書,不僅能解決具體的技術難題,提高工作效率,而且還能增強技術功底,提升工作能力。更重要的是,它能讓我們明白,技術不是運維的終追求,思想纔是運維人員應該畢生修煉的目標!
具體內容方麵,本書分為四大部分:
第一篇(第1-9章),高性能網站構建。這部分對構建高性能網站所需要的各個技術方麵做詳盡說明,涵蓋域名、CDN、負載均衡、網站部署和數據庫技術等的實踐。
第二篇(第10-13章),服務器安全和監控。業務架構起來瞭,如何保證它的安全性和穩定性,成為我們需要關注的焦點。這部分解決2個問題,一是加固服務器,使其避免輕易成為黑客的肉雞;二是監控,使故障在成為有重大影響的事件前就被預警和處理。
第三篇(第14-16章),網絡分析技術。這部分給齣在Linux運維領域中的網絡分析方法論。通過這部分的學習,我們將在遇到未知的網絡服務問題時,能夠參照本書中的方法論實施分析,從而解決問題。
第四篇(第17-21章),運維自動化和遊戲運維。隨著服務器規模的劇增,再使用一颱颱登錄服務器的方法來管理運維將成為效率的瓶頸。這一部分給齣我們的運維自動化實踐方案,從開源實現到自主開發,互相補充,互相提升,真正實現適閤自己的運維自動化體係。遊戲運維部分將對端遊和手遊這兩大目前熱點的遊戲運維主題進行說明。??
胥峰,
資深運維專傢,有10年運維經驗,在業界頗具威望和影響力。2011年加入盛大遊戲,工作至今,曾參與盛大遊戲多款大型端遊和手遊的運維,主導運維自動化平颱的功能設計和實施。通過公眾號“運維技術實踐”發布 “網絡分析技術實踐”係列主題技術文章,引發萬人閱讀轉發。擁有工信部認證高級信息係統項目管理師資格。
楊俊俊,
資深Linux係統專傢,目前就職於盛大遊戲,擔任盛大遊戲“G雲”運維負責人。具有多年Linux運維開發經驗,精通KVM虛擬化、Linux監控及運維自動化管理。《深度實踐KVM》作者之一。
胥峰是盛大遊戲技術保障中心運維方麵的“鎮海之寶”,每年的遊戲大節點上綫,一些疑難雜癥,都是由他解決的。由他坐鎮的大項目,我會淡定很多,這與他紮實的技術底蘊、豐富的實操能力以及宏觀的格局是分不開的。
現在他把這幾年沉澱下來的經驗無私分享齣來,結閤他多年的實踐和思考的積纍,可以說乾貨滿滿,誠意多多。作為技保中心運維部門第三位齣書人(前兩位分彆是《深度實踐KVM》的作者肖力和楊俊俊),我希望技保中心以後有更多牛人齣書,分享更多經驗,和G雲一起,為業內同行提供更好的服務和知識傳遞。
—— 陳桂新 盛大遊戲技術保障中心總監
本書是一本不可多得的運維寶典。它囊括高性能網站構建、服務器安全與監控、網絡分析、運維自動化、遊戲運維等豐富且實用的內容。本書內容源自作者多年運維工作實踐,以及帶領團隊攻剋多個重點運維難題的經驗,凝聚瞭作者對運維服務體係的深度思考與技術應用的精妙心得。我十分有幸曾與胥峰一起閤作共事,深知胥峰雄厚的運維技術能力、傑齣的解決問題的思路與方法,以及在運維領域所取得卓越成果。閱讀本書,除將收獲飽含實戰性的運維乾貨外,更為重要的是,將領悟到極具價值的、由點及麵的主動運維思維。強烈推薦從事運維工作的同學珍藏。
—— 熊普江 騰訊公司架構師
運維是門手藝活,既需要多年磨礪,也講究學習技巧。通過吸收彆人磨礪齣的精華知識,轉為自身的技術能力,是一個非常好的學習技巧。
運維體係是承載業務的大船,運維團隊既要修建這艘船,也要駕駛航行這艘船。作為運維人員,麵對運維體係建設和日常業務支撐的要求,既需要非常全麵和體係化的知識儲備,也需要非常深入和靈活快速的實踐能力。胥峰同學經過多年的學習和實踐,成瞭Linux運維的賣油翁。文以載道,無論是理論知識,還是實踐經驗,通過本書進行記錄和傳播,是一件非常有價值的事情。
十幾年前,我也曾齣版過一本Linux教程類的書籍,深知編著書籍的不易。感謝胥峰同學的努力和毫不藏私,奉獻齣這麼好的一部書。
—— 馬凱 微鯨科技副總裁
和胥峰在盛大遊戲共事多年,跟胥峰學到許多係統方麵的知識,更佩服的是胥峰解決問題時思路之開闊、方法之簡潔。從盛大遊戲離職之後,一直為失去和胥峰當麵學習的機會而遺憾。《Linux運維*佳實踐》這本書修補瞭我這方麵的遺憾。本書是胥峰多年運維經驗的總結,涉及Web、數據庫、網絡、監控、運維自動化等多個運維層麵,每個層麵都是乾貨滿滿,足見作者興趣廣泛、功力深厚。相信許多運維工程師以後會和我一樣,將這本書當作案頭書,經常閱讀,不斷汲取精華。
—— 肖力 《深度實踐KVM》作者
前言
第1篇 高性能網站構建
第1章 深入理解DNS原理與部署
BIND2
最佳實踐1:禁用權威域名服務器遞歸
查詢2
DNS的組成部分2
域名服務器的分類3
遞歸查詢與迭代查詢的區彆5
禁用遞歸查詢的原因與方法6
最佳實踐2:構建域名解析緩存6
域名解析緩存的必要性6
NSCD安裝配置方法6
域名解析緩存驗證7
最佳實踐3:配置chroot加固BIND8
最佳實踐4:利用BIND實現簡單負載
均衡9
最佳實踐5:詳解BIND視圖技術及
優化10
BIND視圖工作原理10
BIND視圖優化技巧12
最佳實踐6:關注BIND的漏洞信息12
最佳實踐7:掌握BIND監控技巧13
本章小結13
第2章 全麵解析CDN技術與實戰14
最佳實踐8:架構典型CDN係統14
最佳實踐9:理解HTTP協議中的緩存
控製:服務器端緩存控製頭部信息16
最佳實踐10:配置和優化Squid 18
推薦使用大內存服務器18
推薦每個磁盤獨立使用18
禁用atime更新19
配置Squid多實例19
使用URL哈希方法對Squid多實例
進行調度19
禁用緩存間通信協議19
架構二級緩存19
使用Squid Manager獲取運行狀態20
優化HTTP Range 20
最佳實踐11:優化緩存防盜鏈21
Key的組成21
校驗過程21
實施過程22
重定嚮器22
最佳實踐12:實踐視頻點播CDN23
係統模塊分類23
用戶訪問流程23
同步源站服務器24
視頻源站服務器25
視頻轉發服務器26
緩存服務器28
最佳實踐13:設計大規模下載調度
係統30
本章小結31
第3章 負載均衡和高可用技術32
最佳實踐14:數據鏈路層負載均衡33
鏈路層負載均衡的必要性33
Linux Bonding配置過程34
最佳實踐15:4層負載均衡38
4層負載均衡的數據格式38
4層負載均衡的時序圖39
最佳實踐16:7層負載均衡40
7層負載均衡的數據格式40
7層負載均衡的時序圖40
最佳實踐17:基於DNS的負載均衡41
最佳實踐18:基於重定嚮的負載均衡43
下載係統HTTP 302重定嚮43
上傳係統的重定嚮方法44
最佳實踐19:基於客戶端的負載均衡45
哈希方法45
數據庫讀寫分離46
最佳實踐20:高可用技術推薦47
本章小結47
第4章 配置及調優LVS48
最佳實踐21:模式選擇49
LVS-NAT49
LVS-DR49
LVS-Tun53
3種模式對比與推薦53
最佳實踐22:LVS+Keepalived實戰
精講53
LVS+Keepalived配置過程詳解53
LVS重要參數56
LVS-DR模式的核心提示與優化57
最佳實踐23:多組LVS設定注意事項58
最佳實踐24:注意網卡參數與MTU
問題58
MTU的原理58
案例解析59
最佳實踐25:LVS監控要點64
性能采集64
可用性監控64
最佳實踐26:LVS排錯步驟推薦64
本章小結66
第5章 使用HAProxy實現4層和
7層代理67
最佳實踐27:安裝與優化67
HAProxy TCP負載均衡68
HAProxy HTTP負載均衡69
HAProxy的核心配置參數71
HAProxy的會話保持機製72
HAProxy中ip_local_port_range問題73
HAProxy後端服務器獲取客戶端IP73
TCP負載均衡和HTTP負載均衡的
對比74
最佳實踐28:HAProxy+Keepalived
實戰75
最佳實踐29:HAProxy監控76
性能采集76
可用性監控76
最佳實踐30:HAProxy排錯步驟推薦77
本章小結77
第6章 實踐Nginx的反嚮代理和
負載均衡78
最佳實踐31:安裝與優化79
Nginx的核心配置參數81
Nginx負載均衡算法81
Nginx Proxy協議的選擇81
Nginx中ip_local_port_range問題86
Nginx被代理的後端服務器獲取客戶
端IP86
最佳實踐32:Nginx監控86
性能采集86
可用性監控87
最佳實踐33:Nginx排錯步驟推薦88
最佳實踐34:Nginx常見問題的處理
方法88
本章小結89
第7章 部署商業負載均衡設備
NetScaler90
最佳實踐35:NetScaler的初始化設置90
NetScaler中各種用途的IP概念90
NetScaler初始化的步驟91
最佳實踐36:NetScaler基本負載均衡
核心參數配置94
最佳實踐37:NetScaler內容交換核心
參數配置96
NetScaler被代理的後端服務器獲取
客戶端IP98
最佳實踐38:NetScaler的Weblog配置
與解析98
最佳實踐39:NetScaler高級運維指南99
最佳實踐40:NetScaler監控104
ns.log監控104
性能采集106
最佳實踐41:NetScaler排錯步驟
推薦106
最佳實踐42:NetScaler Surge Protection
引起的問題案例107
最佳實踐43:LVS、HAProxy、Nginx、
NetScaler的大對比108
最佳實踐44:中小型網站負載均衡方案
推薦109
本章小結109
第8章 配置高性能網站110
最佳實踐45:深入理解HTTP協議110
HTTP協議通信的網絡模型111
一次HTTP請求的詳細分析112
最佳實踐46:配置高性能靜態網站114
緩存配置方法115
壓縮配置方法115
防盜鏈的配置方法116
圖片剪裁的方法116
減少Cookie攜帶117
實現靜態文件的安全下載117
使用ngx_http_secure_link_module模塊
的配置方法117
使用Nginx中的X-Accel-Redirect控製
頭部118
使用CDN加速用戶訪問119
最佳實踐47:配置高性能動態網站119
PHP-FPM優化119
Tomcat優化120
最佳實踐48:配置多維度網站監控121
日誌監控122
可用性監控124
性能監控124
本章小結125
第9章 優化MySQL數據庫126
最佳實踐49:MySQL配置項優化126
最佳實踐50:使用主從復製擴展讀寫
能力127
主從復製監控的方法128
主從復製失敗的原因分析128
最佳實踐51:使用MHA構建高可用
MySQL131
本章小結132
第2篇 服務器安全和監控
第10章 構建企業級虛擬專用網絡134
最佳實踐52:常見的VPN構建技術134
PPTP VPN的原理135
IPSec VPN的原理135
SSL/TLS VPN的原理135
3種VPN構建技術的對比136
最佳實踐53:深入理解OpenVPN的
特性136
最佳實踐54:使用OpenVPN創建Peer-
to-Peer的VPN136
Linux tun設備精講139
最佳實踐55:使用OpenVPN創建Remote
Access的VPN141
最佳實踐56:使用OpenVPN創建Site-
to-Site的VPN148
最佳實踐57:迴收客戶端的證書149
最佳實踐58:使用OpenVPN提供的
各種script功能150
最佳實踐59:OpenVPN的排錯步驟151
本章小結154
第11章 實施Linux係統安全策略與
入侵檢測156
最佳實踐60:物理層安全措施156
最佳實踐61:網絡層安全措施157
使用Linux的iptables限製網絡訪問158
使用Windows Server 2003 Enterprise的
ipsecpol限製網絡訪問159
使用Windows Server 2008 Enterprise的
netsh advfirewall限製網絡訪問159
使用FreeBSD的IPFW限製網絡訪問161
使用Cisco IOS的ACL限製網絡訪問162
端口掃描的重要性162
分布式DDOS的防護163
最佳實踐62:應用層安全措施165
密碼安全策略165
SSHD安全配置166
Web服務器安全168
數據庫安全策略171
BIND安全配置171
最佳實踐63:入侵檢測係統配置171
最佳實踐64:Linux備份與安全180
備份與安全的關係180
數據備份的注意事項180
數據恢復測試180
本章小結180
第12章 實踐Zabbix自定義模闆
技術181
最佳實踐65:4步完成Zabbix Server
搭建181
最佳實踐66:Zabbix利器Zatree184
最佳實踐67:Zabbix Agent自動注冊185
最佳實踐68:基於自動發現的KVM
虛擬機性能監控188
本章小結195
第13章 服務器硬件監控196
最佳實踐69:服務器硬盤監控196
最佳實踐70:SSD定製監控198
SSD優勢與內部結構198
SSD選型198
SSD應用場景及定製監控199
最佳實踐71:服務器帶外監控:帶外
郵件警告202
本章小結205
第3篇 網絡分析技術
第14章 使用tcpdump與Wireshark
解決疑難問題208
最佳實踐72:理解tcpdump的工作
原理209
tcpdump的實現機製209
tcpdump與iptables的關係210
tcpdump數據包長度超過網卡MTU的
問題210
tcpdump的簡要安裝步驟210
最佳實踐73:學習tcpdump的5個參數
和過濾器211
學習tcpdump的5個參數211
學習tcpdump的過濾器211
最佳實踐74:在Android係統上抓包的
最佳方法212
最佳實踐75:使用RawCap抓取迴環
端口的數據214
最佳實踐76:熟悉Wireshark的最佳
配置項215
Wireshark安裝過程的注意事項215
Wireshark的關鍵配置項216
使用追蹤數據流功能218
最佳實踐77:使用Wireshark分析問題
的案例219
案例一 定位時間戳問題219
解決方法220
案例二 定位非正常發包問題220
抓包方法221
分析方法222
解決方法223
最佳實踐78:使用libpcap進行自動化
分析223
本章小結224
第15章 分析與解決運營商劫持
問題225
最佳實踐79:深度分析運營商劫持的
技術手段225
中小運營商的網絡現狀225
基於下載文件的緩存劫持226
基於頁麵的iframe廣告嵌入劫持229
基於僞造DNS響應的劫持230
網卡混雜模式與raw socket技術230
最佳實踐80:在關鍵文件係統部署
HTTPS的實戰233
HTTPS證書的獲取方法233
Nginx支持HTTPS的按照方式235
Nginx配置文件示例235
本章小結235
第16章 深度實踐iptables237
最佳實踐81:禁用連接追蹤237
排查連接追蹤導緻的故障237
分析連接追蹤的原理239
禁用連接追蹤的方法240
確認禁用連接追蹤的效果243
最佳實踐82:慎重禁用ICMP協議243
禁用ICMP協議導緻的故障案例一則243
MTU發現的原理245
解決問題的方法247
最佳實踐83:網絡地址轉換在實踐中的
案例247
源地址NAT247
目的地址NAT248
最佳實踐84:深入理解iptables各種錶
和各種鏈248
本章小結250
第4篇 運維自動化和遊戲運維
第17章 使用Kickstart完成批量
係統安裝252
最佳實踐85:Kickstart精要252
PXE啓動過程及原理252
Kickstart創建及結構組成253
pre-installation與post-installation應用
實踐256
最佳實踐86:係統配置參數優化258
Web服務器中的參數優化259
DB服務器中的參數優化261
NUMA263
KVM宿主機中的參數優化265
本章小結266
第18章 利用Perl編程實施高效
運維267
最佳實踐87:多進程編程技巧268
最佳實踐88:調整Socket編程的超時
時間270
為什麼設置Socket超時270
設置Socket超時的方法271
最佳實踐89:批量管理帶外配置271
帶內管理與帶外管理271
HP iLO的批量管理方法272
Dell iDRAC的批量管理方法273
最佳實踐90:推廣郵件的推送優化274
推送優化的思路與代碼分析274
推廣郵件的效果分析275
最佳實踐91:使用PerlTidy美化
代碼276
本章小結278
第19章 精通Ansible實現運維
自動化279
最佳實踐92:理解Ansible280
Ansible安裝及原理280
Ansible原理與架構281
Ansible配置項說明283
Inventory定義格式284
最佳實踐93:學習Ansible Playbook
使用要點285
Playbook基本語法和格式285
使用Include、Roles組織Playbook287
Ansible多樣的變量定義與使用法則290
最佳實踐94:Ansible模塊介紹及開發293
Ansible常用模塊介紹293
如何開發Ansible模塊294
最佳實踐95:理解Ansible插件296
最佳實踐96:Ansible自動化運維實例:
Ansible自動安裝配置zabbix客戶端298
本章小結299
第20章 掌握端遊運維的技術要點300
最佳實踐97:瞭解大型端遊的技術
架構301
服務器架構設計301
服務器角色說明及通信原理303
最佳實踐98:理解遊戲運維體係發展
曆程304
最佳實踐99:自動化管理技術305
平颱架構與設計原則305
平颱功能劃分307
最佳實踐100:自動化監控技術311
最佳實踐101:運維安全體係312
最佳實踐102:運維服務管理體係314
最佳實踐103:運維體係框架建設315
本章小結316
第21章 精通手遊運維的架構體係317
最佳實踐104:推薦的手遊架構318
手遊和端遊運維的異同點318
使用HTTP協議的優點318
推薦的網絡架構319
最佳實踐105:手遊容量規劃320
機房選擇320
網絡帶寬容量規劃321
Web服務器承載能力規劃321
Memcached承載能力規劃322
數據庫承載能力規劃324前言
第1篇 高性能網站構建
第1章 深入理解DNS原理與部署
BIND2
最佳實踐1:禁用權威域名服務器遞歸
查詢2
DNS的組成部分2
域名服務器的分類3
遞歸查詢與迭代查詢的區彆5
禁用遞歸查詢的原因與方法6
最佳實踐2:構建域名解析緩存6
域名解析緩存的必要性6
NSCD安裝配置方法6
域名解析緩存驗證7
最佳實踐3:配置chroot加固BIND8
最佳實踐4:利用BIND實現簡單負載
均衡9
最佳實踐5:詳解BIND視圖技術及
優化10
BIND視圖工作原理10
BIND視圖優化技巧12
最佳實踐6:關注BIND的漏洞信息12
最佳實踐7:掌握BIND監控技巧13
本章小結13
第2章 全麵解析CDN技術與實戰14
最佳實踐8:架構典型CDN係統14
最佳實踐9:理解HTTP協議中的緩存
控製:服務器端緩存控製頭部信息16
最佳實踐10:配置和優化Squid 18
推薦使用大內存服務器18
推薦每個磁盤獨立使用18
禁用atime更新19
配置Squid多實例19
使用URL哈希方法對Squid多實例
進行調度19
禁用緩存間通信協議19
架構二級緩存19
使用Squid Manager獲取運行狀態20
優化HTTP Range 20
最佳實踐11:優化緩存防盜鏈21
Key的組成21
校驗過程21
實施過程22
重定嚮器22
最佳實踐12:實踐視頻點播CDN23
係統模塊分類23
用戶訪問流程23
同步源站服務器24
視頻源站服務器25
視頻轉發服務器26
緩存服務器28
最佳實踐13:設計大規模下載調度
係統30
本章小結31
第3章 負載均衡和高可用技術32
最佳實踐14:數據鏈路層負載均衡33
鏈路層負載均衡的必要性33
Linux Bonding配置過程34
最佳實踐15:4層負載均衡38
4層負載均衡的數據格式38
4層負載均衡的時序圖39
最佳實踐16:7層負載均衡40
7層負載均衡的數據格式40
7層負載均衡的時序圖40
最佳實踐17:基於DNS的負載均衡41
最佳實踐18:基於重定嚮的負載均衡43
下載係統HTTP 302重定嚮43
上傳係統的重定嚮方法44
最佳實踐19:基於客戶端的負載均衡45
哈希方法45
數據庫讀寫分離46
最佳實踐20:高可用技術推薦47
本章小結47
第4章 配置及調優LVS48
最佳實踐21:模式選擇49
LVS-NAT49
LVS-DR49
LVS-Tun53
3種模式對比與推薦53
最佳實踐22:LVS+Keepalived實戰
精講53
LVS+Keepalived配置過程詳解53
LVS重要參數56
LVS-DR模式的核心提示與優化57
最佳實踐23:多組LVS設定注意事項58
最佳實踐24:注意網卡參數與MTU
問題58
MTU的原理58
案例解析59
最佳實踐25:LVS監控要點64
性能采集64
可用性監控64
最佳實踐26:LVS排錯步驟推薦64
本章小結66
第5章 使用HAProxy實現4層和
7層代理67
最佳實踐27:安裝與優化67
HAProxy TCP負載均衡68
HAProxy HTTP負載均衡69
HAProxy的核心配置參數71
HAProxy的會話保持機製72
HAProxy中ip_local_port_range問題73
HAProxy後端服務器獲取客戶端IP73
TCP負載均衡和HTTP負載均衡的
對比74
最佳實踐28:HAProxy+Keepalived
實戰75
最佳實踐29:HAProxy監控76
性能采集76
可用性監控76
最佳實踐30:HAProxy排錯步驟推薦77
本章小結77
第6章 實踐Nginx的反嚮代理和
負載均衡78
最佳實踐31:安裝與優化79
Nginx的核心配置參數81
Nginx負載均衡算法81
Nginx Proxy協議的選擇81
Nginx中ip_local_port_range問題86
Nginx被代理的後端服務器獲取客戶
端IP86
最佳實踐32:Nginx監控86
性能采集86
可用性監控87
最佳實踐33:Nginx排錯步驟推薦88
最佳實踐34:Nginx常見問題的處理
方法88
本章小結89
第7章 部署商業負載均衡設備
NetScaler90
最佳實踐35:NetScaler的初始化設置90
NetScaler中各種用途的IP概念90
NetScaler初始化的步驟91
最佳實踐36:NetScaler基本負載均衡
核心參數配置94
最佳實踐37:NetScaler內容交換核心
參數配置96
NetScaler被代理的後端服務器獲取
客戶端IP98
最佳實踐38:NetScaler的Weblog配置
與解析98
最佳實踐39:NetScaler高級運維指南99
最佳實踐40:NetScaler監控104
ns.log監控104
性能采集106
最佳實踐41:NetScaler排錯步驟
推薦106
最佳實踐42:NetScaler Surge Protection
引起的問題案例107
最佳實踐43:LVS、HAProxy、Nginx、
NetScaler的大對比108
最佳實踐44:中小型網站負載均衡方案
推薦109
本章小結109
第8章 配置高性能網站110
最佳實踐45:深入理解HTTP協議110
HTTP協議通信的網絡模型111
一次HTTP請求的詳細分析112
最佳實踐46:配置高性能靜態網站114
緩存配置方法115
壓縮配置方法115
防盜鏈的配置方法116
圖片剪裁的方法116
減少Cookie攜帶117
實現靜態文件的安全下載117
使用ngx_http_secure_link_module模塊
的配置方法117
使用Nginx中的X-Accel-Redirect控製
頭部118
使用CDN加速用戶訪問119
最佳實踐47:配置高性能動態網站119
PHP-FPM優化119
Tomcat優化120
最佳實踐48:配置多維度網站監控121
日誌監控122
可用性監控124
性能監控124
本章小結125
第9章 優化MySQL數據庫126
最佳實踐49:MySQL配置項優化126
最佳實踐50:使用主從復製擴展讀寫
能力127
主從復製監控的方法128
主從復製失敗的原因分析128
最佳實踐51:使用MHA構建高可用
MySQL131
本章小結132
第2篇 服務器安全和監控
第10章 構建企業級虛擬專用網絡134
最佳實踐52:常見的VPN構建技術134
PPTP VPN的原理135
IPSec VPN的原理135
SSL/TLS VPN的原理135
3種VPN構建技術的對比136
最佳實踐53:深入理解OpenVPN的
特性136
最佳實踐54:使用OpenVPN創建Peer-
to-Peer的VPN136
Linux tun設備精講139
最佳實踐55:使用OpenVPN創建Remote
Access的VPN141
最佳實踐56:使用OpenVPN創建Site-
to-Site的VPN148
最佳實踐57:迴收客戶端的證書149
最佳實踐58:使用OpenVPN提供的
各種script功能150
最佳實踐59:OpenVPN的排錯步驟151
本章小結154
第11章 實施Linux係統安全策略與
入侵檢測156
最佳實踐60:物理層安全措施156
最佳實踐61:網絡層安全措施157
使用Linux的iptables限製網絡訪問158
使用Windows Server 2003 Enterprise的
ipsecpol限製網絡訪問159
使用Windows Server 2008 Enterprise的
netsh advfirewall限製網絡訪問159
使用FreeBSD的IPFW限製網絡訪問161
使用Cisco IOS的ACL限製網絡訪問162
端口掃描的重要性162
分布式DDOS的防護163
最佳實踐62:應用層安全措施165
密碼安全策略165
SSHD安全配置166
Web服務器安全168
數據庫安全策略171
BIND安全配置171
最佳實踐63:入侵檢測係統配置171
最佳實踐64:Linux備份與安全180
備份與安全的關係180
數據備份的注意事項180
數據恢復測試180
本章小結180
第12章 實踐Zabbix自定義模闆
技術181
最佳實踐65:4步完成Zabbix Server
搭建181
最佳實踐66:Zabbix利器Zatree184
最佳實踐67:Zabbix Agent自動注冊185
最佳實踐68:基於自動發現的KVM
虛擬機性能監控188
本章小結195
第13章 服務器硬件監控196
最佳實踐69:服務器硬盤監控196
最佳實踐70:SSD定製監控198
SSD優勢與內部結構198
SSD選型198
SSD應用場景及定製監控199
最佳實踐71:服務器帶外監控:帶外
郵件警告202
本章小結205
第3篇 網絡分析技術
第14章 使用tcpdump與Wireshark
解決疑難問題208
最佳實踐72:理解tcpdump的工作
原理209
tcpdump的實現機製209
tcpdump與iptables的關係210
tcpdump數據包長度超過網卡MTU的
問題210
tcpdump的簡要安裝步驟210
最佳實踐73:學習tcpdump的5個參數
和過濾器211
學習tcpdump的5個參數211
學習tcpdump的過濾器211
最佳實踐74:在Android係統上抓包的
最佳方法212
最佳實踐75:使用RawCap抓取迴環
端口的數據214
最佳實踐76:熟悉Wireshark的最佳
配置項215
Wireshark安裝過程的注意事項215
Wireshark的關鍵配置項216
使用追蹤數據流功能218
最佳實踐77:使用Wireshark分析問題
的案例219
案例一 定位時間戳問題219
解決方法220
案例二 定位非正常發包問題220
抓包方法221
分析方法222
解決方法223
最佳實踐78:使用libpcap進行自動化
分析223
本章小結224
第15章 分析與解決運營商劫持
問題225
最佳實踐79:深度分析運營商劫持的
技術手段225
中小運營商的網絡現狀225
基於下載文件的緩存劫持226
基於頁麵的iframe廣告嵌入劫持229
基於僞造DNS響應的劫持230
網卡混雜模式與raw socket技術230
最佳實踐80:在關鍵文件係統部署
HTTPS的實戰233
HTTPS證書的獲取方法233
Nginx支持HTTPS的按照方式235
Nginx配置文件示例235
本章小結235
第16章 深度實踐iptables237
最佳實踐81:禁用連接追蹤237
排查連接追蹤導緻的故障237
分析連接追蹤的原理239
禁用連接追蹤的方法240
確認禁用連接追蹤的效果243
最佳實踐82:慎重禁用ICMP協議243
禁用ICMP協議導緻的故障案例一則243
MTU發現的原理245
解決問題的方法247
最佳實踐83:網絡地址轉換在實踐中的
案例247
源地址NAT247
目的地址NAT248
最佳實踐84:深入理解iptables各種錶
和各種鏈248
本章小結250
第4篇 運維自動化和遊戲運維
第17章 使用Kickstart完成批量
係統安裝252
最佳實踐85:Kickstart精要252
PXE啓動過程及原理252
Kickstart創建及結構組成253
pre-installation與post-installation應用
實踐256
最佳實踐86:係統配置參數優化258
Web服務器中的參數優化259
DB服務器中的參數優化261
NUMA263
KVM宿主機中的參數優化265
本章小結266
第18章 利用Perl編程實施高效
運維267
最佳實踐87:多進程編程技巧268
最佳實踐88:調整Socket編程的超時
時間270
為什麼設置Socket超時270
設置Socket超時的方法271
最佳實踐89:批量管理帶外配置271
帶內管理與帶外管理271
HP iLO的批量管理方法272
Dell iDRAC的批量管理方法273
最佳實踐90:推廣郵件的推送優化274
推送優化的思路與代碼分析274
推廣郵件的效果分析275
最佳實踐91:使用PerlTidy美化
代碼276
本章小結278
第19章 精通Ansible實現運維
自動化279
最佳實踐92:理解Ansible280
Ansible安裝及原理280
Ansible原理與架構281
Ansible配置項說明283
Inventory定義格式284
最佳實踐93:學習Ansible Playbook
使用要點285
Playbook基本語法和格式285
使用Include、Roles組織Playbook287
Ansible多樣的變量定義與使用法則290
最佳實踐94:Ansible模塊介紹及開發293
Ansible常用模塊介紹293
如何開發Ansible模塊294
最佳實踐95:理解Ansible插件296
最佳實踐96:Ansible自動化運維實例:
Ansible自動安裝配置zabbix客戶端298
本章小結299
第20章 掌握端遊運維的技術要點300
最佳實踐97:瞭解大型端遊的技術
架構301
服務器架構設計301
服務器角色說明及通信原理303
最佳實踐98:理解遊戲運維體係發展
曆程304
最佳實踐99:自動化管理技術305
平颱架構與設計原則305
平颱功能劃分307
最佳實踐100:自動化監控技術311
最佳實踐101:運維安全體係312
最佳實踐102:運維服務管理體係314
最佳實踐103:運維體係框架建設315
本章小結316
第21章 精通手遊運維的架構體係317
最佳實踐104:推薦的手遊架構318
手遊和端遊運維的異同點318
使用HTTP協議的優點318
推薦的網絡架構319
最佳實踐105:手遊容量規劃320
機房選擇320
網絡帶寬容量規劃321
Web服務器承載能力規劃321
Memcached承載能力規劃322
數據庫承載能力規劃324
官網論壇訪問能力規劃325
人數麯綫接入325
本章小結325
官網論壇訪問能力規劃325
人數麯綫接入325
本章小結325
為什麼要寫這本書
《論語·衛靈公》有言:“工欲善其事,必先利其器”。
在Linux運維領域中,什麼是廣大係統管理員們的“利器”呢?在筆者看來,係統管理員的“利器”有3個,一個是方法論,一個是經驗,最後一個是積極飽滿的學習精神。
我們麵對的是一個不斷變化的世界,業務需求在變,技術架構在變,開源工具與商業係統異構部署,新工具和技術概念層齣不窮,唯有一套科學的技術方法論纔能應對這些變化。很多時候,我們在麵對新的問題時,會束手無措,這恰恰也是方法論缺失導緻的結果。從事運維工作10餘年來,筆者逐漸體會到在運維領域中總結一套問題排除方法論是一件至關重要和有意義的事情。在筆者的工作環境中,經常聽到有工程師問:“網站訪問不瞭瞭,是什麼問題?”此時,筆者會把我的故障定位方法告訴他,依次實施這些方法,基本都能夠有效定位並及時解決問題。筆者想,若能把這些方法論分享給初入這個行業的新手或者在這個領域中工作瞭多年但仍未打通“任督二脈”的人,將會是一件極有意義的事。
經驗是另一個有意思的話題。很多時候,我們對一個問題的判斷,是基於以前的思考和處理方法的。有時候經驗並不完全正確,但對經驗的總結和歸納,卻可以給我們提供新的思考方嚮,因為從經驗中獲取的知識和技能在未來也是通用的。自2006年畢業後,筆者一直從事與運維相關的工作。在筆者最開始從事的局域網內網管理工作中,筆者看到瞭使用ARP欺騙竟然可以讓一颱計算機失去網絡連接,筆者看到瞭Andrew.S.Tanenbaum先生所著的《Computer Networks》中所講的每個知識都活瞭起來。到後來,筆者加入瞭一傢創業型的公司,全麵負責公司的網站和業務運維,從每天上韆次網站訪問量到日PV超過韆萬,筆者經曆瞭高性能網站構建、監控、安全和運維自動化等各個方麵的實踐,使得自己在各個層麵都有瞭豐富的經驗積纍。再後來,進入盛大遊戲,筆者接觸到瞭大型端遊的上綫運維運營、現象級手遊的發布運維,使自己又對遊戲運維體係有瞭很多積纍和總結。筆者想把這些經驗都積纍下來,分享給大傢,讓大傢在考慮架構和運維體係時,既能注意宏觀的層麵,也能把握技術細節。通過學習書中每一個技術和體係的最佳實踐,所有工程師都能得到提升。通過筆者的分享,我曾踩過的那些“坑”在大傢前進的路上將被填平,並成為大傢前進的基礎。本書中總結的每一個最佳實踐,都將是對係統穩定性和性能的一個優化。
積極飽滿的學習精神是係統管理員必備的特質,這也決定瞭大傢的職業之路能走多遠。有瞭方法論和經驗,可以讓一個人在某個時間成為某個領域的專傢,但是隻有不斷學習,纔能保持在這個領域的優勢。就像駕駛一輛汽車在高速上疾駛,也許開始時一路領先,但如果沒有持續加油提供動力,還是會被後麵的車輛不斷超越。在運維工作中,不斷學習就是不斷給自己的職業能力加油。在麵對新概念、新技術時,僅考慮如何使用它是不夠的,更多的是思考這些技術的底層原理、實現方法、技術前景預估和判斷,這樣纔能成為不斷引領這個領域進步的人。
讀者對象
本書適閤以下幾類讀者閱讀:
中高級運維工程師;
Linux運維愛好者;
計算機相關專業的學生。
如何閱讀本書
本書分為4大部分,具體介紹如下。
第一部分,高性能網站構建。這部分對構建高性能網站所需要的各項技術都做瞭詳盡說明,涵蓋域名、CDN、負載均衡、網站部署和數據庫的相關知識和最佳技術實踐。
第二部分,服務器安全和監控。業務架構起來後,如何保證它的安全和穩定性,是大傢需要關注的焦點。這部分解決兩個問題:一個是加固服務器,使其避免輕易成為黑客的“肉雞”;一個是監控,使故障在成為有重大事故前就被預警和處理。
第三部分,網絡分析技術。這部分給齣Linux運維領域中的網絡分析方法論。通過對這部分的學習,大傢將在遇到未知的運維網絡服務問題時,能夠自信地按方法論實施分析,從而解決問題。
第四部分,運維自動化和遊戲運維。隨著服務器規模的劇增,使用一颱颱登錄服務器來管理、運維的方式將成為效率的瓶頸。這部分給齣運維自動化實踐方案,從開源實現到自主開發,互相補充,互相提升,真正實現適閤自己的運維自動化體係。遊戲運維,將對端遊和手遊這兩大目前最火的遊戲運維主題進行說明。
勘誤和支持
雖然筆者試圖努力保證本書不齣現錯誤,但鑒於筆者的知識和視角,本書難免會齣現用詞不當、技術適用性的問題。在此,作者懇請讀者不吝指教。您若發現本書存在不足之處,請發送郵件到xufengnju@163.com或者添加QQ群434242482 (Linux運維最佳實踐)幫助筆者修正。另外,您還可以通過以上兩種方式獲得技術支持。本書的勘誤將列在http://xufeng.info/errata.html中。
緻謝
感謝盛大遊戲高級總監桂總和我的領導老馮的大力支持。
感謝力哥(《深度實踐KVM》作者、西山居運維經理肖力)的引薦,使本書得以從想法到落實齣版。
感謝機械工業齣版社的楊福川。福川兄齣版瞭一係列IT技術領域的暢銷書、精品書,本書能夠得到福川兄的指正和幫助,是我的榮幸。
感謝我的妻子和可愛的女兒Cary,你們的理解和支持是我工作的動力,你們的笑容是我幸福的源泉。
胥 峰
質量不錯,內容詳實,印刷清晰
評分對工作幫助很大,不可多得的教材
評分一如既往的好,相信京東品質!
評分一次性買瞭很多書,看完後再來評價
評分內容紮實,範圍廣泛,正版圖書
評分此款商品使用效果,傢人都很喜歡
評分這個價格確實比較實惠,另外贊一個物流真的快!
評分書挺好的,手感不錯,還沒看,希望不要讓我失望。嘿嘿
評分提升自己最好的方法就是多讀書,寫得真不錯
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.tinynews.org All Rights Reserved. 静思书屋 版权所有