一.运维概述
1.运维岗位收入情况
2.运维岗位的定义
什么是运维?
在技术人员(写代码的)之间,一致对运维有一个开玩笑的认知:运维就是修电脑的、装网线的、背锅的岗位。
IT运维管理是指为了保障企业IT系统及网络的可用性、安全性、稳定性,保障业务的连续性,通过专业技术手段,对计算机网络、应用系统、电信网络、软硬件环境及运维服务流程等进行的综合管理。
随着企业数字化转型升级进程加快,企业IT系统架构越来越复杂,软件更新迭代越来越快。企业信息化建设使得大量业务和数据需要依靠信息系统来完成,稳定可用的IT系统是企业业务发展的基础条件,IT运维管理随之成为企业信息化建设的重要环节。
近年来,因为IT系统突然出现故障导致业务瘫痪甚至造成巨额损失的现象频出不穷。而大型数据中心由于对系统、数据的高度依赖,IT风险更大,对IT运维管理的重视也就更高。
运维领域经常看到的技术及概念
1)云计算架构
云计算 = 公有云(阿里云、百度云、华为云) + 私有云(OpenStack) + 混合云
云服务器是由云服务厂商提供的性能卓越、稳定可靠、弹性扩展的IaaS(Infrastructure as a Service)级别云计算服务。云服务器免去了采购IT硬件的前期准备,让企业像使用水、电、天然气等公共资源一样便捷、高效地使用服务器,实现计算资源的即开即用和弹性伸缩。
2) DevOps运维开发工程师 DevOps(Development和Operations的组合词),它是一组过程、方法与系统的统称,主要用于促进开发和运营保障团队之间的协作与沟通,从而提高应用程序和服务的交付响应速度。 大概6:4 = 6运维:4开发(Python/Go)
DevOps把原本独立的开发和运营工作融合到一起,运营团队时刻了解开发人员的进展,并与他们形成互动,共同监控IT业务进展。在运维方面,DevOps可以打通从需求到结果运行的所有环节,以提高业务价值为目标
3) AIOps 2016年,Gartner提出利用AI技术的新一代IT运维,即AIOps(智能运维),可以解决未来企业可能遭遇的因IT故障而导致的业务中断,AIOps是ITOM的升级和进步,它结合了大数据和机器算法、机器学习技术,通过海量信息的搜集和处理,发现、预测、解决故障,进一步推动了IT运维自动化,减少了人力成本。
4)CI/CD CI/CD 是一种通过在应用开发阶段引入自动化来频繁向客户交付应用的方法。CI/CD 的核心概念是持续集成、持续交付和持续部署。作为一个面向开发和运营团队的解决方案,CI/CD 主要针对在集成新代码时所引发的问题
5)Docker容器化技术 Docker 是一个开源的应用容器引擎,通常包括客户端、守护进程、镜像、容器,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,再发布出去。类似于一个集装箱,可以把货物规整的摆放起来。
3、运维的诞生
从最早的网管开始,九十年代初期,互联网欠发达的时候,还少有服务器的概念,电脑价格昂贵,大多数人并不具备在家上网的条件,网吧应运而生。
早期计算机没有硬盘=>软驱=>软盘,1万多块钱 = 8-10万
网吧的电脑、猫等设备需要进行日常维护,于是“网管”岗位应运而生,这就是早期运维的雏形。
4、90年代初网吧图
5、运维行业背景
① 从行业角度来看,随着==中国互联网的高速发展(BAT)==、网站规模越来越来大、架构越来越复杂,对专职网站运维工程师、网站架构师的要求会越来越急迫,特别是对有经验的优秀运维人才需求量大,而且是越老越值钱。
② 从个人角度,运维工程师技术含量及要求会越来越高,同时也是对公司应用、架构最了解最熟悉的人,==越来越得到重视==。
③ 运维工作的相关经验将会变得非常重要,而且也将成为个人的核心竞争力,==优秀的运维工程师具备很好的各层面问题的解决能力及方案提供、全局思考的能力等==。
④ 由于运维岗位所接触的知识面非常广阔,==更容易培养或发挥出个人某些方面的特长或爱好==,如内核、网络、开发、数据库等方面,可以做得非常深入精通、成为这方面的专家。
⑤ ==当前国内外对运维人才的需求非常迫切,运维工程师的薪资也水涨船高==,与研发、测试等技术部门持平,甚至超出。
二、企业运行模式
1、铁三角
==铁三角 = 产品 + 研发 + 运维==
流程走向:产品设计 → 项目研发 → 项目测试 → 项目上线 → 系统运维
研发 = 前端(HTML+CSS+JavaScript) + 后端(Java/Python/Go)
运维:产品上线、后期的运行与维护工作都属于运维工程师范畴
2、部门与部门职责
产品部门(PM、UI、UE,3-5 个):设计产品的需求,确定需要做的项目的功能和细节问题
研发部门(5-7 个):根据产品部门/测试部门提供的项目模块需求进行编程
测试部门(2 个左右即可):对于研发部门提供的代码进行运行测试,检查是否存在bug和一些需要改善的体验
运维部门(3-4 个):负责项目环境部署、上线、架构的搭建等等
3、上线与生产
成熟企业中的系统环境:
开发环境: 根据系统要求,设计和搭建系统环境
测试环境:搭建系统环境,实现自动化发布
准生产环境:搭建系统环境,沟通第三方厂商,自动化发布,监控
生产环境:搭建系统环境,沟通第三方厂商,自动化发布,监控,发起持续改进
上线:发布项目的过程,包含准生产上线,生产上线等。内测/公测 → 开服
生产:正式提供对外服务的环境,叫生产环境,需要运维重点关注。
在项目的从无到有的过程中,可以将其分为两个阶段:研发/测试阶段、生产运行阶段。
运维工作贯穿了开发,测试,生产的各个阶段,是其中重要的一环。
4、网站的概念
简单地说,网站是一种沟通工具,人们可以通过网站来发布自己想要公开的资讯,或者利用网站来提供相关的网络服务。人们可以通过网页浏览器来访问网站,获取自己需要的资讯或者享受网络服务。
网站开发 = 前端开发 + 后端开发(ASP/PHP/JSP)
扩展:了解网站的分类 根据网站所用编程语言分类:例如ASP/PHP/JSP网站等; 根据网站的用途分类:例如门户网站、行业网站、娱乐网站等 根据网站的功能分类:例如单一网站(企业网站)、多功能网站(网络商城)等 根据网站的持有者分类:例如个人网站、商业网站、政府网站、教育网站等 根据网站的商业目的分类:营利型网站(企业/行业网站)、非营利性型网站(政府网站/教育网站) 根据网站的面向终端的分类:Web网站(电脑端或PC端)和 WAP网站(手机端)