linux主要是做什么的?学习可以从事什么工作?

linux主要是做什么的?学习可以从事什么工作?,第1张

Linux运维是一个融合多学科的综合性技术岗位(网络、系统、开发、安全、应用架构、存储等),可以多个职业发展方向,主要包括:
1 Linux运维工程师
主要负责具体的产品运维工作,需要具有一定的开发能力,需深入了解业务,能够判断系统架构的优劣对比,对业务的掌控决定了相应运维工程师在业务发展中的作用,该职业长期发展方向是成为大型系统架构师。
2 Linux运维平台研究工程师
该职业是专门研究运维相关通用平台和技术,需要有一定的产品线运维经验或相关运维需求,对研发能力有较高要求,长远发展方向是成为各个技术纵向领域的技术专家。
3 数据库工程师
数据库工程师是一个非常重要的岗位,一般公司都很重视,其还有细分领域,主要包括数据库内核、云数据库等,长远发展是数据库领域的技术专家、数据库架构师。
4运维总监
该岗位需拥有丰富的运维经验,对协调和推进能力要求比较高,拥有一定的技术基础,是后期转型的理想管理岗位。

Linux云计算运维,和Linux运维 是等同的,只不过云计算听起来高大上一点,符合前几年云发展的趋势,一般都指Linux运维工程师或Linux SRE工程师。
主要是做linux系统、以及网络服务的维护,大规模集群,以及云计算服务的自动化运行,适合本科以及本科以下,是当前学历偏低,缺乏自信的各个行业的人学习。高中起点就可以学好找到1万+的极好工作岗位。

运维人员的工作每天基本上都是在检查问题,枯燥但又重要, 要是你的某一个环节出现问题并没有及时发现问题,对于企业来说损失可能非常大,基本上运维人每天的工作我罗列了下,有这几种:

1、负责服务器的硬件配置、软件安装、机房上下架等技术维护工作

2、负责虚拟化技术产品物理机配置、管理和日常运行监控和维护

3、负责独立主机或虚拟应用产品的开通使用、日常维护、故障诊断和排除

4、提供独立主机或虚拟应用客户产品 *** 作和应用方面的技术支持

5、监视分管的服务器,及时发现问题,并积极解决问题

现在信息化数字时代,单靠人工去检查出现错误几率会很大,而且有的运维人还不只管理两台服务器,像我们公司的运维每人至少要管理30台服务器,这样子单靠人工运维耗费的人工成本和时间是非常大的,所以还是推荐你用运维工具吧,比如云帮手()

1支持跨云商批量管理服务器

2兼容性强大,兼容市面基本所有的云商云主机,兼容 *** 作系统;

3 *** 作简单,可视化界面预览资源、一键修复、一键部署;

4 可以远程登录云主机FTP桌面,处理云主机上的文件;

5监控和资源还有告警功能,这个是挺好的,不用盯着看;

6系统修复功能,这个是挺实用也比较必须的;

7免费使用。总得来说功能还是挺全的,不存在需要又要另外找软件的尴尬。

你好,很高兴回答你这个问题。从运维的角度来讲,服务器的数量少并不意味着我们的运维工作就非常轻松,相反我们更应该重视此阶段的工作。

我们可以从以下几方面来开展我们的运维工作:

1应用服务器

我们可以从当前服务器中找出 至少2个节点装Vsphere虚拟化,建立一个数据中心、集群 ;如果你的服务器有多网卡和SCSI,还可以做一些更高级的应用,如vmotion、负载均衡、高可用等。当虚拟机或服务器故障,可以 实现故障自动转移,有效的避免了单节点的故障,提供服务器的容错率

我们可以在新建的虚拟机部署Web、API等各种应用,而且 虚拟机可以在vCenter图形化界面下统一管理 。这一般是中小公司的在服务器方面的解决方案。

当然,我们对docker比较熟悉,可以使用一套docker解决方案,这比Vsphere更能节省一部分资源。当然这个需要的技能要求也比较高,需要我们不断积累。


2数据库服务器

数据库服务器在此我们单独拿出来,是因为数据库对服务器性能、磁盘IO要求比较高,不太建议使用虚拟机,当然这需要根据业务的实际情况来做选择。 数据库我们需要通过一主一从、一主二从的方式实现高可用,来避免数据库单点问 题,我们还可以选择合适的proxy来进行读写分离、读负载均衡等。另外还要考虑数据的本地备份、异地备份,来确保数据可恢复。


3系统监控

