一、Linux 基础部分
1、基础理论知识
2、基础命令(系统命令、目录管理、用户管理、文件权限、磁盘管理、资源查看等等常见操作)
3、文本高效处理(vi、vim、awk、grep、find、sed等)
4、bash shell脚本(可以边工作边学习,使用shell编写简单的代替重复性操作的脚本)
- 进程调度,内存管理,文件系统,外设管理等,要熟练使用相关工具,如top iotop iftop iostat vmstat ss等,并且最好了解其原理
二、网络管理、进程管理
1、TCP/IP协议、DNS服务、CDN原理、iproute常见的网络客户端工具(ping、wget、ftp)
2、crontab计划任务
3、ps、top、htop、vmstat、lsof等命令
-
tcp,http,https,udp等
-
最好能做到精通,4层,7层的网络流量分析技能要熟练掌握。
-
内部路由协议,边际路由,交换原理,域名解析,ipv6相关知识
三、 数据库部分
MySQL各个版本之间的关系和特性
MySQL的安装及增删改查
MySQL的存储引擎
MySQL的优化
MySQL日常使用及运维,包含备份及故障排查
四、常用开源组件
LAMP和LNMP的架构
tomca的使用及优化
nginx的使用场景及优化
apache的使用场景及优化
其他服务: dhcp,nfs,rsync,dns,等 等
一句话概括: mysql,redis,kafka,etcd,zk,influxdb,promethues,zabbix
,graphana,ansible…
五、shell脚本
使用shell脚本实现各种服务的自动化部署
使用shell脚本实现监控系统及应用自动化
使用shell脚本实现各类巡检,故障排查自动化
六、安全
iptables四表(fiter、mangle、nat、raw)五链(prerouting、iput、forward、output、 postrouting)、基本匹配
iptable规则保存重载生效
常用加密算法,web安全,网络安全
渗透的常用手段,以及反制手段,sql注入,xxs,ddos,cc
跳板机jumpserver
七、监控和日志收集
日志收集ELK,EFK
zabbix,prometheus
八、自动化工具
1、常见自动化运维方案:puppet、ansible、salt、fabric
2、ansible安装基础使用
3、持续集成:jekins+gitlab实现ci/cd流水线
-
python 自动化
-
go语言二次开发
九、容器化和虚拟化技术
docker ,k8s,openstack
kvm,vmware的使用
容器编排的技术
十、devops 编译,加速,测试环境,研发自动化
成为一名合格的Linux运维工程师必备的技术点
掌握 Iptables 防火墙体系,实现防火墙实现数据包过滤和转发;
掌握用户权限安全控制 Sudo 体系与配置;
掌握 DNS 服务的原理、部署、安装和企业级应用;
实现文件共享服务 NFS、Vsftpd、Samba 配置和应用;
实现 Jumpserver 堡垒机 安装、配置、使用和运维体系融合;
brctl 命令创建管理虚拟网桥;Ip Netns 创建管理虚拟路由;
常见的网络客户端工具 Ping/Lftp/Ftp/Lftpget/Wget;
利用 Rsync 和 Inotify 实现多台机器数据分发和配置同步;
Jumpserver 跳板机
基本功能应用,认证、授权、审计;
https 概念及对应的模块 mod_ssl 应用配置;
运维必备 Web 服务开源解决⽅案 Nginx,全面讲解 Nginx 程序架构;
Nginx 内部框架、模块功能、事务处理机制、安装⽅法、CPU 亲缘优化、配置⽂件;
SQL 语句增删改查、常⽤命令使⽤、⽤户授权、字符集修改、表、索引、库管理等;
对⽐介绍图形化管理软件,如 PhpMyAdmin、SQLyog、Navicat 等
Keepalived 工作方式,Keepalived 核心组件、报警机制、切换机制、心跳信息传输等;
Centos7 上实现 LVS 集群配置、服务管理、调度算法修改;
全面熟悉 Ansible 用法、以及安装方法、配置文件详解、模块说明、基于私钥认证、批量操作等;
Redis 扩展方式对比介绍,Redis Cluster 的基础应用;
Vmware Esxi 创建 Linux 及 Windows 虚拟机,并实现虚拟机跨宿主机迁移;
Docker 镜像、仓库管理、启动⽅法、数据卷使⽤、备份恢复,网络模型、容器间依赖关系、容器资源限制、Docker 的监控;