本書緊密貼合網(wǎng)絡自動化運維項目化的相關職業(yè)發(fā)展需求,為助力讀者成為出色的Linux系統(tǒng)管理員與DevOps工程師而編寫,旨在提升IT基礎設施的管理效率和穩(wěn)定性。本書從基礎的Linux系統(tǒng)管理知識出發(fā),逐步深入網(wǎng)絡服務的自動化部署、容器化技術、配置管理自動化、安全與權限控制等高級主題。通過理論與實踐相結合的方式,讀者可以系統(tǒng)地學習如何使用Docker、Zabbix、Ansible等工具,實現(xiàn)服務的快速部署、配置的統(tǒng)一管理和系統(tǒng)的實時監(jiān)控。本書中不僅包含豐富的案例分析和實訓項目,還特別強調了自動化測試和CI/CD(持續(xù)集成、持續(xù)交付和持續(xù)部署)的重要性,可以指導讀者構建自動化的測試流程和部署策略。此外,本書中還涉及監(jiān)控告警、日志管理等運維關鍵環(huán)節(jié),并且介紹了如何通過自動化手段保障系統(tǒng)的安全性和可靠性。每個項目都配有實操練習,使讀者能夠在實際操作中深入理解并掌握自動化運維的相關技能。本書可以作為普通高等院校、高等或中等職業(yè)院校各專業(yè)的Linux自動化運維課程的教材,適合所有希望提升自動化運維能力、優(yōu)化IT基礎設施管理的專業(yè)人士。無論是初學者,還是有經(jīng)驗的管理員,都能從本書中獲得寶貴的知識和實用的技術。通過學習本書,讀者可以構建一套完整的自動化運維體系,有效提升工作效率,確保系統(tǒng)的穩(wěn)定性和安全性,滿足現(xiàn)代企業(yè)對IT運維的高標準要求。
陳志濤,順德職業(yè)技術學院專職教師,廣東省高職院校高水平專業(yè)群軟件技術專業(yè)群負責人,廣東省技術能手,金磚國家職業(yè)技能大賽(網(wǎng)絡安全賽項)優(yōu)秀專家,佛山市網(wǎng)絡安全專家講師團成員,順德區(qū)網(wǎng)絡安全和信息化專家。主編教材3本,參編教材3本,獲廣東省新職業(yè)技術技能大賽工業(yè)互聯(lián)網(wǎng)工程技術人員項目金牌,中華人民共和國第二屆職業(yè)技能大賽工業(yè)互聯(lián)網(wǎng)工程技術(國賽精選)項目優(yōu)勝獎,2023-2023學年廣東省職業(yè)院校技能大賽(高職組)工業(yè)互聯(lián)網(wǎng)集成應用賽項(師生同賽)一等獎。積極指導學生參與各項技能競賽,獲國家級一等獎1項、二等獎2項、三等獎3項,省級一等獎9項、二等獎3項、三等獎5項。
項目1 VMware Workstation網(wǎng)絡配置及應用 1
1.1 項目情境 1
1.2 項目分析 2
1.3 項目相關知識 2
1.3.1 VMware Workstation中的網(wǎng)絡連接模式 2
1.3.2 VMware Workstation中虛擬機的硬件參數(shù) 4
1.3.3 虛擬機的鏡像文件 5
1.3.4 虛擬機的快照 6
1.4 項目實施 7
任務1-1 VMware Workstation中虛擬機的網(wǎng)絡配置 7
任務1-2 VMware Workstation中虛擬機的硬件參數(shù)配置 11
任務1-3 VMware Workstation中虛擬機的鏡像管理 13
任務1-4 VMware Workstation中虛擬機的快照管理 14
1.5 項目拓展 16
1.5.1 理論知識拓展 16
1.5.2 項目實訓題 17
項目2 SSH協(xié)議及其應用 18
2.1 項目情境 18
2.2 項目分析 19
2.3 項目相關知識 19
2.3.1 SSH協(xié)議 19
2.3.2 SSH工具 20
2.3.3 SSH協(xié)議的應用 22
2.4 項目實施 23
任務2-1 使用SecureCRT連接Linux服務器 23
任務2-2 Linux客戶機免密登錄Linux服務器 25
任務2-3 使用scp命令進行遠程文件的復制 26
任務2-4 使用sftp命令進行遠程文件的上傳和下載 27
2.5 項目拓展 28
2.5.1 理論知識拓展 28
2.5.2 項目實訓題 29
項目3 EVE-NG 31
3.1 項目情境 31
3.2 項目分析 32
3.3 項目相關知識 32
3.3.1 EVE-NG的特性 32
3.3.2 EVE-NG支持的鏡像 33
3.4 項目實施 34
任務3-1 EVE-NG的安裝和使用 34
任務3-2 在EVE-NG中導入QEMU鏡像 41
3.5 項目拓展 43
3.5.1 理論知識拓展 43
3.5.2 項目實訓題 44
項目4 Docker的基礎知識及應用 45
4.1 項目情境 45
4.2 項目分析 46
4.3 項目相關知識 46
4.3.1 Docker容器的技術特性 46
4.3.2 Docker鏡像 47
4.3.3 Docker鏡像加速器 48
4.3.4 Docker倉庫 49
4.4 項目實施 51
任務4-1 Docker的安裝 51
任務4-2 Docker鏡像加速器的配置 52
任務4-3 Docker鏡像的管理 54
任務4-4 Docker倉庫的管理 55
4.5 項目拓展 57
4.5.1 理論知識拓展 57
4.5.2 項目實訓題 58
?
項目5 Docker容器的管理及應用 60
5.1 項目情境 60
5.2 項目分析 61
5.3 項目相關知識 61
5.3.1 Docker容器 61
5.3.2 Docker的網(wǎng)絡模式 62
5.3.3 Docker存儲卷 64
5.3.4 Docker鏡像的構建原理 65
5.4 項目實施 66
任務5-1 Docker容器的管理 66
任務5-2 Docker容器的綜合應用 68
任務5-3 手動構建Docker鏡像 70
任務5-4 使用Docker Compose構建Docker鏡像 71
5.5 項目拓展 73
5.5.1 理論知識拓展 73
5.5.2 項目實訓題 73
項目6 Zabbix的安裝和配置 75
6.1 項目情境 75
6.2 項目分析 76
6.3 項目相關知識 76
6.3.1 Zabbix的技術特性 76
6.3.2 Zabbix組件 77
6.4 項目實施 78
任務6-1 基于All-in-One安裝Zabbix 78
任務6-2 Zabbix組件的分離部署 83
6.5 項目拓展 85
6.5.1 理論知識拓展 85
6.5.2 項目實訓題 85
項目7 使用Zabbix監(jiān)控服務器 88
7.1 項目情境 89
7.2 項目分析 89
7.3 項目相關知識 89
7.3.1 Zabbix中的主機用戶角色 89
7.3.2 Zabbix中的監(jiān)控項 93
7.3.3 Zabbix中的監(jiān)控圖形 94
7.3.4 Zabbix中的觸發(fā)器 95
7.3.5 Zabbix中的告警功能 96
7.4 項目實施 97
任務7-1 在Zabbix中添加被監(jiān)控主機 97
任務7-2 在Zabbix中配置監(jiān)控項 99
任務7-3 在Zabbix中配置監(jiān)控圖形 101
任務7-4 在Zabbix中配置觸發(fā)器 102
任務7-5 在Zabbix中配置郵件告警功能 104
7.5 項目拓展 106
7.5.1 理論知識拓展 106
7.5.2 項目實訓題 107
項目8 使用Zabbix監(jiān)控網(wǎng)絡設備 109
8.1 項目情境 109
8.2 項目分析 110
8.3 項目相關知識 110
8.3.1 SNMP 110
8.3.2 交換網(wǎng)絡監(jiān)控 111
8.3.3 路由網(wǎng)絡監(jiān)控 111
8.4 項目實施 112
任務8-1 配置思科交換機 112
任務8-2 使用Zabbix監(jiān)控思科交換機 114
任務8-3 配置華三路由器 116
任務8-4 使用Zabbix監(jiān)控華三路由器 118
8.5 項目拓展 120
8.5.1 理論知識拓展 120
8.5.2 項目實訓題 121
項目9 Ansible的安裝和配置 123
9.1 項目情境 123
9.2 項目分析 124
9.3 項目相關知識 124
9.3.1 Ansible 124
9.3.2 Ansible文件系統(tǒng) 125
9.3.3 Ansible中配置文件的優(yōu)先級 125
9.4 項目實施 126
任務9-1 在管理主機上安裝Ansible 126
任務9-2 修改Ansible配置文件 127
任務9-3 在被管理主機上安裝Python 128
9.5 項目拓展 130
9.5.1 理論知識拓展 130
9.5.2 項目實訓題 130
項目10 Ansible節(jié)點的連接及管理 131
10.1 項目情境 131
10.2 項目分析 132
10.3 項目相關知識 132
10.3.1 主機清單文件 132
10.3.2 ansible.cfg文件 133
10.3.3 對稱加密 134
10.3.4 非對稱加密 135
10.4 項目實施 136
任務10-1 修改主機清單文件 136
任務10-2 修改配置文件 137
任務10-3 使用Ansible基于對稱密鑰進行主機連接 138
任務10-4 使用Ansible基于非對稱密鑰進行主機連接 139
10.5 項目拓展 140
10.5.1 理論知識拓展 140
10.5.2 項目實訓題 141
項目11 Ansible中的模塊及其應用 142
11.1 項目情境 142
11.2 項目分析 143
11.3 項目相關知識 144
11.3.1 Ad-Hoc命令 144
11.3.2 Ansible中的command模塊 145
11.3.3 Ansible中的shell模塊 145
11.3.4 Ansible中的copy模塊和fetch模塊 146
11.3.5 Ansible中的lineinfile模塊 146
11.3.6 Ansible中的file模塊 147
11.4 項目實施 147
任務11-1 command模塊的應用 147
任務11-2 shell模塊的應用 148
任務11-3 copy模塊的應用 149
任務11-4 fetch模塊的應用 150
任務11-5 lineinfile模塊的應用 150
任務11-6 file模塊的應用 151
11.5 項目拓展 152
11.5.1 理論知識拓展 152
11.5.2 項目實訓題 152
項目12 Ansible中的變量及其應用 154
12.1 項目情境 154
12.2 項目分析 155
12.3 項目相關知識 156
12.3.1 變量 156
12.3.2 Playbook的語法規(guī)則 156
12.3.3 變量的優(yōu)先級 158
12.3.4 特殊變量 159
12.4 項目實施 160
任務12-1 在Playbook中定義變量 160
任務12-2 在主機清單文件中定義變量 161
任務12-3 在主機變量文件中定義變量 162
任務12-4 在主機組變量文件中定義變量 163
任務12-5 使用Ad-Hoc命令定義變量 165
任務12-6 register變量及其應用 165
任務12-7 facts變量及其應用 166
任務12-8 magic變量及其應用 167
12.5 項目拓展 168
12.5.1 理論知識拓展 168
12.5.2 項目實訓題 169
項目13 Ansible Playbook中的結構語句及其應用 170
13.1 項目情境 170
13.2 項目分析 171
13.3 項目相關知識 171
13.3.1 Playbook中的條件結構語句 171
13.3.2 Playbook中的循環(huán)結構語句 173
13.3.3 Playbook中的錯誤控制語句 173
13.4 項目實施 175
任務13-1 Playbook中條件結構語句的應用 175
任務13-2 Playbook中循環(huán)結構語句的應用 177
任務13-3 Playbook中錯誤控制語句的應用 178
?
13.5 項目拓展 180
13.5.1 理論知識拓展 180
13.5.2 項目實訓題 181
項目14 自動化配置節(jié)點網(wǎng)卡 183
14.1 項目情境 183
14.2 項目分析 183
14.3 項目相關知識 184
14.3.1 Team接口和Team子接口 184
14.3.2 LACP模式 185
14.4 項目實施 186
任務14-1 使用Ansible將節(jié)點的Team接口配置為Active Backup模式 186
任務14-2 使用Ansible將節(jié)點的Team接口配置為LACP模式 188
14.5 項目拓展 190
14.5.1 理論知識拓展 190
14.5.2 項目實訓題 191
項目15 自動化部署運維網(wǎng)絡 193
15.1 項目情境 193
15.2 項目分析 194
15.3 項目相關知識 194
15.3.1 Docker和Ansible的相關概念 194
15.3.2 基于Ansible構建Docker容器 195
15.4 項目實施 195
任務15-1 使用Docker技術部署Ansible自動化運維管理環(huán)境 195
任務15-2 基于Docker的Ansible主機和節(jié)點連接 197
15.5 項目拓展 199
15.5.1 理論知識拓展 199
15.5.2 項目實訓題 200
項目16 自動化部署和管理DHCP服務 202
16.1 項目情境 202
16.2 項目分析 203
16.3 項目相關知識 203
16.3.1 DHCP服務的工作原理 203
16.3.2 Ansible中與管理DHCP服務有關的模塊 204
16.4 項目實施 206
任務16-1 使用Docker Compose部署DHCP服務 206
任務16-2 使用Ansible配置DHCP服務器 208
任務16-3 使用Ansible配置并測試DHCP客戶機 211
16.5 項目拓展 213
16.5.1 理論知識拓展 213
16.5.2 項目實訓題 214
項目17 自動化部署DNS服務 215
17.1 項目情境 215
17.2 項目分析 216
17.3 項目相關知識 216
17.3.1 DNS的相關知識 216
17.3.2 BIND 217
17.4 項目實施 218
任務17-1 使用Docker Compose部署B(yǎng)IND DNS服務 218
任務17-2 使用Ansible配置BIND DNS服務 220
任務17-3 使用Ansible自動化測試DNS解析功能 223
17.5 項目拓展 225
17.5.1 理論知識拓展 225
17.5.2 項目實訓題 226
項目18 自動化部署郵件服務 228
18.1 項目情境 228
18.2 項目分析 229
18.3 項目相關知識 229
18.3.1 郵件系統(tǒng)架構 229
18.3.2 Postfix和Dovecot 230
18.4 項目實施 231
任務18-1 使用Docker Compose部署郵件服務 231
任務18-2 使用Ansible配置郵件服務 233
任務18-3 使用Ansible測試郵件客戶機 235
18.5 項目拓展 237
18.5.1 理論知識拓展 237
18.5.2 項目實訓題 238
項目19 自動化部署數(shù)據(jù)庫服務 240
19.1 項目情境 240
19.2 項目分析 241
19.3 項目相關知識 241
19.3.1 數(shù)據(jù)庫系統(tǒng)架構 241
19.3.2 數(shù)據(jù)庫服務和數(shù)據(jù)庫管理 242
19.4 項目實施 243
任務19-1 使用Docker Compose部署MySQL服務 243
任務19-2 使用Ansible配置MySQL服務 245
任務19-3 使用Ansible測試數(shù)據(jù)庫連接功能 247
19.5 項目拓展 248
19.5.1 理論知識拓展 248
19.5.2 項目實訓題 249
項目20 自動化部署WWW服務 250
20.1 項目情境 250
20.2 項目分析 251
20.3 項目相關知識 251
20.3.1 WWW服務及其配置文件 251
20.3.2 虛擬主機 252
20.4 項目實施 253
任務20-1 使用Docker Compose部署WWW服務 253
任務20-2 使用Ansible配置HTTPD服務和Nginx服務 255
任務20-3 使用Ansible測試WWW服務 258
20.5 項目拓展 260
20.5.1 理論知識拓展 260
20.5.2 項目實訓題 261
項目21 自動化部署文件共享服務 262
21.1 項目情境 262
21.2 項目分析 263
21.3 項目相關知識 263
21.3.1 NFS協(xié)議 263
21.3.2 SMB協(xié)議 264
21.4 項目實施 265
任務21-1 使用Docker Compose部署NFS服務 265
任務21-2 使用Ansible配置NFS服務和SMB服務 266
任務21-3 使用Ansible測試文件共享服務 270
21.5 項目拓展 273
21.5.1 理論知識拓展 273
21.5.2 項目實訓題 273
?
項目22 自動化部署和管理Zabbix網(wǎng)絡監(jiān)控系統(tǒng) 275
22.1 項目情境 275
22.2 項目分析 276
22.3 項目相關知識 276
22.3.1 Zabbix組件 276
22.3.2 Zabbix框架 277
22.4 項目實施 278
任務22-1 使用Docker Compose部署Zabbix網(wǎng)絡監(jiān)控系統(tǒng) 278
任務22-2 使用Ansible進行Zabbix組件的分離部署和配置 281
任務22-3 使用Ansible測試Zabbix網(wǎng)絡監(jiān)控系統(tǒng)的視圖配置 286
22.5 項目拓展 288
22.5.1 理論知識拓展 288
22.5.2 項目實訓題 289