Linux运维必备技能
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一阶段
1、Linux基础
刚开始阶段需要熟悉Linux/Windows操作系统安装,目录结构、启动流程等。
2、Linux用户及权限基础
3、Linux系统进程管理进阶
4、linux高效文本、文件处理命令(vim、grep、sed、awk、find等命令)
5、Shell脚本编程基础
掌握Shell基本语法结构,能编写简单的脚本即可。
第二阶段
中级进阶需要在充分了解linux原理和基础知识之后,对上层的应用和服务进行深入学习,其中说到服务肯定涉及到网络的相关知识,是需要花时间学习的。
1、网络服务
最常用的网络服务一定得会部署,比如vsftp、nfs、samba、bind、dhcp等。
代码版本管理系统少不了,可以学习下主流的SVN和GIT,能部署和简单使用就可以了。
经常在服务器之间传输数据,所以要会使用:rsync和scp。
数据同步:inotify/sersync。
重复性完成一些工作,可写成脚本定时去运行,所以得会配置Linux下的定时任务服务crond。
2、Web服务
每个公司基本都会有网站,能让网站跑起来,就需要搭建Web服务平台了。
如果是用PHP语言开发的,通常搭建LAMP、LNMP网站平台,这是一个技术名词组合的拼写,分开讲就是得会部署Apache、Nginx、MySQL和PHP。
如果是JAVA语言开发的,通常使用Tomcat运行项目,为了提高访问速度,可以使用Nginx反向代理Tomcat,Nginx处理静态页面,Tomcat处理动态页面,实现动静分离。
不是会部署这么简单,还要知道HTTP协议工作原理、简单的性能调优。
3、数据库
数据库选择MySQL,它是世界上使用最为广泛的开源数据库。学它准没错!也要会一些简单的SQL语句、用户管理、常用存储引擎、数据库备份与恢复。
想要深入点,必须会主从复制、性能优化、主流集群方案:MHA、MGR等。NoSQL这么流行当然也少不了,学下Redis、MongoDB这两个就好了。
4、shell脚本进阶(主要是结合一些应用,写一些案例)
Shell脚本是Linux自动完成工作的利器,必须得熟练编写,所以得进一步学习函数、数组、信号、发邮件等。
文本处理三剑客(grep、sed、awk)得玩6啊,Linux下文本处理就指望它们了。
5、MySQL应用原理及管理入门(能管理和搭建一个个人博客站点)
学到这里,掌握的基本技能,已经够用了,已经能做一些基础的运维工作和简单维护了。
第三阶段
1、http服务代理缓存加速(其中主要学习varnish、nginx缓存系统,要对CDN的知识有所了解
2、企业级负载集群(其中主要学习nginx、haproxy、lvs要对主要知识熟练掌握,对负载均衡算法有清晰认识
3、企业级高可用集群 (其中需要对keepalived,heartbeat等进行深入讲解
4、运维监控zabbix详解(主要是zabbix、cacti、nagios等监控系统,现在用的比较多的是zabbix
5、运维自动化学习(需要学一些开源运维自动化工具的使用如ansible、puppet、cobbler等运维自动化工具)
能掌握到这里,基本能处理搞定很多工作了,可以去面试高级运维工程师,差不多薪资能达到12-20K左右。·掌握Iptables 防火墙体系,实现防火墙实现数据包过滤和转发
·掌握用户权限安全控制Sudo体系与配置
·掌握DNS服务的原理、部署、安装和企业级应用
·实现文件共享服务NFS、Vsftpd、Samba 配置和应用
·实现Jumpserver 堡垒机安装、配置、使用和运维体系融合
·brctl 命令创建管理虚拟网桥;Ip Netns 创建管理虚拟路由
·常见的网络客户端工具Ping/Lftp/Ftp/Lftpget/Wget
·利用Rsync 和 Inotify 实现多台机器数据分发和配置同步
· Jumpserver 跳板机基本功能应用,认证、授权、审计
·运维必备 Web 服务开源解决⽅案 Nginx,全面讲解Nginx 程序架构
以上就是踏入linux运维工程师需要掌握的工具,其实还有很多工具要掌握的。这里所指的工具相当于技能,而不是像windows或ubuntu那些图形化工具~