linux机房管理?机房运维管理

linux运维主要做什么

1) Linux运维岗位及工作内容

互联网Linux运维工程师是一个融合多学科(网络、系统、开发、数据库、安全、存储等)的综合性技术岗位,甚至还需要沟通、为人处世、培训、销售、管理等非技术能力,这给运维工程师提供了一个广阔的发展空间。

2) Linux运维工程师岗位职责

一般从企业入门到中级Linux运维工程师的工作大致有:挑选IDC机房及带宽、购买物理服务器或云服务、购买及使用CDN服务、搭建部署程序开发及用户的访问系统环境(例如:网站运行环境)、对数据进行备份及恢复、处理网站运行中的各种故障(例如:硬件故障、软件故障、服务故障、数据损坏及丢失等)、对网站的故障进行监控、解决网站运行的潜在安全问题、开发自动化脚本程序提高工作效率、规划网站架构、程序发布流程和规范,制定运维工作制度和规范、配合开发人员部署及调试产品研发需要的测试环境、代码发布等工作需求,公司如果较小可能还会兼职网管、网络工程师、数据库管理员、安全工程师、技术支持等职责。

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

运维工程师还包括一些低端的岗位,例:网络管理员、监控运维、IDC运维,值班运维

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

3) Linux中级运维工程师应用软件阶段。

Linux系统,Linux基础命令,Nginx,Apache,MySQL,PHP,Tomcat,Lvs,Keepalived,SSH,Ansible,Rsync,NFS,Inotify,Sersync,Drbd,PPTP,OpenVPN,NTP,Kickstart/Cobbler,KVM,OpenStack,Docker,Mongodb,Redis,Memcached,Iptables,SVN,GIT,Jenkins,网络基础,Shell/Python开发基础

4)Linux运维架构师岗位职责

运维架构师是运维工程师的高级阶段,并没有明确的岗位界限区分,运维架构师一般来说是除了对运维工程师应用的开源工具熟练掌握之外,更多的是用思想来运维了,即DevOps的落地,各种企业运行过程中的解决方案提出和执行,例如:根据公司的现状可以设计各类运维解决方案的能力:

1、自动化代码上线(SVN/GIT+Jenkins+MVN)解决方案;

2、云计算部署架构及Docker微服务架构方案;

3、服务自动化扩容方案(KVM/OpenStack/Docker+Ansible+Zabbix);

4、10万并发的网站架构、秒杀系统的架构及解决发你个案;

5、多IDC机房互联方案、全网数据备份解决方案、账号统一认证方案;

6、数据库、存储及各重要服务节点的集群和高可用方案。

7、各网络服务的极端优化方案、服务解耦/拆分。

8、运维流程、制度、规范等的建设和推行。

9、沟通能力、培训能力、项目管理、业务需求分析及落地执行力等。

这里仅举几个例子,实际工作中会有更多,运维架构师的工作,其实就是解决企业中的用户访问量不断增大带来的痛点,最终达到高效、优质的为客户提供网站及业务服务。

总的来说:Linux运维架构师更多的是根据企业日益增长的访问量需求,利用若干运维工具组合加上经验思想,形成解决业务需求方案的阶段,当然也不排除对运维工具进行二次开发以及可视化展示运维数据的阶段(开发软件平台),这个阶段涉及的工具会非常多,几乎市面好用的开源工具都在备选之列,在一线城市互联网公司的薪资范围15000-50000/月。

职业方向:高级数据库工程师、运维开发工程师、运维经理、运维总监、技术总监

运维架构师:将多个工具组合,加上思想经验,形成方案,用思想和经验赚钱的阶段。

技术的提升仅是量的积累,思想的提升才是质的飞跃!——老男孩

5)数据库运维工程师

众所周知,数据几乎是所有企业的生命线,所以数据库工程师的地位和薪水一般会比普通运维工程师高一些,主要工作内容就是保证数据库数据的安全以及高效地为用户提供各种服务。工作内容主要有:数据库环境搭建、数据库优化、数据库

linux根目录下5个主要的目录及目录的功能各是什么

(1)/:根目录

(2)/bin:存放启动时所需要的普通程序

(3)/boot:存放内核及启动所需要的文件

