Linux自動化運維(Shell與Ansible)(微課版)

楊寅冬

  • 出版商: 人民郵電
  • 出版日期: 2024-07-01
  • 售價: $419
  • 語言: 簡體中文
  • 頁數: 264
  • ISBN: 7115638527
  • ISBN-13: 9787115638526
  • 相關分類: LinuxAnsible
  • 下單後立即進貨 (約4週~6週)

  • Linux自動化運維(Shell與Ansible)(微課版)-preview-1
Linux自動化運維(Shell與Ansible)(微課版)-preview-1

相關主題

商品描述

本書以開源Linux系統為操作平臺,通過項目驅動的方式對Linux Shell編程和Ansible自動化工具的基本使用方法進行講解,重點培養學生的實際動手能力和應用能力。

全書共12個項目,內容包括初識Shell腳本、Shell條件控制、Shell條循環控制、Shell數組與函數、sed流編輯器與awk文本處理工具、Ansible自動化概述、Ansible Playbook基本語法、變量與事實、自動化任務控制、Jinja2模板與插件、角色和集合、Ansible自動化管理。本書內容豐富,由淺入深,強調基礎技能的應用,設計項目取材於企業應用實例,並配備知識點微課和項目實訓慕課,適用於理論與實踐一體化教學。通過學習本書的內容,讀者將掌握Linux Shell編程和Ansible自動化工具的基本使用方法,能夠熟練編寫Shell腳本實現自動化任務,並能運用Ansible管理和部署復雜的系統架構。

本書可以作為高等職業院校和應用型本科院校計算機相關專業的教材,也可以作為Linux Shell編程與Ansible自動化運維培訓教材和Linux技術愛好者的參考書,還可以作為ICT、信創、開源Linux相關課程教材。

作者簡介

楊寅冬,安徽郵電職業技術學院計算機與網絡學院教師,實驗師職稱,紅帽高級架構師,主要專業領域集中於 Linux 企業服務、OpenStack 雲平臺、Ansible 自動化運維、容器和Kubernetes等方向,在高校從事Linux操作系統和雲計算方向教學工作,擔任 Linux系統與服務管理、Linux自動化運維、容器技術、OpenStack和Kubernets平臺等課程的教學工作,主編高校教材《Linux系統管理基礎教程》,連續多年獲得紅帽挑戰賽優秀指導教師、華為ICT大賽優秀指導教師榮譽。

目錄大綱

項目1 1

初識Shell腳本 1

1.1 項目描述 1

1.2 知識準備 1

1.2.1 Linux Shell簡介 2

1.2.2 創建和執行shell腳本 6

1.2.3 輸入輸出重定向與管道符 8

1.2.4 數據輸入和輸出 11

1.2.5 shell變量 16

1.2.6 轉義符 23

1.2.7 算術運算 25

1.3 項目實訓 28

1.4 項目實施 28

1.4.1 輸入和輸出重定向 28

1.4.2 數據輸入和輸出 30

1.4.3 shell變量操作 32

1.4.4 算術運算符操作 35

 項目練習題 38

項目2 40

Shell條件控制 40

2.1 項目描述 40

2.2 知識準備 40

2.2.1 條件測試語句 40

2.2.2 if條件語句 42

2.2.4 case條件語句 43

2.3 項目實訓 44

2.4 項目實施 44

任務2.4.1 條件表達式語句 44

任務2.4.2 編寫if條件語句腳本 46

任務2.4.3 編寫case條件語句腳本 47

 項目練習題 49

項目3 51

Shell循環控制 51

3.1 項目描述 51

3.2 知識準備 51

3.2.1 for循環語句 52

3.2.2 while、 until和select循環語句 52

3.2.4 break、continue和exit語句 54

3.3 項目實訓 55

3.4 項目實施 55

任務3.4.1 編寫for循環語句腳本 56

任務3.4.2 編寫while循環語句腳本 57

 項目練習題 58

項目4 61

Shell數組與函數 61

4.1 項目描述 61

4.2 知識準備 61

4.2.1 創建和使用數組 61

4.2.2 創建和使用函數 65

4.3 項目實訓 69

4.4 項目實施 70

任務4.4.1 編寫Shell數組腳本 70