当我们在应用服务器和数据库服务器上线一套系统后, 我们需要通过监控掌握从服务器硬件、基础状态、应用、数据库等从下到上的运行状态 ,以便我们能够对告警及时做出响应。考虑到报警的及时性,我们需要监控接入多种报警渠道,如微信、钉钉、邮件、短信等。监控的目的是发现问题、解决访问,因此我们需要踏实的做好这一步,才能为我们的业务保驾护航。


好了,其实不管服务器多少,我们都需要扎实的把基础打好,这样才能以不变应万变面对各种情形。希望我的回答能够帮到你。



题主没有详细说明具体应用系统的功能,比如是否单一的Web服务?有没有微服务、分布式、集群化扩展的潜在需求?

通常来说,建议使用云服务自动化运维。云服务已经成为IT技术的核心基础设施,充分利用云服务带来的d性和分布式优势,赋能自动化运维。

一,自动构建系统

如果需要构建应用,那么就建议配置使用CI/CD持续化集成和自动化部署,比如常用的Jenkins,配置Git代码提交时触发构建,然后自动部署。

二,日志收集处理系统

1,ELK是常见的日志收集管理系统,包括ElasticSearch, LogStash, Kibana三个服务,架构示意图如下:

2,在ELK系统中,Kibana是一个图形化展示工具,配置查询条件,运维人员随时可以搜索指定日志信息,分析处理故障。

三,服务监控

1,云监控CloudMonitor

主流云服务商都将监控功能集成到了基础架构中,以阿里云为例,云监控提供了多种配置,多维度全方位监控。


比如配置CPU使用率到达80%时,自动触发动作,增加服务器实例,同时邮件通知运维人员。

2,应用监控

以监控宝为例,配置服务地址,选择分布在不同地区和运营商的监测点。当监测点不能正常调用配置的服务地址时,将收到警告信息,可以选择邮件、短信、电话等通知方式。


四,潜在的系统扩展需求

1,是否集群化部署?需要AutoScaling自动伸缩吗?

小型化和集群化并不冲突。如果采用集群化部署,可以配置触发条件,满足时自动增加或者释放服务器资源。比如当CPU使用率达到75%或者内存占用率达到75%时,根据配置好的服务器和数量,自动触发。

2,是否使用Docker容器技术?

Docker将应用以及依赖打包到一个可移植的镜像中,可以实现虚拟化,有助于快捷高效的交付应用,结合Docker-compose资源编排,快速实现自动部署更新,不再需要常用的Jenkins构建服务器。

机器数比较小的话,你可以用云的服务器,这样可以节省好多钱。找一个专门的运维,还不如让开发自己来搞,因为机器少运维他也应付得过来。现在都在搞云计算了,把你的机器放上阿里云或者腾讯云,你自己维护好很多,包括网络贷款都很容易扩容。上面这个我说到的只是说建议你如果你已经是自己的机器了。我建议你从我下面所说的来搞。

认为的整个过程的话一般分为三个阶段,第一的话是手工阶段,什么东西都是手工搞。

第2个阶段就是脚本阶段了,本来手工搞的东西全部脚本化。

第3个阶段就是平台化了,平台化了之后,所有东西都在页面上完成系统完成,不需要人工来干预,甚至不用运维来搞。

有一些人说既然认为就是最后的一个阶段,但是这个很不成熟。所以我就不说了。

针对你这个机器数少的,你可以手工认为,或者说用脚本认为都没问题。

在合适的阶段做合适的事情就是最好的。所以我建议你手工运维或者脚本运维。

我们项目用的 wgcloud运维监控系统 ,它前身是开源项目,后来推出的商业版,也有免费版

wgcloud运行很稳定,性能很好,部署和上手容易

wgcloud支持主机各种指标监控(cpu状态/温度,内存状态,磁盘容量/IO,硬盘smart监控,系统负载,网卡流量,硬件系统信息等),数据可视化,进程应用监控,大屏可视化,服务接口检测,DOCKER监控,自动生成网络拓扑图,端口监控,日志文件监控,web SSH(堡垒机),指令下发执行,告警信息推送(邮件钉钉微信短信等)





可以装虚拟机代替,在同一个局域网情况下

找服务商外包服务,或者网上托管也不贵收费

服务器数量比较少,比如10台服务器,基本可以不设置运维岗位了,后端开发人员 或者架构师就能搞定。

我就是那种曾经在创业的小公司待过的开发人员,开发,运维我都干了。

但是想想如何更科学更高效的运维还是很有必要的。


运维的目的

软件系统的运行时环境:即公司的业务产线,靠它创造业务价值,这个是最核心的功能诉求。