(4)/dev:存放设备相关的文件

(5)/etc:存放系统的配置文件

(6)/home:存放用户文件的主目录,用户数据( cd~可进入自己的主目录)

(7)/lib:存放启动时所需要的库文件

(8)/mnt:存放临时的映射文件,通常是一些用来安装其他设备的子目录(如/mnt/cdrom/mnt/floppy)

(9)/proc:这是一个虚拟的文件系统,存放当前系统的状态(有关进程和系统信息)

(10)/root:超级用户主目录

(11)/sbin:存放启动时所需要的系统管理程序

(12)/tmp:存放启动时产生的临时文件

(13)/usr:包含一般不需要修改的应用程序,命令程序文件,程序库,手册

(14)/var:存放系统产生的经常变化的文件

(15)/var/tmp:存放用户的临时文件

(16)/usr/lib:存放非启动用的库文件

(17)/lib/modules/:存放内核模块

(18)/var/log:存放大多数日志文件

(19)/var/run:存放运行时的信息

(20)/var/lib:存放一些系统运行时需要的文件

(21)/var/spool:存放邮件,新闻及打印序列

(22)/etc/X11:存放X窗口系统所需要的配置文件

(23)/etc/init.d:存放启动描述文件,包括各种模块和服务的加载描述

(24)/etc/rcS.d:存放一些连接到/etc/init.d的文件,根据runlevel的不同而执行不同的描述

(25)/etc/rc0.d---/etc/rc6.d:存放一些连接文件,只在指定的runlevel下执行相应的描述

(26)/usr/X11R6,/usr/X11,/usr/Xfree86:存放X窗口系统所需要的文件

(27)/usr/bin:存放应用程序二进制可执行文件

(28)/usr/sbin:存放大部分系统程序

(29)/usr/games:存放游戏程序及相应的数据

(30)/usr/include:存放c和c++的头文件

(31)/usr/info:存放GNU Info程序所需要的数据

(32)/usr/man:存放man程序所需要的数据

(33)/usr/src:存放源代码文件

(34)/usr/doc:存放文档文件

(35)/usr/local:存放本地计算机所需要的文件

(36)/usr/shared:存放各种共享文件

Linux运维工作至少需要知道哪些知识

产品的整个生命周期里运维的职责重要而广泛,但运维工程师们的职责不仅限于这部分工作,还需要总结工作中遇到的问题,抽取出相关的技术方向、研发相关的工具和平台以支持/优化业务的发展并提高运维的效率,相关技术工作主要包括:

服务监控技术:包括监控平台的研发、应用,服务监控准确性、实时性、全面性的保障

服务故障管理:包括服务的故障预案设计,预案的自动化执行,故障的总结并反馈到产品/系统的设计层面进行优化以提高产品的稳定性

服务容量管理:测量服务的容量,规划服务的机房建设,扩容、迁移等工作

服务性能优化:从各个方向,包括网络优化、操作系统优化、应用优化、客户端优化等,提高服务的性能和响应速度,改善用户体验

服务全局流量调度:接入服务的流量,根据容量和服务状态在各个机房间分配流量

服务任务调度:服务的各种定时/非定时任务的调度触发及状态监控

服务安全保障:包括服务的访问安全、防攻击、权限控制等

数据传输技术:包括p2p等各类传输技术的研发应用,也远距离大数据传输等问题的解决

服务自动发布部署:部署平台/工具的研发,及平台/工具的使用,做到安全、高效的发布服务

服务集群管理:包括服务的服务器管理、大规模集群管理等

服务成本优化:尽可能降低服务运行使用的资源,降低服务运行成本

数据库管理(DBA):通过设计、开发和管理高性能数据库集群,使数据库服务更稳定、更高效、更易于管理。

平台化的开发:类docker和googleborg平台的开发管理,及服务接入技术

分布式存储平台的开发优化:类googlegfs等分布式存储平台的研发及服务接入

等等,凡是关系到服务质量、效率、成本、安全等方面的工作,及涉及到的技术、组件、工具、平台都在运维的技术范畴里。做好每一个技术方向、完成相应的组件、工具、平台研发都能对履行运维职责起到积极的作用,对业务的发展发挥关键影响。

阅读剩余
THE END