高级运维需要掌握哪些技术?

一、Linux 基础部分
 
1、基础理论知识
 
2、基础命令(系统命令、目录管理、用户管理、文件权限、磁盘管理、资源查看等等常见操作)
 
3、文本高效处理(vi、vim、awk、grep、find、sed等)
 
4、bash shell脚本(可以边工作边学习,使用shell编写简单的代替重复性操作的脚本)
 
5. 进程调度,内存管理,文件系统,外设管理等,要熟练使用相关工具,如top iotop iftop iostat vmstat ss等,并且最好了解其原理
 
二、网络管理、进程管理
 
1、TCP/IP协议、DNS服务、CDN原理、iproute常见的网络客户端工具(ping、wget、ftp)
 
2、crontab计划任务
 
3、ps、top、htop、vmstat、lsof等命令
 
4. tcp,http,https,udp等
 
5. 最好能做到精通,4层,7层的网络流量分析技能要熟练掌握。
 
6. 内部路由协议,边际路由,交换原理,域名解析,ipv6相关知识
 
三。 数据库部分
 
MySQL各个版本之间的关系和特性
 
MySQL的安装及增删改查
 
MySQL的存储引擎
 
MySQL的优化
 
MySQL日常使用及运维,包含备份及故障排查
 
四。 常用开源组件
 
LAMP和LNMP的架构
 
tomcat的使用及优化
 
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注入,xss,ddos,cc
 
跳板机jumpserver
 
七。 监控和日志收集
 
日志收集ELK,EFK
 
zabbix,prometheus
 
八。 自动化工具
 
1、常见自动化运维方案:puppet、ansible、salt、fabric
 
2、ansible安装基础使用
 
3、持续集成:jekins+gitlab实现ci/cd流水线
 
4. python 自动化
 
5. go语言二次开发
 
九。 容器化和虚拟化技术
 
docker ,k8s,openstack, kvm,vmware的使用
 
容器编排的技术
 
十。 devops 编译,加速,测试环境,研发自动化
 
总结:
 
运维的核心是: 确保公司的业务的稳定运行
 
所以服务器只是个载体,你学习的各项服务只是为了实现公司业务稳定运行服务的。

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h64831.shtml

张贴在3