实时监控系统: 任何时候都要对当前公司的产线的压力一清二楚,有问题功能随时解决,有性能问题及时扩容或者回收资源


降低服务器成本:在业务萎缩的情况下,准确评估哪些资源可以回收,降低服务器的支出


这个是当时我认为的运维的三个主要目的。

运维方案

开发半路出家,当时采用的是shell+python+ansible+jekins+elk的方式

首先,我会及时的更新业务产线的物理架构图,根据架构图来规划服务器的资源使用。

比如多少个web服务,数据库多少,zk,kafka,redis集群怎么分布。

集群部署一般是放在多个服务器上的,这个时候ansible就派上用场了。

jekins主要用来自动发布更新程序已经做定时回收磁盘的任务。

elk主要用来做应用的日志系统和监控告警; 可以通过看板随时知道产线的请求数量和并发数量;


以上的运维方案适用于小公司。运维工程师看到了可以补充

搞个zabbix刷

数量少。如果配置好可以虚拟化。然后跑容器

运维主要是保障服务器,系统,数据库,云计算的平台安全、稳定的运行,是属于幕后的英雄,更多的是通过学到的知识和经验帮你维护服务器。
 
如果你不能理解,我举一个例子:假如一个汽车出问题了,你去检修维护就可以了,运维也是这样的工作!
 
那运维开发或者自动化运维是什么?
 
例如10台太汽车出了问题,限你1天之内搞定,你要是还是按照老办法一台一台检修,那你啥时候能弄完,如果你能自己开发出来一套软件,把这10万台汽车接入你这平台,汽车只要启动,这个系统就会自动检测他哪里有问题,可能一个小时全部搞定,并给解决方案!  
 
 如果你还不能理解,再举个例子:正常的运维类似手动抢红包,一个一个点,如果你能开发个外挂帮你抢红包,只要有人发红包,自动就会帮你点了收进你的钱包!
 
一个是运维,一个是自动化运维或者运维开发,大概有概念了吧!
 
自动化运维和运维开发的目标就是提高运维效率,节约成本,减少工作量,需要懂一门开发语言,用学会的开发语言开发运维的软件和工具帮你更好的做运维。
 
那你是不是有疑惑,我能不能一步到位,直接自动化运维!答案是可以的,那你就脱产学习linux云计算,周末再报个python自动化开发的班即可!
 
咱们linux云计算里面讲的自动化运维是市场上已经开发好的比较常见的运维的工具,例如ansible,zabbix都是,而python自动化开发学完之后你可以根据需求自己开发软件,工具啥的,当然也可以改市面上已经有的这个运维工具的代码,不学习python做不到。如果你精力有限,建议先学习运维脱产班,一个月能有13-20k的待遇,上班之后再慢慢学习python自动化!

在互联网时代,运维人员就是这样的存在:小到一条信息发送,大到一次网络购物狂欢,只要和IT相关的业务就需要这些运维人员,没有他们在背后的支持,企业就会出大乱子。
假如一个企业没有了运维工程师,无论你的产品体验多么优秀、技术多么先进,都会因为无法正常提供服务而被用户所淘汰。
试想一下:你通过微信加上了自己的初恋,你发现她这几年过得并不顺利,对于学生时代念念不忘,最重要的是,她刚刚和前任分手,又罕见的表现出了想找个老实人结婚的想法。
你很高兴!你赶紧表明自己单身二十七年三个月零七天就是在等她!
就在这时候,微信服务器挂了!你回复的消息发不过去了!你急坏了!偏偏刚加上微信,你还不知道她的电话。
在你指天骂地半小时后,微信服务器终于正常了,你收到了对方发来的消息:“既然你不愿意,我也不强求了。。。互删吧。。。”
你以后还会用微信吗?无论微信能不能发语音、小视频,有没有朋友圈、摇一摇,你都不会用了。这就是运维工程师的重要性啊。
有了运维工程师,服务器才能良好运转,产品才能正常提供服务,用户才能享受互联网的便利。

可是现在到了云计算时代,不少人说运维人要下岗了,是否真会如此呢云计算的出现是否会使得整体行业对运维的需求萎缩了呢

