行业动态

了解最新公司动态及行业资讯

当前位置:首页>新闻中心>行业动态
全部 4000 公司动态 864 行业动态 3136

携程资深技术支持工程师:如何自动给上万台服务器呢?

时间:2022-06-21   访问量:1680

服务器运维_运维服务管理体系建设方案_运维服务管理体系建设

讲师简介

运维服务管理体系建设方案_运维服务管理体系建设_服务器运维

胡俊亚:携程高级技术支持工程师

个人简介:携程技术支持中心高级技术支持工程师,负责管理公司及其他运维平台,开发运维自动化工具

与您分享的主题是基于携程的运维自动化平台

服务器运维_运维服务管理体系建设_运维服务管理体系建设方案

今年5月,勒索病毒爆发,席卷全球,波及政府部门、医疗机构、公共交通、学校、企业等,给世界带来巨大损失

如果有投资眼光的人遇到这个问题,他们可能会考虑购买比特币。作为一名运维工程师,我只考虑如何防止病毒影响我公司的业务。我相信很多运维同事都参与了打击勒索病毒的斗争

尽管该病毒传播范围广,似乎很强大,但有许多应对措施。例如,关闭端口445以防止病毒传播,或在上建立交换机域名以防止病毒运行。当然,这些都是唯一的解决方案。基本上,服务器的安全补丁应该及时更新

运维服务管理体系建设方案_服务器运维_运维服务管理体系建设

如果只有几个或几十个服务器,则补丁更新非常简单。您可以登录并单击安装或单击命令。当您有数千台服务器时,不可能依靠手动工作。一次向所有服务器发送命令是不合适的,这可能会对业务产生巨大影响

运维服务管理体系建设方案_服务器运维_运维服务管理体系建设

那么,如何自动修补数以万计的服务器

让我们首先看看如何修补服务器

运维服务管理体系建设_运维服务管理体系建设方案_服务器运维

上图是一个相对简单的操作过程。首先,检查服务器是否安装了修补程序。如果是,则过程结束。如果尚未安装,请首先将服务器从群集中拉离生产环境,然后安装修补程序,然后重新启动服务器以使修补程序生效

在进入集群之前,您可能需要启动应用程序,例如,让应用程序构建缓存,将应用程序恢复到正常状态,然后访问生产流量。还有一些复杂的问题。例如,集群拉出一些服务器后,其余的服务器可能无法承载它们。应考虑群集可用性

如果要自动化修补服务器的过程,需要完成两项任务:

运维服务管理体系建设方案_服务器运维_运维服务管理体系建设

自动修补一台服务器后,它将从1台扩展到100台,并修补数千台服务器。要做的一件事是把重要的事情说三遍

无论您在操作方面有多熟练,在技术方面有多熟练,在开发工具方面有多自信,在进行大规模生产操作和维护时都应该谨慎。批量灰度是一种很好的谨慎方式,可以大大减少对生产的影响,提高网站的可用性

运维服务管理体系建设_运维服务管理体系建设方案_服务器运维

基于以上对数万台服务器自动补丁的需求,我们搭建了一个自动运维平台,包括三个模块:

这样的系统不仅可以完成配线功能,而且基本上可以覆盖日常运行维护的各种自动化要求。因此,它与您共享

下面将详细介绍这三个方面

遥控器

服务器运维_运维服务管理体系建设_运维服务管理体系建设方案

它是一个开源的远程管理平台,可以管理各种操作系统的服务器,主要包括和。它安装在要管理的服务器上。启动后,它将与建立长连接,向发送任务,并将任务结果返回给

类似的远程管理工具包括、chef和。您可以根据实际应用场景进行选择。去年,我在GOPs北京分享了携程的一些经验。你可以参考它。我不再重复了

2.操作流程

运维服务管理体系建设方案_运维服务管理体系建设_服务器运维

从运维的发展过程来看,首先是传统运维,主要依靠人工操作。例如,启动服务器时,登录服务器会根据操作文档逐步操作。更高级的是,将配置命令写入脚本,然后运行一个或多个脚本来完成配置

缺点是什么?首先,人们每天重复这样的工作,这很累,不体现价值。配送效率低。当他们感到疲劳时,很容易出错并忘记一些配置

使用脚本很容易用相同的函数重复开发。许多脚本没有专门记录日志,因此很难找到历史操作。脚本用于运维操作,出现故障。由于没有统一的运维操作日志,不可能及时知道谁做了什么

服务器运维_运维服务管理体系建设_运维服务管理体系建设方案