任務4.4.2 編寫Shell函數腳本 71

 項目練習題 73

項目5 75

sed流編輯器與awk文本處理工具 75

5.1 項目描述 75

5.2 知識準備 75

5.2.1 正則表達式 75

5.2.2 流編輯器sed 78

5.2.4 awk文本處理工具 80

5.3 項目實訓 85

5.4 項目實施 85

任務5.4.1 正則表達式過濾文本 85

任務5.4.2 sed案例 86

任務5.4.3 awk案例 87

 項目練習題 89

項目6 92

6.1 項目描述 92

6.2 知識準備 92

6.2.1 IT基礎設施自動化 93

6.2.2 Ansible簡介 94

6.2.3 Ansible安裝方式與目錄結構 96

6.2.4 清單文件 97

6.2.5 Ansible配置文件及主要參數 101

6.2.6 配置連接和權限提升 103

6.3 項目實訓 105

6.4 項目實施 106

任務6.4.1 CentOS系統上安裝Ansible 106

任務6.4.2 Ubuntu系統上安裝Ansible 107

任務6.4.3 pip安裝包管理器安裝Ansible 108

任務6.4.4 構建清單文件 109

任務6.4.5 構建配置文件 112

 項目練習題 114

項目7 116

7.1 項目描述 116

7.2 知識準備 116

7.2.1 Ad Hoc命令 117

7.2.2 YAML基本格式 122

7.2.3 JSON基本格式 124

7.2.4 Playbook基本格式 125

7.3 項目實訓 130

7.4 項目實施 131

任務7.4.1 使用Ad Hoc命令運行臨時任務 131

任務7.4.2 編寫和執行Playbook 133

任務7.4.3 實施多個自動化任務 136

 項目練習題 140

項目8 141

8.1 項目描述 141

8.2 知識準備 141

8.2.1 變量概述 142

8.2.2 主機和主機組變量 145

8.2.3 註冊變量 147

8.2.4 事實信息 147

8.2.5 特殊變量 150

8.3 項目實訓 153

8.4 項目實施 153

任務8.4.1 在Playbook中使用變量 154

任務8.4.2 在Playbook中使用多種變量 157

 項目練習題 161

項目9 163

9.1 項目描述 163

9.2 知識準備 163

9.2.1 循環語句 164

9.2.2 條件語句 166

9.2.3 實施處理任務 170

9.2.4 任務失敗和異常處理 172

9.2.5 使用塊和標簽分組任務 175

9.3 項目實訓 177

9.4 項目實施 177

任務9.4.1 Plyabook實施循環和條件控制 177

任務9.4.2 實施Playbook任務控制 180

 項目練習題 183

項目10 186

10.2 知識準備 186

10.2.1 Jinja2模板基本概念 187

10.2.2 過濾器簡介 190

10.2.3 lookup插件 194

10.3 項目實訓 197

10.4 項目實施 197

任務10.4.1 Jinja2模板生成系統事實信息 198

任務10.4.2 Jinja2模板自定義配置文件 200

任務10.4.3 使用Jinja2模板部署代理服務 203

 項目練習題 205

項目11 208

11.1 項目描述 208

11.2 知識準備 208

11.2.1 大項目管理方式 208

11.2.2 角色簡介 214

11.2.3 創建和使用角色 217

11.2.4 Ansible Galaxy部署角色 220

11.2.5 集合簡介 224

11.3 項目實訓 229

11.4 項目實施 229

任務11.4.1 導入和包含任務 229

任務11.4.2 使用角色部署Web和代理服務 232

任務11.4.3 使用集合執行自動化任務 238

 項目練習題 243

項目12 245

12.1 項目描述 245

12.2 知識準備 245

12.2.1 常用的自動化管理模塊 246

12.2.2 網絡配置管理 257

12.2.3 網絡設備自動化管理 259

12.2.4 Docker容器自動化模塊 262

12.3 項目實訓 265

12.4 項目實施 266

任務12.4.1 部署yum倉庫安裝軟件 266

任務12.4.2 邏輯卷存儲管理 268

 項目練習題 271

拓展閱讀 272

 開源:數字化世界的基石 272

 中國開源軟件推進聯盟成立 272

 UNIX 和中國 273

 openEuler與龍蜥Anolis OS 274