我的编程空间,编程开发者的网络收藏夹
学习永远不晚

运维日常工作

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

运维日常工作

1 inux运维的主要工作内容

什么是linux运维

运维是指大型组织已经建立好的网络软硬件的维护,就是要保证业务的上线与运作的正常。

在他运转的过程中,对他进行维护,他集合了网络、系统、数据库、开发、安全、监控于一身的技术。

运维又包括很多种,有DBA运维、网站运维、虚拟化运维、监控运维、游戏运维等等。

运维分类:

1)开发运维:是给应用运维开发运维工具和运维平台的

2)应用运维:是给业务上线、维护和做故障排除的,用开发运维开发出来的工具给业务上线、维护、做故障排查

3)系统运维:是给应用运维提供业务上的基础设施,比如:系统、网络、监控、硬件等等

基础运维常见工作内容

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

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

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

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

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

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

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

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

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

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

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

2 Linux运维工作发展过程

手工管理阶段

1)业务规模

业务流量不大,服务器数量相对较少,系统复杂度不高。

对于日常的业务管理操作,大家更多的是逐台登录服务器进行手工操作,属于各自为战。

每个人都有自己的操作方式,缺少必要的操作标准、流程机制,比如业务目录环境都是各式各样的。

2)工作职责

早期的运维团队在人员较少的情况下,主要是进行数据中心建设、基础网络建设、服务器采购和服务器安装交付工作。

几乎很少涉及线上服务的变更、监控、管理等工作。

这个时候的运维团队更多的属于基础建设的角色,提供一个简单、可用的网络环境和系统环境即可。

工具批量操作阶段

1)业务规模

随着服务器规模、系统复杂度的增加,全人工的操作方式已经不能满足业务的快速发展需要。

因此,运维人员逐渐开始使用批量化的操作工具,针对不同操作类型出现了不同的脚本程序。

此时,虽然效率提升了一部分,但很快又遇到了瓶颈,操作的质量并没有太多的提升。

我们开始建立大量的流程规范,比如复查机制,先上线一台服务器观察10分钟后再继续后面的操作,一次升级完成后至少要观察20分钟等。

这些主要还是靠人来监督和执行,但在实际过程中执行往往不到位,反而降低了工作效率。

2)工作职责

这个时候的运维团队还会承担一些服务器监控的工作,同时会负责LVS、Nginx等与业务逻辑无关的4/7层运维工作。

这个时候服务变更更多的是逐台的手工操作,或者有一些简单批量脚本的出现。

监控的焦点更多的在服务器状态和资源使用情况上,对服务应用状态的监控几乎很少,监控更多的使用各种开源系统如Nagios、Cacti等。

平台管理阶段

1)业务规模

在这个阶段,我们决定开始建设运维平台,通过平台承载标准、流程,进而解放人力和提高质量。

这个时候对服务的变更动作进行了抽象,形成了操作方法、服务目录环境、服务运行方式等统一的标准。

通过平台来约束操作流程,如上面提到的上线一台服务器观察10分钟,程序的启停接口必须包括启动、停止、重载等。

在平台中强制设定暂停检查点,在第一台服务器操作完成后,需要运维人员填写相应的检查项,然后才可以继续执行后续的部署动作。

2)工作职责

由于业务规模和复杂度的持续增加,运维团队会逐渐划分为应用运维和系统运维两大块。

应用运维开始接手线上业务,逐步开展服务监控梳理、数据备份以及服务变更的工作。

随着对服务的深入,应用运维工程师有能力开始对服务进行一些简单的优化。

同时,为了应对每天大量的服务变更,我们也开始编写各类运维工具,针对某些特定的服务能够很方便的批量变更。

随着业务规模的增大,基础设施由于容量规划不足或抵御风险能力较弱导致的故障也越来越多,迫使运维人员开始将更多的精力投入到多数据中心容灾、预案管理的方向上。

系统自调度阶段

1)工作环境

更大规模的服务数量、更复杂的服务关联关系、各个运维平台的林立,原有的将批量操作转化成平台操作的方式已经不再适合。

需要对服务变更进行更高一层的抽象,将每一台服务器抽象成一个容器,由调度系统根据资源使用情况,将服务调度、部署到合适的服务器上。

自动化完成与周边各个运维系统的联动,比如监控系统、日志系统、备份系统等。

通过自调度系统,根据服务运行情况动态伸缩容量,能够自动化处理常见的服务故障。

运维人员的工作也会前置到产品设计阶段,协助研发人员改造服务使其可以接入到自调度系统中。

2)工作职责

业务规模达到一定程度后,开源的监控系统在性能和功能方面,已经无法满足业务需求;

大量的服务变更、复杂的服务关系,以前靠人工记录、工具变更的方式不管在效率还是准确性方面也都无法满足业务需求;

