工信精品网络技术系列教材

Linux企业级系统运维(微课版)

Linux运维工程师岗位教材,企业级服务器部署与系统管理实战,涵盖LAMP/LNMP、数据库、高可用集群与自动化运维,兼容CentOS、Ubuntu及国产信创系统
分享 推荐 0 收藏 41 阅读 1.6K
龚雄涛 , 胡文杰 (主编) 付海波 , 巫健 , 钟小平 (副主编) 978-7-115-66519-5

关于本书的内容有任何问题,请联系 初美呈

以企业级运维岗位需求为导向,系统构建从安装部署到高可用集群的完整Linux运维技能链条。
采用项目任务式教学设计,覆盖LAMP/LNMP、数据库部署、负载均衡、自动化运维等典型场景,贴近真实工作流程。
深度兼容CentOS Stream 9、Ubuntu Server与国产服务器操作系统,契合信创产业与国产化替代趋势。
引入AI在运维场景中的应用,实现基础能力与前沿技术并重,助力培养复合型技术技能人才。
对接职业标准、技能大赛与认证体系,实现课证融通,支持教师教学和学生实训“双提效”。

内容摘要

本书主要讲解Linux企业级系统运维,共9个项目,包括安装和批量部署Linux服务器操作系统、系统配置管理进阶、部署LAMP与LNMP平台、反向代理与Web负载均衡、文件同步、MySQL数据库企业级部署、部署高可用集群、系统监控与日志管理和分析,以及系统自动化运维。
本书内容丰富,注重实践性和可操作性,针对知识点设计相应的实验操作示范,便于读者快速上手。
本书可作为高等院校、职业院校计算机相关专业的教材,也可作为Linux系统运维人员的参考用书,以及各类培训班的教材。

目录

项目1 安装和批量部署Linux服务器操作系统 1
任务1.1 手动安装Linux服务器操作系统 1
任务说明 1
知识引入 1
1.1.1 为什么要学习Linux系统运维 1
1.1.2 Linux服务器操作系统版本 2
任务实现 3
任务1.1.1 安装CentOS Stream 9操作系统 3
任务1.1.2 安装openEuler操作系统 6
任务1.1.3 安装Ubuntu服务器操作系统 8
任务1.2 批量自动安装Linux服务器操作系统 12
任务说明 12
知识引入 12
1.2.1 PXE 12
1.2.2 Kickstart 13
1.2.3 Cobbler 14
任务实现 15
任务1.2.1 部署Cobbler服务器 15
任务1.2.2 测试基于Cobbler自动安装操作系统 19
任务1.2.3 基于Cobbler批量自动部署操作系统 22
项目实训 25
项目实训1 安装统信UOS服务器操作系统 25
项目实训2 部署Cobbler服务器并测试操作系统的安装 26
项目总结 26

项目2 系统配置管理进阶 27
任务2.1 远程管理Linux服务器 27
任务说明 27
知识引入 28
2.1.1 SSH协议 28
2.1.2 远程桌面协议 28
2.1.3 基于Web的远程管理工具 29
任务实现 29
任务2.1.1 使用SSH远程管理服务器 29
任务2.1.2 在Linux服务器之间实现SSH互信 30
任务2.1.3 使用Cockpit基于Web界面管理服务器 32
任务2.2 管理Linux系统和服务 34
任务说明 34
知识引入 34
2.2.1 systemd与系统初始化 34
2.2.2 单元与单元文件 34
2.2.3 目标和运行级别 35
2.2.4 systemd命令 36
任务实现 36
任务2.2.1 考察systemd单元文件 36
任务2.2.2 使用systemd管理服务 37
任务2.2.3 使用systemd管理系统启动 39
任务2.3 配置防火墙和SELinux 40
任务说明 40
知识引入 40
2.3.1 Linux的防火墙架构 40
2.3.2 firewalld基础 41
2.3.3 SELinux架构 43
任务实现 44
任务2.3.1 为firewalld防火墙设置常规规则 44
任务2.3.2 为firewalld防火墙设置富规则 46
任务2.3.3 启用SELinux 47
任务2.3.4 配置SELinux策略 48
项目实训 50
项目实训1 在两台CentOS Stream 9服务器之间配置SSH互信 50
项目实训2 使用systemd管理防火墙(firewalld) 50
项目实训3 配置UFW 51
项目总结 51

