暢銷(xiāo)書(shū)《高性能Linux服務(wù)器構建實(shí)戰:運維監控、性能調優(yōu)與集群應用》姊妹篇,資深運維專(zhuān)家和架構師多年經(jīng)驗結晶;
以實(shí)際生產(chǎn)環(huán)境為背景,從系統安全、故障排查、自動(dòng)化運維、集群架構4個(gè)維度講解構建大規模和高性能Linux服務(wù)器集群所需技術(shù)、工具、方法和技巧。
《高性能Linux服務(wù)器構建實(shí)戰:系統安全、故障排查、自動(dòng)化運維與集群架構》是Linux運維領(lǐng)域暢銷(xiāo)的、公認的經(jīng)典著(zhù)作《高性能Linux服務(wù)器構建實(shí)戰:運維監控、性能調優(yōu)與集群應用》的姊妹篇,它從系統安全運維、運維故障排查、自動(dòng)化運維、集群架構4個(gè)維度講解了構建大規模和高性能Linux服務(wù)器集群所需要的技術(shù)、工具、方法和技巧,二者一脈相承,互為補充,內容涵蓋了運維工程師構建高性能服務(wù)器需要掌握的各種知識。本書(shū)在內容上繼承了前面一本書(shū)中被讀者認可的諸多優(yōu)點(diǎn):實(shí)用(以實(shí)際生產(chǎn)環(huán)境為背景)、實(shí)戰(包含大量案例)、易懂,同時(shí)也改進(jìn)了讀者反饋的不足之處。
全書(shū)共14章,分為四個(gè)部分:安全運維篇(1-3章)主要講解了服務(wù)器安全運維、網(wǎng)絡(luò )安全運維和數據安全運維的關(guān)鍵技術(shù)和方法;運維故障排查篇(4-5章)從服務(wù)器系統和應用軟件兩個(gè)維度講解了運維故障的排查思路,以及常見(jiàn)的和經(jīng)典的運維故障的解決方案;自動(dòng)化運維篇(6-9章)主要講解了海量主機的自動(dòng)化部署和配置、自動(dòng)化監控、分布式監控等大規模集群運維所需的各種工具(pssh、pdsh、mussh、Ganglia、nagios、Centreon等)和方法;集群架構篇(10-14)講解了如何構建和優(yōu)化基于Web和MySQL數據庫的高性能集群和高可用的負載均衡集群。
高俊峰(南非螞蟻),專(zhuān)業(yè)運維專(zhuān)家、系統架構師、DBA和技術(shù)顧問(wèn),從事Linux/Unix服務(wù)器系統的架構、運維和管理多年。擅長(cháng)大規模服務(wù)器集群的運維和管理,在故障診斷與排除、自動(dòng)化運維、安全運維、性能調優(yōu)、虛擬化等方面積累了大量的實(shí)戰經(jīng)驗。國內知名IT技術(shù)社區51CTO的博客專(zhuān)家和ChinaUnix論壇高可用集群版塊的版主,同時(shí)還活躍于ITPUB等技術(shù)社區,在社區和論壇里發(fā)表了大量技術(shù)文章,深受歡迎。此外,他還著(zhù)有暢銷(xiāo)書(shū)《循序漸進(jìn)Linux》和《高性能Linux服務(wù)器構建實(shí)戰:運維監控、性能調優(yōu)與集群應用》,后者是本書(shū)的姊妹篇,是Linux運維領(lǐng)域公認的經(jīng)典著(zhù)作。
前言
第一部分 安全運維篇
第1章 Linux服務(wù)器安全運維
1.1 賬戶(hù)和登錄安全
1.1.1 刪除特殊的用戶(hù)和用戶(hù)組
1.1.2 關(guān)閉系統不需要的服務(wù)
1.1.3 密碼安全策略
1.1.4 合理使用su、sudo命令
1.1.5 刪減系統登錄歡迎信息
1.1.6 禁止Control-Alt-Delete鍵盤(pán)關(guān)閉命令
1.2 遠程訪(fǎng)問(wèn)和認證安全
1.2.1 遠程登錄取消telnet而采用SSH方式
1.2.2 合理使用shell歷史命令記錄功能
1.2.3 啟用tcp_wrappers防火墻
1.3 文件系統安全
1.3.1 鎖定系統重要文件
1.3.2 文件權限檢查和修改
1.3.3 /tmp、/var/tmp、/dev/shm安全設定
1.4 系統軟件安全管理
1.4.1 軟件自動(dòng)升級工具yum
1.4.2 yum的安裝與配置
1.4.3 yum的特點(diǎn)與基本用法
1.4.4 幾個(gè)不錯的yum源
1.5 Linux后門(mén)入侵檢測工具
1.5.1 rootkit后門(mén)檢測工具chkrootkit
1.5.2 rootkit后門(mén)檢測工具RKHunter
1.6 服務(wù)器遭受攻擊后的處理過(guò)程
1.6.1 處理服務(wù)器遭受攻擊的一般思路
1.6.2 檢查并鎖定可疑用戶(hù)
1.6.3 查看系統日志
1.6.4 檢查并關(guān)閉系統可疑進(jìn)程
1.6.5 檢查文件系統的完好性
1.7 一次Linux被入侵后的分析
1.7.1 受攻擊現象
1.7.2 初步分析
1.7.3 斷網(wǎng)分析系統
1.7.4 尋找攻擊源
1.7.5 查找攻擊原因
1.7.6 揭開(kāi)謎團
1.7.7 如何恢復網(wǎng)站
第2章 Linux網(wǎng)絡(luò )安全運維
2.1 網(wǎng)絡(luò )實(shí)時(shí)流量監測工具iftop
2.1.1 iftop能做什么
2.1.2 iftop的安裝
2.1.3 使用iftop監控網(wǎng)卡實(shí)時(shí)流量
2.2 網(wǎng)絡(luò )流量監控與分析工具Ntop和Ntopng
2.2.1 Ntop與MRTG的異同
2.2.2 Ntop與Ntopng的功能介紹
2.2.3 安裝Ntop與Ntopng
2.2.4 Ntop和Ntopng的使用技巧
2.3 網(wǎng)絡(luò )性能評估工具iperf
2.3.1 iperf能做什么
2.3.2 iperf的安裝與使用
2.3.3 iperf應用實(shí)例
2.4 網(wǎng)絡(luò )探測和安全審核工具nmap
2.4.1 nmap和Zenmap簡(jiǎn)介
2.4.2 nmap基本功能與結構
2.4.3 nmap的安裝與驗證
2.4.4 nmap的典型用法
2.4.5 nmap主機發(fā)現掃描
2.4.6 nmap端口掃描
2.4.7 nmap版本偵測
2.4.8 nmap操作系統偵測
第3章 數據安全工具DRBD、extundelete
3.1 數據鏡像軟件DRBD介紹
3.1.1 DRBD的基本功能
3.1.2 DRBD的構成
3.1.3 DRBD與現在的集群的關(guān)系
3.1.4 DRBD的主要特性
3.2 DRDB的安裝與配置
3.2.1 安裝環(huán)境說(shuō)明
3.2.2 DRBD的安裝部署
3.2.3 快速配置一個(gè)DRBD鏡像系統
3.3 DRBD的管理與維護
3.3.1 啟動(dòng)DRDB
3.3.2 測試DRBD數據鏡像
3.3.3 DRBD主備節點(diǎn)切換
3.4 數據恢復軟件extundelete介紹
3.4.1 如何使用"rm -rf"命令
3.4.2 extundelete與ext3grep的異同
3.4.3 extundelete的恢復原理
3.4.4 安裝extundelete
3.4.5 extundelete用法詳解
3.5 實(shí)戰:extundelete恢復數據的過(guò)程
3.5.1 通過(guò)extundelete恢復單個(gè)文件
3.5.2 通過(guò)extundelete恢復單個(gè)目錄
3.5.3 通過(guò)extundelete恢復所有誤刪除數據
3.5.4 通過(guò)extundelete恢復某個(gè)時(shí)間段的數據
第二部分 運維故障排查篇
第4章 Linux系統運維故障排查思路
4.1 Linux系統故障的處理思路
4.2 Linux系統無(wú)法啟動(dòng)的解決方法
4.2.1 文件系統破壞導致系統無(wú)法啟動(dòng)
4.2.2 /etc/fstab文件丟失導致系統無(wú)法啟動(dòng)
4.3 Linux系統無(wú)響應(死機)問(wèn)題分析
4.4 Linux下常見(jiàn)網(wǎng)絡(luò )故障的處理思路
4.4.1 檢查網(wǎng)絡(luò )硬件問(wèn)題
4.4.2 檢查網(wǎng)卡是否正常工作
4.4.3 檢查DNS解析文件是否設置正確
4.4.4 檢查服務(wù)是否正常打開(kāi)
4.4.5 檢查訪(fǎng)問(wèn)權限是否打開(kāi)
4.4.6 檢查局域網(wǎng)主機之間聯(lián)機是否正常
第5章 Linux故障排查案例實(shí)戰
5.1 常見(jiàn)系統故障案例
5.1.1 su切換用戶(hù)帶來(lái)的疑惑
5.1.2 "Read-only file system"錯誤與解決方法
5.1.3 "Argument list too long"錯誤與解決方法
5.1.4 inode耗盡導致應用故障
5.1.5 文件已刪除但空間不釋放的原因
5.1.6 "Too many open files"錯誤與解決方法
5.2 Apache常見(jiàn)錯誤故障案例
5.2.1 "No space left on device"錯誤與解決方法
5.2.2 apache(20014)故障與解決方法
5.2.3 "could not bind to address 0.0.0.0:80"錯誤與解決方法
5.3 因NAS存儲故障引起的Linux系統恢復案例
5.3.1 故障現象描述
5.3.2 問(wèn)題判斷思路
5.3.3 問(wèn)題處理過(guò)程
5.3.4 解決問(wèn)題
第三部分 自動(dòng)化運維篇
第6章 輕量級運維利器pssh、pdsh和mussh
6.1 并行SSH運維工具pssh
6.1.1 pssh應用場(chǎng)景
6.1.2 pssh的安裝與用法
6.1.3 pssh應用實(shí)例
6.2 并行分布式運維工具pdsh
6.2.1 pdsh應用場(chǎng)景
6.2.2 pdsh的安裝與語(yǔ)法
6.2.3 pdsh應用實(shí)例
6.3 多主機ssh封裝器mussh
6.3.1 mussh功能介紹
6.3.2 mussh的安裝與語(yǔ)法
6.3.3 mussh應用實(shí)例
第7章 分布式監控系統Ganglia
7.1 Ganglia簡(jiǎn)介
7.2 Ganglia的組成
7.3 Ganglia的工作原理
7.3.1 Ganglia數據流向分析
7.3.2 Ganglia工作模式
7.4 Ganglia的安裝
7.4.1 yum源安裝方式
7.4.2 源碼方式
7.5 配置一個(gè)Ganglia分布式監控系統
7.5.1 Ganglia配置文件介紹
7.5.2 Ganglia監控系統架構圖
7.5.3 Ganglia監控管理端配置
7.5.4 Ganglia的客戶(hù)端配置
7.5.5 Ganglia的Web端配置
7.6 Ganglia監控系統的管理和維護
7.7 Ganglia監控擴展實(shí)現機制
7.7.1 擴展Ganglia監控功能的方法
7.7.2 通過(guò)gmetric接口擴展Ganglia監控
7.7.3 通過(guò)Python插件擴展Ganglia監控
7.7.4 實(shí)戰:利用Python接口監控Nginx運行狀態(tài)
7.8 Ganglia在實(shí)際應用中要考慮的問(wèn)題
7.8.1 網(wǎng)絡(luò )IO可能存在瓶頸
7.8.2 CPU可能存在瓶頸
7.8.3 gmetad寫(xiě)入rrd數據庫可能存在瓶頸
第8章 基于nagios的分布式監控報警平臺Centreon
8.1 Centreon概述
8.2 Centreon的特點(diǎn)
8.3 Centreon的結構
8.4 安裝Centreon+nagios監控系統
8.4.1 安裝支持Centreon的yum源
8.4.2 安裝系統基礎依賴(lài)庫
8.4.3 安裝nagios及nagios-plugins
8.4.4 安裝ndoutils
8.4.5 安裝nrpe
8.4.6 安裝Centreon
8.4.7 安裝配置Centreon Web
8.4.8 啟動(dòng)Centreon相關(guān)服務(wù)
8.4.9 安裝問(wèn)題總結
8.5 配置Centreon監控系統
8.5.1 添加主機和主機組
8.5.2 批量添加主機
8.5.3 監控引擎管理
8.5.4 添加服務(wù)和服務(wù)組
8.5.5 監控報警配置
8.5.6 用戶(hù)和用戶(hù)權限管理
8.6 配置分布式監控
8.6.1 分布式監控架構與實(shí)現原理
8.6.2 分布式監控搭建環(huán)境介紹
8.6.3 監控軟件的安裝
8.6.4 配置節點(diǎn)間SSH信任登錄
8.6.5 在Central server上添加分布式監控配置
8.7 常見(jiàn)服務(wù)監控配置
8.7.1 nagios插件編寫(xiě)規范
8.7.2 監控Apache運行狀態(tài)
8.7.3 監控MySQL運行狀態(tài)
8.7.4 監控Hadoop HDFS運行狀態(tài)
8.8 桌面監控報警器Nagstamon
第9章 通過(guò)Ganglia與Centreon構建智能化監控報警平臺
9.1 智能運維監控報警平臺的組成
9.2 Ganglia作為數據收集模塊
9.3 Centreon作為監控報警模塊
9.4 Ganglia與Centreon的無(wú)縫整合
9.4.1 數據提取腳本
9.4.2 實(shí)現Ganglia與Centreon完美整合
9.5 在Centreon中實(shí)現批量數據收集與監控報警
第四部分 集群架構篇
第10章 高性能Web服務(wù)器Nginx
10.1 高性能Web服務(wù)器Nginx介紹
10.1.1 Nginx的組成與工作原理
10.1.2 Nginx的性能優(yōu)勢
10.2 Nginx的安裝
10.2.1 安裝Nginx依賴(lài)庫
10.2.2 快速安裝Nginx
10.3 配置與調試Nginx
10.3.1 Nginx配置文件結構
10.3.2 Nginx配置文件詳解
10.3.3 Nginx日常維護技巧
10.4 Nginx常用功能介紹
10.4.1 Nginx反向代理應用實(shí)例
10.4.2 Nginx的URL重寫(xiě)應用實(shí)例
10.5 案例:Nginx作為Web緩存服務(wù)器應用
10.5.1 在Nginx下安裝緩存服務(wù)器
10.5.2 配置Nginx緩存服務(wù)器
10.5.3 測試proxy_cache實(shí)現的緩存功能
10.5.4 如何清除指定的URL緩存
10.6 案例:Nginx作為負載均衡服務(wù)器應用
10.6.1 Nginx的負載均衡算法
10.6.2 Nginx的負載均衡配置實(shí)例
10.7 Nginx性能優(yōu)化技巧
10.7.1 編譯安裝過(guò)程優(yōu)化
10.7.2 利用TCMalloc優(yōu)化Nginx的性能
10.7.3 Nginx內核參數優(yōu)化
第11章 高性能集群軟件Keepalived
11.1 Keepalived介紹
11.1.1 Keepalived是什么
11.1.2 VRRP協(xié)議與工作原理
11.1.3 Keepalived工作原理
11.1.4 Keepalived的體系結構
11.2 Keepalived安裝與配置
11.2.1 Keepalived的安裝過(guò)程
11.2.2 Keepalived的全局配置
11.2.3 Keepalived的VRRPD配置
11.2.4 Keepalived的LVS配置
11.3 Keepalived基礎功能應用實(shí)例
11.3.1 Keepalived基礎HA功能演示
11.3.2 通過(guò)vrrp_script實(shí)現對集群資源的監控
11.3.3 Keepalived集群中MASTER和BACKUP角色選舉策略
第12章 千萬(wàn)級高并發(fā)負載均衡軟件HAProxy
12.1 高性能負載均衡軟件HAProxy介紹
12.1.1 HAProxy簡(jiǎn)介
12.1.2 四層和七層負載均衡的區別
12.1.3 HAProxy與LVS的異同
12.2 HAProxy基礎配置與應用實(shí)例
12.2.1 快速安裝HAProxy集群軟件
12.2.2 HAProxy基礎配置文件詳解
12.2.3 HAProxy的日志配置策略
12.2.4 通過(guò)HAProxy的ACL規則實(shí)現智能負載均衡
12.3 基于虛擬主機的HAProxy負載均衡系統配置實(shí)例
12.3.1 通過(guò)HAProxy的ACL規則配置虛擬主機
12.3.2 測試HAProxy實(shí)現虛擬主機和負載均衡功能
12.3.3 測試HAProxy的故障轉移功能
12.3.4 使用HAProxy的Web監控平臺
第13章 構建高性能的MySQL集群系統
13.1 常見(jiàn)的高可用MySQL解決方案
13.1.1 主從復制解決方案
13.1.2 MMM高可用解決方案
13.1.3 Heartbeat/SAN高可用解決方案
13.1.4 Heartbeat/DRBD高可用解決方案
13.1.5 MySQL Cluster高可用解決方案
13.2 通過(guò)Keepalived搭建MySQL雙主模式的高可用集群系統
13.2.1 MySQLReplication介紹
13.2.2 MySQL Replication實(shí)現原理
13.2.3 MySQL Replication常用架構
13.2.4 MySQL主主互備模式架構
13.2.5 MySQL主主互備模式配置
13.2.6 配置Keepalived實(shí)現MySQL雙主高可用
13.2.7 測試MySQL主從同步功能
13.2.8 測試Keepalived實(shí)現MySQL故障轉移
13.3 通過(guò)MMM構建MySQL高可用集群系統
13.3.1 MMM高可用MySQL方案簡(jiǎn)介
13.3.2 MMM典型應用方案
13.3.3 MMM高可用MySQL方案架構
13.3.4 MMM的安裝與配置
13.3.5 MMM的管理
13.3.6 測試MMM實(shí)現MySQL高可用功能
13.4 MySQL讀寫(xiě)分離解決方案
13.4.1 通過(guò)Amoeba實(shí)現MySQL讀寫(xiě)分離
13.4.2 通過(guò)Keepalived構建高可用的Amoeba服務(wù)
第14章 高性能負載均衡集群軟件HAProxy
14.1 高性能負載均衡架構設計原則
14.1.1 HAProxy常見(jiàn)方案與拓撲
14.1.2 高可用集群軟件的選擇
14.2 搭建HAProxy+Keepalived高可用負載均衡系統
14.2.1 搭建環(huán)境描述
14.2.2 配置HAProxy負載均衡服務(wù)器
14.2.3 配置主、備Keepalived服務(wù)器
14.3 測試HAProxy+Keepalived高可用負載均衡集群
14.3.1 測試Keepalived的高可用功能
14.3.2 測試負載均衡功能
14.4 構建雙主高可用的HAProxy負載均衡系統
14.4.1 系統架構圖與實(shí)現原理
14.4.2 安裝并配置HAProxy集群系統
14.4.3 安裝并配置雙主的Keepalived高可用系統
14.4.4 測試雙主高可用的HAProxy負載均衡集群系統