在安全方面也出现了各种大大小小的事件,迫使我们投入更多的精力在安全防御上。

逐渐的,运维团队形成之前提到的5个大的工作分类,每个分类都需要有专精的人才。

这个时候系统运维更专注于基础设施的建设和运维,提供稳定、高效的网络环境,交付服务器等资源给应用运维工程师。

应用运维更专注于服务运行状态和效率,数据库运维属于应用运维工作的细化,更专注于数据库领域的自动化、性能优化和安全防御。

运维研发和运维安全提供各类平台、工具,MT5使用教程http://www.gendan5.com/mt5.html进一步提升运维工程师的工作效率,使业务服务运行得更加稳定、高效和安全。

3 Linux运维工作分类

应用运维(SRE):

应用运维负责线上服务的变更、服务状态监控、服务容灾和数据备份等工作,对服务进行例行排查、故障应急处理等工作

工作职责如下:设计评审、服务管理、资源管理、例行检查、预案管理、数据备份。

系统运维(SYS):

负责IDC、网络、CDN和基础服务的建设(LVS、NTP、DNS);

负责资产管理,服务器选型、交付和维修,网络建设、LVS负载均衡和SNAT建设

运维开发

是给应用运维开发运维工具和运维平台的

主要包含的平台:工单系统、CMDB、监控系统、ELK日志系统、CI/CD、LDAP、FAQ、培训系统、OpenStack平台

数据库运维(DBA):

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

对数据库进行变更、监控、备份、高可用设计等工作,详细的工作内容如下

设计评审、容量规划、数据备份与灾备、数据库监控、数据库安全、数据库高可用和性能优化

自动化系统建设、运维研发、运维平台、监控系统、自动化部署系统

运维安全(SEC):

运维安全负责网络、系统和业务等方面的安全加固工作

进行常规的安全扫描、渗透测试,进行安全工具和系统研发以及安全事件应急处理

工作内容如下:安全制度建立、安全培训、风险评估、安全建设、安全合规、应急响应。

4 Linux运维日常使用软件和技能

运维工程师使用的运维平台和工具

Web服务器:apache、tomcat、nginx

监控:prometheus、zabbix、openfalcon、nagios、cacti

自动部署:ansible、saltstack、puttet

负载均衡:keepalive、lvs、haproxy、nginx

备份工具:rsync、wget

问题追查:netstat、top、tcpdump、last

容器:docker、k8s、docker-compose、swarm

安全:kerberos、selinux、acl、iptables

虚拟化:openstack、xen、kvm

运维工程师要掌握的技能

扎实的计算机基础知识,包括计算机系统架构,操作系统,网络技术等;

通用应用方面需要了解操作系统、网络、安全,存储,CDN,DB等,知道其相关原理;

编程能力,小到运维工具的开发大到大型运维系统/平台的开发都需要有良好的编程能力;

数据分析能力:能够整理、分析系统运行的各项数据,从中发现问题及找到解决方向;

丰富的系统知识,包括系统工具、典型系统架构、常见的平台选型等;

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

运维日常工作

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

运维日常工作

1.1 inux运维的主要工作内容1、什么是linux运维运维是指大型组织已经建立好的网络软硬件的维护,就是要保证业务的上线与运作的正常。在他运转的过程中,对他进行维护,他集合了网络、系统、数据库、开发、安全、监控于一身的技术。运维又包括很
2023-06-05

24. 日常运维 3

任务计划/etc/crontab 任务计划配置文件crontab -e 编辑任务计划crontab -l(小写的L) 列出任务计划crontab -r 删除crontab -u [username] 指定某个用户1-5 表示范围1到51,2
2023-01-31

Linux运维工程师常用的操作有哪些

本篇内容主要讲解“Linux运维工程师常用的操作有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux运维工程师常用的操作有哪些”吧!1.Shell命令行光标移到行首:Ctrl+a光标移
2023-06-27

docker中ceph集群的日常运维操作有哪些

这篇文章给大家分享的是有关docker中ceph集群的日常运维操作有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。查看ceph的所有守护进程[root@k8s-node1 ceph]# systemctl l
2023-06-04

web数据安全的维护日常工作是什么

web数据安全的维护日常工作是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。web数据安全的维护日常是什么?现在所有的企业和个人都是在使用web登录进行日常工作的操作,we
2023-06-07

Golang对运维工作的重要性

Golang是一种开源的静态类型编程语言,由谷歌开发,旨在解决软件开发中的实际问题。近年来,Golang在运维工作中的重要性日益凸显。本文将探讨Golang在运维工作中的应用价值,并结合具体的代码示例加以说明。首先,Golang具有并发编
Golang对运维工作的重要性
2024-03-13

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录