项目3 部署LAMP与LNMP平台 52
任务3.1 部署LAMP平台 52
任务说明 52
知识引入 53
3.1.1 LAMP平台 53
3.1.2 Apache服务器配置文件 54
3.1.3 HTTPS与SSL协议 55
3.1.4 MySQL和MariaDB数据库 56
3.1.5 PHP与PHP-FPM 56
任务实现 57
任务3.1.1 安装并运行Apache 57
任务3.1.2 熟悉Apache的基本配置 58
任务3.1.3 基于Apache配置虚拟主机 60
任务3.1.4 为Apache服务器配置SSL以实现HTTPS访问 64
任务3.1.5 部署MySQL服务器 67
任务3.1.6 安装并配置PHP 68
任务3.1.7 使用phpMyAdmin管理MySQL 70
任务3.2 部署LNMP平台 71
任务说明 71
知识引入 71
3.2.1 LNMP平台 71
3.2.2 Nginx服务器配置文件 72
任务实现 74
任务3.2.1 安装并运行Nginx 74
任务3.2.2 熟悉Nginx的基本配置 75
任务3.2.3 基于Nginx配置虚拟主机 77
任务3.2.4 为Nginx配置HTTPS访问 78
任务3.2.5 整合MySQL和PHP以搭建LNMP平台 78
项目实训 80
项目实训1 在Ubuntu服务器上部署LAMP平台 80
项目实训2 基于Nginx配置基于名称的虚拟主机 81
项目实训3 在openEuler服务器上部署LNMP平台 81
项目总结 81

项目4 反向代理与Web负载均衡 82
任务4.1 基于Nginx实现反向代理 82
任务说明 82
知识引入 83
4.1.1 什么是代理服务 83
4.1.2 Nginx的反向代理配置 84
任务实现 85
任务4.1.1 基于Nginx实现简单的反向代理 85
任务4.1.2 使用audit2allow解决SELinux策略导致的访问被拒绝问题 86
任务4.1.3 基于Nginx实现反向代理缓存 88
任务4.2 基于Nginx实现Web负载均衡 89
任务说明 89
知识引入 89
4.2.1 什么是服务器集群 89
4.2.2 什么是负载均衡 90
4.2.3 Web负载均衡的实现技术 90
4.2.4 Nginx的负载均衡配置 91
任务实现 92
任务4.2.1 基于Nginx实现简单的Web负载均衡 92
任务4.2.2 基于Nginx实现动静分离 94
任务4.3 基于LVS实现Web负载均衡 95
任务说明 95
知识引入 96
4.3.1 LVS的体系结构 96
4.3.2 LVS集群 96
4.3.3 LVS的工作模式和调度算法 97
4.3.4 LVS的配置管理 99
任务实现 99
任务4.3.1 基于LVS NAT模式实现Web负载均衡 99
任务4.3.2 基于LVS DR模式实现Web负载均衡 102
任务4.3.3 基于LVS TUN模式实现Web负载均衡 104
项目实训 106
项目实训1 在openEuler服务器上部署Nginx负载均衡器 106
项目实训2 在openEuler服务器上实现LVS DR模式的Web负载均衡 107
项目总结 107

项目5 文件同步 108
任务5.1 基于rsync实现文件同步 108
任务说明 108
知识引入 108
5.1.1 rsync的特点 108
5.1.2 rsync的用法 109
任务实现 110
任务5.1.1 实现远程文件同步 110
任务5.1.2 实现文件定时同步 113
任务5.2 实现文件实时同步 113
任务说明 113
知识引入 114
5.2.1 rsync结合inotify的文件实时同步解决方案 114
5.2.2 rsync结合sersync的文件实时同步解决方案 114
任务实现 114
基于sersync和rsync实现文件实时同步 114
项目实训 117
项目实训1 基于rsync实现远程文件同步 117
项目实训2 基于sersync和rsync实现Web网站实时镜像 117
项目总结 118

项目6 MySQL数据库企业级部署 119
任务6.1 MySQL数据库备份与恢复 119
任务说明 119
知识引入 120
6.1.1 全量备份与增量备份 120
6.1.2 逻辑备份与物理备份 120
6.1.3 XtraBackup备份工具 121
6.1.4 XtraBackup的工作机制 121
任务实现 122
任务6.1.1 使用mysqldump工具实现逻辑备份和恢复 122
任务6.1.2 使用XtraBackup工具实现全量备份和恢复 124
任务6.1.3 使用XtraBackup工具实现增量备份和恢复 127
任务6.2 部署MySQL主从复制集群 130
任务说明 130
知识引入 130
6.2.1 MySQL主从复制的实现机制 130
6.2.2 MySQL主从复制的应用 131
任务实现 132
组建MySQL主从复制集群 132
任务6.3 MySQL读写分离与负载均衡 136
任务说明 136
知识引入 137
6.3.1 MySQL读写分离 137
6.3.2 MySQL负载均衡 137
6.3.3 MaxScale 137
任务实现 138
任务6.3.1 基于MaxScale实现MySQL读写分离 138
任务6.3.2 基于MaxScale实现MySQL负载均衡 142
项目实训 146
项目实训1 使用XtraBackup工具实现全量备份和恢复 146
项目实训2 配置MariaDB主从复制集群 146
项目总结 146

