linux运维工程师的主要工作是什么?

linux运维工程师的主要工作是什么?,第1张

1Linux运维到底是一个怎样的工作,具体需要掌握哪些知识技能

用一句话概括就是维护Linux系统以及系统之上的相关软件服务、程序代码(Java、Php、Python)和企业核心数据正常运行,使得企业能够优质、高效、快速的为企业的客户提供服务,从而盈利赚钱,随着企业增长,服务器和服务数量、要求也会成倍增加,对运维的能力和运维人员的数量都有更多的要求。在整个企业业务系统运转过程中,涉及到系统、网络、数据库、存储、开发、安全、监控、架构等综合的技术于一身的技术,对运维人员的能力提出了更高的要求。

Linux运维岗位分类

□硬件运维:硬件维护,如服务器、交换机、路由器、存储、负载均衡等设备。

□网络运维:网络设备维护:交换机、路由器以及办公局域网的维护。

□系统运维:基础设施的维护,侧重于系统和应用,也会涉及硬件网络。

□应用运维(SRE):企业业务研发环境、测试环境、线上环境等的维护和故障处理。

□监控运维:整个业务系统所有服务器集群的业务的监控和报警。

□数据库运维: 负责数据存储方案设计、数据库表设计、索引设计和SQL优化

□安全运维:安全扫描、渗透测试,安全工具、安全事件应急处理等。

□运维开发:开发运维工具和运维平台,以及自动化、智能化运维。

运维工程师还包括一些低端的岗位,例如:网络管理员、监控运维、IDC运维,值班运维,这些岗位是没前途的岗位,需要尽快提高改进。

Linux运维工程师岗位职责和技术栈

一般从企业入门到中级Linux运维工程师的工作大致有:

□挑选IDC机房及带宽、购买物理服务器。

□购买云服务及CDN服务相关。

□搭建部署压力测试和正式的业务系统运行环境(例如:网站运行环境)。

□负责日常项目或业务代码上线、故障排除、代码回滚等。

□对企业数据进行备份及故障恢复、处理网站运行中的各种故障(例如:硬件故障、软件故障、服务故障、数据损坏及丢失等)。

□对网站的运行状态及故障进行监控、提前解决网站运行的潜在安全问题。

□开发自动化程序(shell、python)或平台提高工作效率。

□根据访问量增加,提前规划和升级网站集群架构,根据公司需求增加业务应用。

□程序发布流程和规范,制定运维工作制度和规范。

□配合开发人员部署及调试产品研发需要的测试环境、代码发布等工作需求。

□公司如果较小可能还会兼职网管、网络工程师、数据库管理员、安全工程师、技术支持等职责。

涉及到的Linux平台上的运维工具有:Linux系统,Linux基础命令,Nginx,Apache,MySQL,PHP,Tomcat,Lvs,Keepalived,SSH,Ansible,Rsync,NFS,Inotify,Sersync,,Open,NTP,Kickstart/Cobbler,KVM,OpenStack,Docker,K8S,Mongodb,Redis,Iptables,SVN,GIT,Jenkins,Docker,k8s/Shell/Python/Go语言等,除此之外还可能涉及到交换机、路由器、存储、安全、开发等知识。

总的来说:Linux初中级运维工程师更多的是使用工具软件的阶段,在一线城市互联网公司的薪资一般在8000-20000/月。老男孩教育毕业学生平均13-15K

职业发展方向:系统架构师、数据库工程师、运维开发工程师、系统网络安全工程师、运维经理、运维总监

2现在很多培训机构来学校宣传,Linux方面就是云计算什么的,学费很贵,差不多2万,四个月,我想知道这个培训到底有没有必要,如果自学的话差距有多大

答:LINUX运维培训机构鱼龙混杂,务必要擦亮眼睛,本科网络专业,如果在我机构培训,5个月左右,毕业应该不低于15K,自学的话,周期长,不容易学好。除非很有毅力坚持学6-12个月。

