运维工程师必须掌握的基础技能有哪些?
运维工程师必须掌握的基础技能有:基础命令、基础服务、自动化技能、安全。
1、基础命令:
这个基础就包括:用户管理命令,文件管理命令,权限管理命令,软件包管理命令,vim命令,网络管理命令等。这些命令好学,因为每个命令都有相应的help帮助文档,而且很多网站都集成了命令帮助,把这些站点进行收藏,时不时的查下就记住了。
2、基础服务:
企业常用的基础服务就包括DHCP,NTP,DNS,Nginx,Apache,Mysql,Redis,Vsftpd,Nfs。基础服务的掌握,相比命令稍微的难一点,但是同样有很多技巧。比如可以去各大视频站获取优质的免费视频学习。
3、自动化技能:
这个自动化就包括脚本自动化,需要熟悉掌握shell脚本或者Python脚本;包括监控自动化,不能靠传统的点击页面,查看进程来判断服务是否在线,需要熟悉掌握zabbix,Prometheus等主流监控软件;还包括工具自动化,需要掌握向ansible,puppet,Jenkins等自动化软件,实现服务的批量部署与业务的自动化。
4、安全:
作为运维工程师,首先就要时刻保障公司业务系统,服务器安全稳定运行。所以安全至关重要,主流的iptables,firewalld防火墙技术要熟练掌握,有必要的话常见的挖矿病毒,ddos等攻击有段也要有所了解。
运维工程师(Operations),负责维护并确保整个服务的高可用性,同时不断优化系统架构提升部署效率、优化资源利用率提高整体的ROI。
运维工程师面对的最大挑战是大规模集群的管理问题,如何管理好几十万台服务器上的服务,同时保障服务的高可用性,是运维工程师面临的最大挑战。
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 编译,加速,测试环境,研发自动化
2024-08-26 · 百度认证:北京一天天教育科技有限公司官方账号,教育领域创作者
1、Linux系统基础:包括Linux的基础知识内容、命令使用,以及用户和权限等核心知识点。
2、Linux系统管理和进阶:涉及Linux从进程、资源、任务、文件、软件包、磁盘等管理方法。
3、企业级服务:如DNS、FTP、HTTP等。
4、安全原理:包括Linux安全架构、安全威胁模型,以及加密、解密等原理,常见攻击和防范手段。
5、shell编程:shell脚本基本用法以及进阶,需要学习一些企业级常见脚本用法。
6、MySQL应用原理及管理:MySQL安装、管理、授权、增删改查等。
7、HTTP服务代理缓存加速:HTTP高级协议应用、缓存、web服务nginx等。
8、企业级负载集群:企业级4层负载均衡LVS、7层负载均衡Nginx以及haproxy的应用。
9、高可用集群:实现以Keepalived为核心的高可用集群,以及主从高可用、双主等。
10、运维监控:企业级监控体系zabbix,以及流行开源监控系统的功用及架构。
11、云计算运维自动化:使用ansible、puppet等运维自动化解决方案。
12、web服务体系架构:包括JSP体系、tomcat、CDN、缓存原理、评估等。
13、大型互联网集群架构和实战方案:Nginx、Haproxy、LVS HA集群、动静分离等。
14、MySQL DBA实战:数据库参数优化、分库分表、备份方案、数据恢复策略等。
15、企业级云计算:OpenStack Keystone、Glance、Nova核心组件等。