想做运维却不知道怎么入门?我们得先了解一下什么是运维
itomcoil 2024-12-31 12:24 16 浏览
一、运维概述
1.运维职位定义
在技术人员之间,一般对运维有一个开玩笑的认知,运维就是修电脑的,装网线的,背锅的岗位。
其实不然,运维是一个非常广泛的定义,在不同的公司不同的阶段有着不同的职责与定位,如果以operation(运维英文)字面定义去理解,认识就是敲几行操作命令的工作,那就错了。
在大型的公司,对于运维工作要求越来越高,也催生了更细化的运维分工,从大的方向可以分为网站运维、基础运维、系统运维、网络运维、数据库运维、IT运维、运维开发、大数据运维、云计算运维、运维安全、运维架构师、运维专家等方向。
2.运维行业前景
① 从行业角度看,随着互联网的发展,网站规模越来越大,架构越来越复杂,对于有经验对于运维人才需求量多,而且越老越值钱。
②从个人角度看,运维工程师技术含量要求越来越高,同时也是对公司应用和架构最熟悉的人,越来越得到重视。
③运维是一个融合多学科(网站、系统、开发、安全、应用架构、存储等)的综合性岗位,给运维工程师提供了一个很好的个人能力与技术的发展空间,技多不压身。
④运维工作的相关经验非常重要,而且也会成为个人的核心竞争力,优秀的运维工程具备很好的各层面问题的解决能力及方案提供、全局思考的能力等。
⑤由于运维岗位所接触的知识面非常广阔,更容易培养或者发挥出个人某些方面的特长或者爱好,如内核、网络、开发、数据库等方面,
⑥国内外对运维人才的需求非常迫切,运维工程师的薪资也水涨船高,与研发、测试技术部门持平甚至超出。
3.运维职业发展
二、运维职责划分
1、初级主要工作
- 修电脑、电脑巡检
- 服务器上下架
- 网络服务部署
- 网站平台搭建与维护
①linux基础
刚开始阶段需要熟悉Linux操作系统安装,目录结构、启动流程等 。
②系统管理
主要学习Linux系统,生产环境中基本都在字符界面完成工作,所以要掌握常用的几十个基本管理命令,包括用户 管理、磁盘分区、软件包管理、文件权限、文本处理、进程管理、性能分析工具等 。
③网络基础
熟悉OSI和TCP/IP模型,知道基本的交换机、路由器概念及实现原理 。
④Shell脚本编程基础
掌握Shell基本语法结构,能编写简单的脚本。
2、 中级主要工作
- 集群网站平台搭建
- 数据库基本管理
- 监控系统搭建
- 脚本化工作
①网络服务
常见的网络服务要会部署,比如vsftp、nfs、samba、bind、dhcp等。 代码版本管理系统少不了,可以学习下主流的GIT,能部署和简单使用。 经常在服务器之间传输数据,所以要会使用:rsync和scp。数据同步:inotify/sersync。 重复性完成一些工作,可写成脚本定时去运行,所以得会配置Linux下的定时任务服务crond。
②Web服务
每个公司基本都会有网站,能让网站跑起来,就需要搭建Web服务平台了。
如果是用PHP语言开发的,通常搭建LNMP网站平台,这是一个技术名词组合的拼写,分开讲就是得会部署Nginx、MySQL和PHP。 如果是JAVA语言开发的,通常使用Tomcat运行项目,为了提高访问速度,可以使用Nginx反向代理Tomcat, Nginx处理静态页面,Tomcat处理动态页面,实现动静分离。不是会部署这么简单,还要知道HTTP协议工作原理、简单的性能调优。
③负载均衡器
单台服务器终究资源有限,抵抗高访问量肯定是无法支撑的,解决此问题最关键的技术就是采用负载均衡器,水平扩展多台Web服务器,同时对外提供服务,这样就成倍扩展性能了。负载均衡器主流开源技术有LVS、HAProxy和Nginx。一定要熟悉一两个!
④数据库
数据库选择MySQL,它是世界上使用最为广泛的开源数据库。也要会一些简单的SQL语句、用户管 理、常用存储引擎、数据库备份与恢复。 想要深入点,必须会主从复制、性能优化、主流集群方案:MHA、MGR 等。 NoSQL这么流行当然也少不了,学下Redis、MongoDB这两个就好了。
⑤监控系统
监控必不可少,是及时发现问题和追溯问题的救命稻草。可以选择学习主流的Zabbix、Prometheus开源监控系 统,功能丰富,能满足企业级监控需求。监控点包括服务器硬件、服务器性能、API、业务、PV/UV、日志等方 面。 也可以弄个仪表盘展示几个实时关键的数据,比如Grafana,会非常炫酷。
⑥日志分析系统
日志也很重要,定期的分析,可发现潜在隐患,提炼出有价值的东西。 主流日志系统:ELK Stack 学会部署使用, 能分析日志并可视化,方便故障排查。
⑦安全防范
安全很重要,不要等到系统被攻击了,再做安全策略,此时已晚!所以,当一台服务器上线后应马上做安全访问控 制策略,比如使用iptables限制只允许信任源IP访问,关闭一些无用的服务和端口等。 一些常见的攻击类型一定得 知道啊,否则怎么对症下药呢!比如CC、DDOS、ARP等。
⑧Shell脚本编程进阶
Shell脚本是Linux自动完成工作的利器,必须得熟练编写,所以得进一步学习函数、数组、信号、发邮件等。 文本,必需学会处理三剑客(grep、sed、awk),Linux下文本处理就指望它们了。
⑨Python/Go开发基础
Shell脚本只能完成一些基本的任务,想要完成更复杂些的任务,比如调用API、多进程等。就需要学高级语言了。 Python是运维领域使用最多的语言,简单易用,学它准没错!此阶段掌握基础就可以了,例如基本语法结构、文 件对象操作、函数、迭代对象、异常处理、发邮件、数据库编程等。
3、 高级主要工作
- 亿级网站架构设计
- 性能优化
- 容器化落地
- 大规模自动化运维
- 平台化工作
①Web静态缓存
用户老喊着访问网站慢,看看服务器资源还很富裕啊!网站访问慢也许不是服务器资源饱和导致的,影响因素很 多,例如网络、转发层数等。 对于网络,存在南北通信问题,之间访问会慢,这个可以使用CDN解决,同时缓存 静态页面,尽可能将请求拦截在最上层响应,减少后端请求和响应时间。 如果不用CDN,也可以使用Squid、 Varnish、Nginx这样的缓存服务实现静态页面缓存,放到流量入口处 。
②集群
单台服务器终究资源有限,抵抗高访问量肯定是无法支撑的,解决此问题最关键的技术就是采用负载均衡器,水平 扩展多台Web服务器,同时对外提供服务,这样就成倍扩展性能了。负载均衡器主流开源技术有LVS、HAProxy和 Nginx。一定要熟悉一两个! Web服务器性能瓶颈解决了,数据库更为关键,还是采用集群,就拿MySQL来说, 可以一主多从架构,在此基础上读写分离,主负责写,多从负责读,从库可水平扩展,前面再来个四层负载均衡 器,承载千万级PV,妥妥的! 高可用软件也得会,避免单点的利器,主流的有Keepalived、Heartbeat等。 随着业务扩展,网站图片越来越多!NFS共享存储支撑不过了,处理很慢!上分布式文件系统,并行处理任务,无 单点,高可靠,高性能等特性,主流的有FastDFS、MFS、HDFS、Ceph、GFS等。初期的话我建议学习下 FastDFS,能满足中小规模需求。
③容器化
硬件服务器资源利用率很低,甚是浪费!可以把空闲多的服务器虚拟化,弄成很多个的虚拟机,每个虚拟机就是一 个完整的操作系统。可以很大程度提高资源利用率。主流私有云平台实现:KVM+OpenStack 虚拟机作为基础平台 还可以,但应用业务弹性伸缩也太重量了吧!启动好几分钟,文件又这么大,快速扩展太费劲了! 好说,上容器,容器主要特点就是快速部署和环境隔离。一个服务封装到镜像中,分分钟钟可创建几百个容器。 主流的容器技术非Docker莫属了。 当然,生产环境单机Docker大多数情况下是无法满足业务需求的,可以基于Kubernetes构建容器平台,集群化管理容器,形成一个大的资源池,为基础架构提供有力的支撑。
④自动化运维
反反复复重复的工作,不但提高不了效率,价值也得不到体现。 一切运维工作标准化,例如环境版本、目录结构、操作系统等统一。在标准化基础上才能更方面的自动化,点点鼠标或者敲几个命令即可完成一项复杂的工作任务,爽哉爽哉! 因此,所有的操作尽可能自动化,减少人为失误,提高工作效率。 主流服务器集中管理工具: Ansible、Saltstack 持续集成工具:Jenkins、Gitlab 。
⑤Python开发进阶
可以再深入学习下Python开发,掌握面向对象编程。 最好也掌学习一个Web框架开发网站,例如Django、Flask,主要是开发运维管理系统,将一些复杂的流程写到平台中,再集成集中管理工具,可打造一个属于运维自己的管理平台。
⑥性能优化
只会部署是远远不够的,性能优化能最大化提升服务承载量。 这块也是比较难的,也是高薪的关键点之一,为了钱也得下点功夫学习啊! 可以从硬件层、操作系统层、软件层和架构层维度展开思考。
三、结语
本文非原创,笔者只是搜集整理了运维工作的概述、发展前景和如何在职业路上的发展,一方面分享给头条的朋友,另一方面给自己的日后回顾。
相关推荐
- PS小技巧 调整命令,让人物肤色变得更加白皙 #后期修图
-
我们来看一下如何去将人物的皮肤变得更加的白皙。·首先选中图层,Ctrl键加J键复制一层。·打开这里的属性面板,选择快速操作删除背景,这样就会将人物进行单独的抠取。·接下来在上方去添加一个黑白调整图层,...
- 把人物肤色提亮的方法和技巧
-
PS后期调白肤色提亮照片的方法。一白遮百丑,所以对于Photoshop后期来说把人物肤色调白是一项非常重要的任务。就拿这张素材图片来说,这张素材图片人脸的肤色主要偏红、偏黄,也不够白皙,该怎样对它进行...
- 《Photoshop教程》把美女图片调成清爽色彩及润肤技巧
-
关注PS精品教程,每天不断更新~~室内人物图片一般会偏暗,人物脸部、肤色及背景会出现一些杂点。处理之前需要认真的给人物磨皮及美白,然后再整体润色。最终效果原图一、用修补工具及图章工具简单去除大一点的黑...
- PS后期对皮肤进行美白的技巧
-
PS后期进行皮肤美白的技巧。PS后期对皮肤进行美白的技巧:·打开素材图片之后直接复制原图。·接下来直接点击上方的图像,选择应用图像命令。·在通道这里直接选择红通道,混合这里直接选择柔光,然后点击确定。...
- 493 [PS调色]调模特通透肤色
-
效果对比:效果图吧:1、光位图:2、拍摄参数:·快门:160;光圈:8;ISO:1003、步骤分解图:用曲线调整图层调出基本色调。用可选颜色调整图层调整红色、黄色、白色和灰色4种颜色的混合比例。用色彩...
- 先选肤色再涂面部,卡戴珊的摄影师透露:为明星拍完照后怎么修图
-
据英国媒体12月17日报道,真人秀明星金·卡戴珊终于承认,她把女儿小北P进了家族的圣诞贺卡,怪不得粉丝们都表示这张贺卡照得非常失败。上周,这位39岁的女星遭到了一些粉丝针对这张照片的批评,她于当地时间...
- 如何在PS中运用曲线复制另一张照片的色调
-
怎样把另一张作品的外观感觉,套用到自己的照片上?单靠肉眼来猜,可能很不容易,而来自BenSecret的教学,关键是在PS使用了两个工具,让你可以准确比较两张照片的曝光、色调与饱和度,方便你调整及复制...
- PS在LAB模式下调出水嫩肤色的美女
-
本PS教程主要使用Photoshop使用LAB模式调出水嫩肤色的美女,教程调色比较独特。作者比较注重图片高光部分的颜色,增加质感及肤色调红润等都是在高光区域完成。尤其在Lab模式下,用高光选区调色后图...
- 在Photoshop图像后期处理中如何将人物皮肤处理得白皙通透
-
我们在人像后期处理中,需要将人物皮肤处理的白皙通透,处理方法很多,大多数都喜欢使用曲线、磨皮等进行调整,可以达到亮但是不透,最终效果往往不是很好,今天就教大家一种如何将任务皮肤处理得白皙通透,希望能帮...
- PS调色自学教程:宝宝照片快速调通透,简单实用!
-
PS调色自学教程:宝宝照片快速调通透。·首先复制图层,然后选择进入ACR滤镜,选择曲线锁定照片的亮部,也就高光位置,其他部位补亮一点,尤其是阴影的部位补亮多一些,让画面的层次均匀一点。·然后回到基本项...
- 【干货】如何利用PS进行人物美化
-
人物图像美化在Photoshop中非常常用,Photoshop作为一款功能强大的图像处理软件,不仅可以对人像进行基本的调色、美化和修复等处理,还可以改变人物的线条和幅度,如调整脸部器官和脸型的大小、调...
- 教大家一种可以快速把肤色处理均匀的方法@抖音短视频
-
快速把肤色处理均匀的方法。今天教大家一种可以快速把肤色处理均匀的方法。像这张照片整体肤色走紫红色,但是局部偏黄缘处理起来非常的麻烦。其实我们只需要新建空白图层,图层混合模式更改为颜色,再选择画笔工具把...
- PS调色教程 利用RAW调出干净通透的肤色
-
要么不发,要么干货。后期教程来噜~用RAW调出干净通透的肤色。这次终于不会原片比PS后好看了吧。如果你依然这么觉得,请不要残忍的告诉我这个事实,泪谢TAT)附送拍摄花絮,感谢各位的支持更多风格请关注m...
- photoshop后期皮肤变白的技巧
-
PS后期皮肤变白的技巧。1.PS后期让皮肤变白的方法有很多种,接下来教你一种非常简单容易上手的方法。2.打开素材图片之后,直接在小太极下拉框的位置添加一个纯色调整图层,颜色设置一个纯白色,点击...
- Photoshop调出人物的淡雅粉嫩肤色教程
-
本教程主要使用Photoshop调出人物的淡雅粉嫩肤色教程,最终的效果非常的通透迷人,下面让我们一起来学习.出自:86ps效果图:原图:1、打开原图复制一层。2、用Topaz滤镜磨皮(点此下载)。3、...
- 一周热门
- 最近发表
- 标签列表
-
- ps像素和厘米换算 (32)
- ps图案在哪里 (33)
- super().__init__ (33)
- python 获取日期 (34)
- 0xa (36)
- super().__init__()详解 (33)
- python安装包在哪里找 (33)
- linux查看python版本信息 (35)
- python怎么改成中文 (35)
- php文件怎么在浏览器运行 (33)
- eval在python中的意思 (33)
- python安装opencv库 (35)
- python div (34)
- sticky css (33)
- python中random.randint()函数 (34)
- python去掉字符串中的指定字符 (33)
- python入门经典100题 (34)
- anaconda安装路径 (34)
- yield和return的区别 (33)
- 1到10的阶乘之和是多少 (35)
- python安装sklearn库 (33)
- dom和bom区别 (33)
- js 替换指定位置的字符 (33)
- python判断元素是否存在 (33)
- sorted key (33)