3这个行业前景怎么样听培训机构的人说什么安卓iOS开发越来越没市场,现在只有Linux、开源最好等等

答:Linux发展前景非常好。

众所周知,全球互联网及移动互联网仍在在高速发展,特别是物联网也开始发展,所有的公司要想生存都必须和互联网接轨(也要利用网络提供服务和赚钱),这样就使得整个互联网的发展与日俱增。

而Linux系统以安全、稳定、免费、高效、可自由更改源代码的特点占据了,1-2线城市98%以上的互联网企业以及移动互联网企业的系统应用。例如:百度、腾讯、阿里巴巴、淘宝网、京东商城、小米网、58同城、Sina、网易、滴滴打车、摩拜单车等都在大量使用Linux *** 作系统,国外的企业更是对Linux情有独钟,谷歌、Facebook、亚马逊等,毫不夸张地说,只要你能随口说出来想到的公司后台几乎都在使用Linux系统(包括Windows的厂商微软公司也在亲近Linux系统),我们使用的手机、平板等大多都在使用Linux系统(安卓版),苹果系列产品也都是类Linux系统(Unix),可见Linux系统的应用之广,可以预见未来至少是10年,Linux将是服务器端最火、应用最广的 *** 作系统,没有之一,中国国家也在大力扶持Linux系统,例如江苏3000所中小学开始普及Linux系统。

为什么老男孩老师会对Linux的未来火爆程度这么肯定呢这是因为Linux诞生的基因决定的:

Linux系统遵循GPL协议,即保证任何人有共享和修改自由Linux的自由,任何人有权取得、修改和重新发布Linux系统的源代码权利,但都必须同时给出具体更改的源代码,这个许可让全球的人都愿意为Linux贡献力量而不被某些人和机构据为己有,你说能不火么。

1 2000-2010年,是互联网起步发展阶段, Sina、Sohu、网易门户、BAT发展阶段,此时网络端主要是PC机器,快速增长。

2 2011-2020年,从互联网到移动互联网, 滴滴、抖音、头条、美团等崛起。网络端除PC机,还多了手机、平板、爆发式增长。

3
2021-2030年,物联网+人工智能阶段,除了手机、平板、PC机器,还有大量的客户机,万物(洗衣机、电冰箱、电动车、加湿器、电饭锅),只要带电的都可联网,客户机及数据量爆炸式巨增。人工智能基础是大数据和机器学习、深度学习。

42021-2025年,全国党政军都从Windows切换到Linux,中小学开始使用Linux,规模网站后台99%都是Linux,例如江苏3000所中小学开始普及Linux系统,Linux未来必火。

大家觉得现在上网的人多,还是用网赚钱的人多当然是上网的人多,
未来是人人都用网络赚钱的时代,那时对服务稳定性要求更高了,个性化也高,因此,Linux作为承载数据的后端不可替代的服务器必然会更火,Linux运维人员也会大量增加。

万物联网的基础,未来的时代,是所有的东西都可能联网的时代,不仅仅是PC和手机,基础设施准备。

15G时代来临,马路从50米宽拓展到500米宽,甚至是5公里宽。

2万物联网,需要海量的IP地址,IPV6来了,号称可以给地球上的每一粒沙子配置一个公网地址。