我们都知道云计算平台有IAAS平台、PAAS平台、SAAS平台之分,不同的部分对运维的角色都有着不同程度的影响,今天我们就来探究一下不同的云计算平台对于运维人员究竟会产生什么样的影响。
IAAS
IAAS把基础架构做成一个服务,资源即需即得,这也正式创业公司都愿意使用公有云平台的一个原因。按照传统的模式,创业公司自己需要联系机房、购买服务器、电信机房放置调试服务器/网络等等一堆基础设施的工程,影响项目周期不说,还需要一定的专业技能,而IAAS把创业公司都从这些需求中解放出来。再进入到IAAS内部几大部分,软件定义计算、软件定义存储、软件定义网络,进一步降低对运维人的依赖,确保一个大资源池的整体服务能力。让软件代替人,是IAAS层基本思想,都知道对于一个海量的服务架构,同时要面向不同的业务形态,IAAS只能依赖这样的软件定义能力,靠人是跟不上的。 结论:不需要那么多基础运维人员了。
PAAS
PAAS部分,进一步对服务进行抽象,变成一个公共的服务架构,研发程序只需要遵从一定的开发和配置约束,最后服务的运行、发布等都由PAAS平台统一接管,进一步释放对运维的依赖,且此时根本就没有IAAS层维护成本。 结论:不需要那么多应用运维人员了。
SAAS
最后到SAAS部分,在传统的模式下,运维都是自己搭建监控平台,自己构建部署系统。当前情况下,对于小的企业来说,可以直接使用云平台自带的服务,足够应付。对于更大规模的企业环境来说,你可以选择其他云服务,只要你许可他们的agent安装在你的服务器上,采集数据/部署都可以完成。再回过头看看IAAS云中提供的RDS服务(类似SAAS服务),里面把一切对Mysql的管理都封装成webUI;对于系统中慢查询,在给出报告的同时,还能给出相应的优化建议,备份、迁移管理都一应俱全。 结论:不需要那么多应用运维人员和DBA了。

这就告诉我们,在未来,只要云计算继续发展,大部分初级的运维人员失业几乎是板上钉钉的事情。

但是,应该注意到云计算也需要一系列的基础设施,也需要运维人员进行维护。
与传统企业里面对几台几十台服务器不同,在云计算领域,运维工程师动辄面对数千台乃至数万台服务器,单纯依靠人力完成这种庞大工程几乎是不可能的,这就对运维人员的工作能力提出了更高的要求——运维人员的开发能力正式被提上日程,成为运维自动化发展的必要一步。
除此之外,云计算领域的运维工程师面对的问题复杂程度将是之前的数倍:几台服务器出现故障,一个人只需半天就可排查完,几十台则要花费更长时间,但是云计算领域,资源都虚拟化后,故障定位和排除明显是痛点,很容易牵一发而动全身,对运维管理本身的可靠性要求也无限升高。

因此,我们还应该看到运维这一职业发展的更高层次: 高质量、高技术水平的运维人员在未来必定是云计算领域最稀缺、同时也是最必要的人才。
未来的运维行业,必定是工作岗位减少、技能要求上升、整体薪酬飞涨的状况。

为了帮助大家在行业洗牌之前达到更高的技能层次,去争取更高、更充足的薪酬回报,我们联合腾讯课堂特别推出了Python运维开发课程,以饿了么Python总监为核心研发,全程BAT高级工程师授课,帮你实现高薪运维开发梦想。

本次课程报名4月22日截止,现在报名更可以享受最高800元优惠!

运维工程师是负责公司网络安全、正常运行的。

运维工程师,负责维护并确保整个服务的高可用性,同时不断优化系统架构提升部署效率、优化资源利用率提高整体的ROI。运维工程师面对的最大挑战是大规模集群的管理问题,如何管理好几十万台服务器上的服务,同时保障服务的高可用性,是运维工程师面临的最大挑战。

无论做什么运维,运维工程师最基本的职责都是负责服务的稳定性,确保服务可以24小时不间断地为用户提供服务。需要精通shell、Python、Perl等1至2种编程语言,也要熟练掌握常用数据结构和算法,并能灵活运用。

运维工程师工作内容

1、事件管理:目标是在服务出现异常时尽可能快速的恢复服务,从而保障服务的可用性;同时深入分析故障产生的原因,推动并修复服务存在的问题,同时设计并开发相关的预案以确保服务出现故障时可以高效的止损。

2、问题处理:设计并开发高效的问题处理平台和工具,在系统出现异常的时候可以快速/自动决策并触发相关止损预案,快速恢复服务。

3、配置管理:通过配置管理平台(自研、开源)管理服务涉及到的多个模块、多个版本的关系以及配置的准确性。

4、容量优化:基于容量评估数据,判断系统的瓶颈并提供容量优化的解决方案。比如通过调整系统参数、优化服务部署架构等方法来高效的提升系统容量。

百度百科—运维工程师


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13327530.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-15
下一篇 2023-07-15

发表评论

登录后才能评论

评论列表(0条)

保存