项目7 部署高可用集群 147
任务7.1 部署基本的Keepalived高可用集群 147
任务说明 147
知识引入 148
7.1.1 Keepalived的功能和应用场景 148
7.1.2 Keepalived的工作机制 148
7.1.3 Keepalived的配置文件 149
任务实现 150
任务7.1.1 部署Keepalived主备架构高可用集群 150
任务7.1.2 部署Keepalived双主架构高可用集群 153
任务7.2 基于LVS和Keepalived实现高可用负载均衡 155
任务说明 155
知识引入 155
7.2.1 LVS与Keepalived的组合 155
7.2.2 Keepalived的LVS配置 155
7.2.3 Keepalived的健康检查 156
任务实现 157
任务7.2.1 规划高可用LVS负载均衡集群 157
任务7.2.2 部署高可用LVS负载均衡集群 158
任务7.2.3 测试高可用LVS负载均衡集群 161
任务7.3 基于HAProxy和Keepalived实现高可用负载均衡 162
任务说明 162
知识引入 163
7.3.1 HAProxy概述 163
7.3.2 VRRP脚本配置 164
任务实现 165
任务7.3.1 部署主备架构的高可用HAProxy负载均衡集群 165
任务7.3.2 部署双主架构的高可用HAProxy负载均衡集群 168
任务7.4 基于Keepalived部署高可用MySQL集群 171
任务说明 171
知识引入 172
7.4.1 MySQL高可用解决方案 172
7.4.2 基于Keepalived的MySQL高可用解决方案 172
7.4.3 Keepalived的非抢占模式 173
7.4.4 进一步了解双主复制架构的MySQL主从复制 173
任务实现 174
任务7.4.1 规划基于Keepalived的MySQL高可用集群 174
任务7.4.2 配置双主复制架构的MySQL主从复制 174
任务7.4.3 使用Keepalived实现MySQL双机的高可用 176
任务7.4.4 在高可用集群中加入MySQL从服务器 179
项目实训 180
项目实训1 部署主备架构的高可用Nginx负载均衡集群 180
项目实训2 部署双主架构的高可用Nginx负载均衡集群 180
项目总结 181

项目8 系统监控与日志管理和分析 182
任务8.1 基于Zabbix实现系统监控 182
任务说明 182
知识引入 183
8.1.1 Linux系统监控概述 183
8.1.2 Zabbix的主要特性 183
8.1.3 Zabbix的基本架构 184
8.1.4 Zabbix的主动和被动监控模式 184
任务实现 185
任务8.1.1 部署Zabbix监控平台 185
任务8.1.2 将被监控主机纳入Zabbix监控平台进行管理 187
任务8.1.3 使用Zabbix进行系统监控 190
任务8.1.4 配置并使用邮件告警 192
任务8.1.5 实现被监控主机的自动纳管 195
任务8.2 部署ELK日志管理和分析平台 199
任务说明 199
知识引入 199
8.2.1 什么是ELK栈 199
8.2.2 ELK栈的架构 200
8.2.3 ELK栈的应用 200
任务实现 201
任务8.2.1 规划ELK日志管理和分析平台 201
任务8.2.2 部署Elasticsearch 201
任务8.2.3 部署Kibana 203
任务8.2.4 部署Logstash 205
任务8.2.5 通过Kibana查看和分析日志 209
项目实训 211
项目实训1 使用Zabbix监控MySQL服务器 211
项目实训2 为ELK平台部署Filebeat收集日志数据 211
项目总结 212

项目9 系统自动化运维 213
任务9.1 编写脚本实现系统自动化运维 213
任务说明 213
知识引入 214
9.1.1 Linux自动化运维的基本工具Shell脚本 214
9.1.2 适合自动化运维的Python脚本 215
任务实现 217
任务9.1.1 编写Shell脚本一键安装JDK 217
任务9.1.2 编写Python脚本监控Linux系统性能 219
任务9.2 基于Ansible实现系统自动化运维 223
任务说明 223
知识引入 223
9.2.1 Ansible的特点 223
9.2.2 Ansible的应用 224
9.2.3 Ansible的基本架构 224
9.2.4 清单文件 225
9.2.5 Ansible的模块 226
9.2.6 即席命令 227
9.2.7 Playbook 227
任务实现 230
任务9.2.1 使用Ansible在目标主机上执行Shell脚本 230
任务9.2.2 使用Playbook配置系统时钟同步 232
任务9.2.3 使用Ansible批量部署Zabbix代理 234
任务9.3 AI赋能Linux系统运维 237
任务说明 237
知识引入 238
9.3.1 AIGC与AI助手 238
9.3.2 AIOps 239
任务实现 240
任务9.3.1 在Linux的日常系统运维中使用AI助手 240
任务9.3.2 使用AI代码助手辅助编写Linux系统运维程序 244
项目实训 247
项目实训1 编写Shell脚本实现一键安装LAMP平台 247
项目实训2 使用Playbook批量更改Linux系统环境配置 248
项目实训3 体验AI助手在Linux系统运维中的应用 248
项目总结 249

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

龚雄涛,湖北职业技术学院教授。在教学方面,主讲《操作系统》《数据库技术》等多门专业核心课程,注重理论与实践相结合,以生动的教学方法和丰富的行业经验,激发了学生对信息技术的浓厚兴趣。在行业实践上,龚老师拥有丰富的项目开发经验,尤其在操作系统管理与系统集成方面积累了宝贵经验。其将行业前沿技术融入教学,有效提升了学生的专业技能与创新能力,为信息技术领域输送了大量优秀人才。

同系列书

相关图书

人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部