一般从企业入门到中级Linux运维工程师的工作大致有:挑选IDC机房及带宽、购买物理服务器或云服务、购买及使用CDN服务、搭建部署程序开发及用户的访问系统环境(例如:网站运行环境)、对数据进行备份及恢复、处理网站运行中的各种故障(例如:硬件故障、软件故障、服务故障、数据损坏及丢失等)、对网站的故障进行监控、解决网站运行的潜在安全问题、开发自动化脚本程序提高工作效率、规划网站架构、程序发布流程和规范,制定运维工作制度和规范、配合开发人员部署及调试产品研发需要的测试环境、代码发布等工作需求,公司如果较小可能还会兼职网管、网络工程师、数据库管理员、安全工程师、技术支持等职责。
涉及到的Linux平台上的运维工具有:Linux系统,Linux基础命令,Nginx,Apache,MySQL,PHP,Tomcat,Lvs,Keepalived,SSH,Ansible,Rsync,NFS,Inotify,Sersync,Drbd,PPTP,Open,NTP,Kickstart/Cobbler,KVM,OpenStack,Docker,Mongodb,Redis,Memcached,Iptables,SVN,GIT,Jenkins,网络基础,Shell/Python开发基础等,除此之外还可能涉及到交换机、路由器、存储、安全、开发等知识。
运维工程师还包括一些低端的岗位,例如:网络管理员、监控运维、IDC运维,值班运维,其中后三个低端岗位是没前途的岗位。
总的来说:Linux初中级运维工程师更多的是使用工具软件的阶段,属于运维的初级阶段,在一线城市互联网公司的薪资一般在8000-15000/月。
职业发展方向:Linux运维架构师、数据库工程师、运维开发工程师、运维经理、运维总监
Linux初中级运维工程师应用软件阶段。

五个非常好用的Linux远程连接工具:

第一款:Xshell(>

Xshell是一个非常强大的安全终端模拟软件,它支持SSH1,SSH2,以及Windows平台的TELNET协议。Xshell可以在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的,Xshell非常符合使用习惯,值得推荐。

优点:

①界面设计简洁,人性化,用起来比较舒服。

②支持标签,打开多个会话链接的时候比较方便。

③可以保存密码,方便下次直接使用,当然要做好电脑安全防护。

④支持rz和sz命令,这两个命令在传输少量小文件时非常方便。

⑤图形化支持本地和远程文件之间的传输,方便系统部署和日志排查。

第二款:winscp(>

winscp是一个Windows环境下使用SSH的开源图形化SFTP工具客户端。同时支持SCP协议,它的主要功能就是在本地与远程计算机间安全的复制传输文件。winscp+putty软件配套使用。

优点:

①简洁的图形用户界面。

②Windows完美集成。

③完美支持所有常用文件 *** 作。

④可以批处理脚本和命令行方式。

⑤多种半自动、自动的目录同步方式。

⑥内置文本编辑器。

⑦可以存储会话信息,方便下次使用。

⑧可将设置存在配置文件中而非注册表中,适合在移动存储设备上 *** 作。

第三款:PuTTY(puttyorg/)

PuTTY是SSH和telnet客户端,最初由Simon
Tatham为Windows平台开发。用MIT许可证授权,包含的组件有:PuTTY、PuTTYgen、PSFTP、PuTTYtel、Plink、PSCP、Pageant,默认登录协议是SSH,默认的端口为22。PuTTY主要用来远程连接服务器,它支持SSH、Telnet、Serial等协议的连接。最常用的是SSH协议,用它来远程管理Linux服务器非常方便。

优点:

①完全免费开源。

②跨平台。

③绿色软件,体积不到1M,不需要安装,占用系统资源少。

④完全支持SSH1和SSH2。

第四款:MobaXterm(/mobaxtermmobateknet/)

MobaXterm的功能非常全面,几乎提供了所有重要的远程网络工具,以及Windows桌面上的Unix命令,登录之后默认开启sftp模式。

优点:

①功能非常全,基本上涵盖了服务器运维所有功能。

②免费开源。

③丰富的插件。

④超多好用的快捷键,效率非常高。

⑤支持多标签,切换也十分方便。

第五款:FinalShell(>

FinalShell是一体化的服务器网络管理软件,不仅是SSH客户端,FinalShell还是功能强大的开发、运维工具,充分满足用户的开发运维需求。

优点:

①跨平台。

②支持内存、CPU性能监控,Ping延迟丢包,Trace路由监控。

③支持rz、sz。

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

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刷

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

第一款:Putty

Putty是一款非常轻巧灵活的终端软件, *** 作简单、免费开源。目前主要用于Windows平台,集成了Telnet、SSH、Rlogin等客户端工具,可以方便的远程登录和管理服务器,非常适合追求轻便灵活的用户。

第二款:Powershell

Powershell是Windows10系统自带的命令行工具,cmd命令提示符的增强版,基本功能与Bash相似,可直接运行大部分shell命令,使用非常轻便快捷。如果对终端功能要求不高,可以使用该工具。

第三款:Xshell,老男孩老师推荐

Xshell是一款应用广泛的终端软件,在业界很受欢迎。支持多窗口切换和常见的SHH、Telnet、SFTP等协议,可以轻松上传下载文件。如果对终端功能要求高,管理服务器多,可以考虑使用这个软件,体验很好。

第四款:SecureCRT

SecureCRT是一款支持SSH的终端仿真程序,简单来说就是在Windows下登录Unix或Linux服务器主机的软件,自带文件传输工具,可以方便地上传下载文件,调整界面风格,切换多窗口等。对于远程连接和管理服务器来说,这是非常不错的选择。

第五款:Mobaxterm

Mobaxterm是一款全方位的终端软件,不仅可以像Putty一样通过SSH连接远程服务区,还可以像winscp一样使用SFTPSCP等协议传输文件,内置多标签和多终端分屏。此外,它还支持VNCRDPXdmcp等远程桌面连接。最重要的是完全免费,功能非常强大。

第六款:堡塔SSH终端

堡塔SSH终端是一款免费软件,支持SSH和SFTP客户端的SSH终端管理和文件传输。 *** 作更方便,工作更高效,使用堡塔SSH终端,可以在同一屏幕上切换SSH和SFTP界面,使用命令行快速上传和下载文件,非常方便。

领域 :工具名称

*** 作系统 :CentOS、Ubuntu、Redhat、suse、Freebsd

网站服务: nginx、apache、lig>    在局域网中的Linux服务器集群,为了保障运维安全,只能从堡垒机登录到各个Linux服务器。那么需要对Linux服务器集群进行安全加固,限制访问权限。在堡垒机上可以部署脚本来记录用户 *** 作的审计日志(详情参考笔者的文章),那么整个局域网的Linux服务器集群的安全性就可以大大提高。

    堡垒机作用明显,其提供运维统一入口和安全审计功能,切断直接访问和事后审计定责,解决“运维混乱”变得“运维有序” 。

   下面是三种方法总结。分别从服务端,系统端、防火墙端来完成只允许堡垒机SSH登录的功能。

1、/etc/ssh/sshd_config

    修改添加AllowUsers到ssh配置文件/etc/ssh/sshd_config  :

    AllowUsers myuser@201324

    然后重启 sshd服务:systemctl restart sshd

2、hostsallow与hostsdeny

    修改/etc/hostsdeny中添加设置 sshd : ALL ,拒绝所有的访问;

    修改/etc/hostsallow,添加设置sshd : 201324 ,单独开启某个IP地址 。

    这两个文件优先级为先检查hostsdeny,再检查hostsallow。

    更加详细信息参考笔者的文章-Linux中hostsallow与hostsdeny  。

3、iptables防火墙

    tcp协议中,禁止所有的ip访问本机的22端口。

    iptables -I INPUT -p tcp--dport 22 -j DROP

    只允许201324 访问本机的22端口

    iptables  -I  INPUT  -s  201324   -ptcp  --dport  22  -j   ACCEPT

    另外/etc/pamd/sshd也可以提供访问控制功能,调用的pam_accessso模块是根据主机名、IP地址和用户实现全面的访问控制,pam_accessso模块的具体工作行为根据配置文件/etc/security/accessconf来决定。但是囿于资料过少,待以后遇到再解决把。


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

原文地址: http://www.outofmemory.cn/zz/12705066.html

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

发表评论

登录后才能评论

评论列表(0条)

保存