随着时代的发展,运维已经发展到一个更加先进的时代,我们也处在这个时代。这个时代的一个明显特征是使用各种开源工具和开发许多工具。该工具提高了效率,大大加快了操作和维护自动化的进程

运维服务管理体系建设_服务器运维_运维服务管理体系建设方案

有这么多可用的工具,将会出现一些问题。例如,以下问题:

服务器运维_运维服务管理体系建设_运维服务管理体系建设方案

为了解决上述问题,我们考虑使用基于事件驱动的开源自动化运维平台

您有多种工具为许多操作提供API。可以在上实现这些API调用,然后可以将它们组合到复杂的任务中

可实现插件操作,操作逻辑可视化,运维日志统一

服务器运维_运维服务管理体系建设_运维服务管理体系建设方案

提供web界面和API。您可以将各种工具的操作放入其中服务器运维,选择操作,填写参数,然后单击运行

服务器运维_运维服务管理体系建设_运维服务管理体系建设方案

你能用它做什么

运维服务管理体系建设_服务器运维_运维服务管理体系建设方案

在我们的日常生活中有许多不同的变更操作,但我们经常重复做相同的事情,例如安装软件、重新启动服务、拉入和拉出集群等。如果不同的变更操作流程被拆分,那么这些小的操作和维护原子操作将被拆分

运维服务管理体系建设方案_运维服务管理体系建设_服务器运维

相反,我们可以将这些操作和维护原子操作结合起来。例如,乐高积木可以拼出各种模型,我可以将原子操作结合到各种更改过程中。这样,同一个操作只需实现一次,就可以重用,避免了重复的车轮制造,大大提高了开发效率

运维服务管理体系建设_服务器运维_运维服务管理体系建设方案

在故障处理方面,我们来看一个常规案例

例如,在凌晨2点,有一个关于订单下降的警报。NOC召开电话会议,并致电相关工程师。接到电话后,工程师们模模糊糊地站了起来,问出了什么问题。国家奥委会需要发表声明。然后工程师们赶紧打开电脑,通过VPN登录内网查看相关监控指标,并利用自己的经验进行故障排除。最终定位故障、修复并最终恢复需要花费大量时间

服务器运维_运维服务管理体系建设方案_运维服务管理体系建设

这种故障处理过程有什么问题

1、修复时间长

半夜处理故障。操作容易出错,影响第二天的工作

3、随着业务的增长,警报数量增加,无法及时处理

4、网站可用性降低

运维服务管理体系建设方案_运维服务管理体系建设_服务器运维

如果是,故障排除的过程是什么?您可以监视警报。当报警发送到时,您可以先执行一些分析。根据专家经验或机器学习,分析完成后,可以判断报警是否可以自动处理。如果是,您可以执行故障修复和故障恢复

如果您自己无法处理,您将收集故障异常内容和初步分析结果,并发送给相应的工程师服务器运维,这为工程师收集信息和排除故障节省了一些时间,工程师可以快速修复故障。对于一些常见的、多发的故障,如果有固定的处理方法,可以移交给自动处理

服务器运维_运维服务管理体系建设_运维服务管理体系建设方案

可与结合进行日常操作和维护。例如,当您参与GOP时,您可以向您发送警报和初步分析。您可以通过手机向聊天室发送指示以快速修复故障

运维服务管理体系建设方案_运维服务管理体系建设_服务器运维

在了解的一些功能之后,让我们看看的部署体系结构。图中黄色部分是的主要模块,包括身份验证、API、规则引擎、、webui等。作为引擎,它充当数据库,存储定义和日志,是所有任务的消息队列。这是一个高度可用的体系结构。并在每台服务器上运行

运维服务管理体系建设方案_服务器运维_运维服务管理体系建设

这是的数据流图。聊天通过此处的规则引擎映射到操作。上述操作和维护的原子操作被合并到一个工作流中。工作流的解决由完成,每个特定执行由完成

运维服务管理体系建设方案_运维服务管理体系建设_服务器运维

有三个好处:

3.批量灰度

运维服务管理体系建设_运维服务管理体系建设方案_服务器运维

虽然它有很多优点,但当您想要执行

上一篇:服务(IT),就是客户将全部或部分IT工作

下一篇:IT外包服务以其有效减低成本、增强企业的核心业务

发表评论:

评论记录:

未查询到任何数据!

在线咨询

点击这里给我发消息 售前咨询专员

点击这里给我发消息 售后服务专员

在线咨询

免费通话

24小时免费咨询

请输入您的联系电话,座机请加区号

免费通话

微信扫一扫

微信联系
返回顶部