下一代的DevOps服务,Neo第十六期技术沙龙

  • Grafana、Kubernetes和terra
    form等流行的DevOps工具来构建这样的系统。更重要的是,尽管这个想法本身非常重要,但实施它所需的基础设施管理水平远远超过了普通公司的能力。

今天, 由51CTO 主办的第十六期以“Tech
Neo”为主题的技术沙龙活动如期举行,此次沙龙邀请了来自陌陌科技SRE团队负责人王景学、去哪儿网DevOps工程师叶璐和ThoughtWorks高级咨询师顾宇。希望讲师们这些基于平台、建站、深度学习等不同方式的自动化运维实践经验,多少可以为运维/开发人员带来一些的新思路。

AIOps是一个总称,用于指代使用复杂的基础设施管理软件和云解决方案监控工具来实现自动化数据分析和日常的DevOps操作。

用基础设施即代码自动化架构迁移

最后一位演讲人是专注于
DevOps、持续交付,微服务以及全功能产品团队的设计、实践、落地以及经验推广的顾宇老师。他的演讲主题是用基础设施即代码自动化架构迁移。

betway官网 1

演讲由一个真实的架构迁移案例展开,分享了在一个东南亚互联网企业并购案例中的
DevOps 的实施案例。通过在 AWS上使用 Ansible 和
CloudFormation作为基础设施即代码的工具实现产品架构的迁移。

在互联网企业的并购过程中,不光是组织结构的融合,更是产品架构和产品团队的融合。然而在不同的企业文化、技术能力甚至是不同的国家法律法规上的融合更多的是看不到的隐形成本。

betway官网,通过 DevOps
的基础设施即代码实践,把架构以及开发/运维实践固化为配置和代码。让所有的团队和成员能够依照同样的规则进行开发和运维。通过自动化的手段加速团队和产品和架构的融合过程,提升整个组织的技术水平。

首先,根据康威定理,组织和架构和基础设施架构要保持一致,就可以根据未来的组织结构设计系统架构,可以减少系统架构演进中的适应性浪费。

其次,把整个架构分层次封装:基础设施、应用和数据 三种类型分别进行封装:

  1. 基础设施通过配置管理技术封装在 Ansible 的 Playbook里,把 Ansible
    作为 Cloudformation的引擎。
  2. 应用通过 Docker 镜像进行封装,根据不同的地区在构建过程中进行合并。
  3. 数据通过自动化的备份脚本和自动化的迁移脚本(Migration
    Scripts)实时保证可用性。

然后,根据使用场景,设计基础设施即代码的架构。能够自动的把整个架构自动的搭建和还原。根据使用场景设计安全策略,避免人为操作,减少人为故障。

顾宇老师表示,基础设计即代码和基础设施是类和对象的关系。根据不同的场景,可以采用面向对象原则进行逻辑分层。隔离不同场景的关注点。例如:持续交付关注Docker
镜像的部署和变更,应用维护关注日志的查询和操作。

最后在该案例中,顾宇老师总结了利用基础设施即代码技术的几个关键要点:

  • 架构迁移要为组织结构迁移服务
  • 把自动化和基础设施即代码当做制度使用(康威定理和逆定理)
  • 把基础设施即代码当做一个产品开发
  • 安全的架构和架构的安全
  • 基础设施逻辑分层基础设施即代码本质上是一套类库,从面向对象的原则考虑基础设施的设计。
  • 构建每日可用架构

betway官网 2

活动结束时,现场很多开发者还意犹未尽,围着诸位老师就自动化运维的部署、迁移等方面问题,进行探讨交流。

随智能化在各个应用领域的落地及实践,IT运维也将迎来一个智能化运维的新时代。让我们共同见微知著、未雨绸缪,当机器能越来越智能地工作,我们也要变得越来越聪明。

51CTO Tech
Neo技术沙龙是51CTO在2016年开始定期组织的IT技术人员线下交流活动,目前仅限北京地区,周期为每月1次,每期关注一个话题,范围涉及大数据、云计算、机器学习、物联网等多个技术领域。

下面是在IT部门中适合使用AIOps的一些案例:

运维发展历程与工业革命异曲同工,工业的三次革命分别是机械化、电气化与信息化,运维则是原始手工、脚本与自动化工具。那么工业4.0悄然来临的今天,智能化又将会给运维带来哪些影响?坦白讲,AIOps是新概念,目前并没有准确且广泛使用的定义,对AIOps的认知也会随实践、反思和讨论的不断积累发生演变。但AIOps所指代的整体趋势是毋庸置疑的,智能化将逐步走进IT行业乃至社会生活的各个方面。

让AIOps进入场景

自动化运维与 DevOps”沙龙现场

使用AIOps的好处

当然,要及时处理所有机器生成的数据是不可能的。然而,这正是人工智能算法(如深度学习模型)所擅长的那种任务。剩下的唯一问题是:如何在DevOps工程师的日常生活中让这些机器学习工具发挥作用?

去哪儿网基于Kubernetes/Ceph的机器学习云实践

第二位演讲者是有丰富云平台建设、运维、容器云落地等经验的叶璐老师,演讲的主题是去哪儿网基于Kubernetes/Ceph的机器学习云实践。

betway官网 3

叶璐老师以深度学习的兴起为演讲开端,这要涉及深度学习的概念、兴起的原因、深度学习加速器-GPU等方面的内容。紧接着分享了深度学习在Qunar的应用,像智能客服,拿去花用户信用评级,酒店推荐等都是经典实践。

演讲最核心的部分是如何应对GPU使用资源的一系列问题,如环境无隔离、采购周期长、
资源利用率低、各种工具的环境部署成本高等。

betway官网 4

针对这些问题,去哪网采用的方式是构建GPU云,第一期的目标是GPU资源云化,
持业务线同学快捷定制机器学习应用,秒建秒删,一键释放GPU资源,建立统GPU
资源申请和管理等入口到Portal,降低业务线同学的接入和学习成本。做到环境隔离同时保证训练数据在分布式环境下的持久化和可靠性,以及支持Tensorflow全工具链。

如下图,是机器学习应用的一种部署情况

betway官网 5

叶璐表示,目前一期已经完成正在公测中,使用前后对比,在环境秒起秒删、环境隔离给开发同学提供极大的便利。在对接Ceph后,数据的可用性和可靠性大大提升,不用担心因为更换机器带来的训练数据迁移,丢失。

betway官网 6

GPU云基础环境固化,让开发同学免受环境安装之苦是第一步。现在Spectrum第二期也在开发中,开发工程师随时固化到Kubernetes
Post-Install,提供了更高的环境定制自由度;同时Tensorflow
serving的上线,为机器学习应用真正落地提供了更完整的pipeline,同时还有其他的优化,上下游的数据获取管道,预处理流程优化,Jupyter插件系统集成。

【51CTO.com快译】AIOps是什么以及了解下它可以如何帮助您的IT部门,例如,利用它来快速处理所有数据。

betway官网 7

与此同时,真正具有创新精神的公司已经在努力将人工智能算法、ML模型和DevOps系统相结合,以提供未来最先进的云监控和基础设施自动化解决方案。应用这些实践可以极大地改善客户体验,缩短产品的上市时间,更有效地使用基础设施,以及在团队中更好地进行协作。然而,即使是这些创新者也没有现成的解决方案来满足他们的需求,他们不得不使用Splunk、sumeoric、Datadog、promethus

陌陌在k8s容器方面的实践

首位演讲的是王景学老师,主要分享陌陌在k8s容器方面的实践和应用迁移方面的一些经验。当时陌陌选用k8s进行实践的主要原因是,应用发布时间过长、紧急扩容吃力,效率低且应用运行环境软件版本不一致,配置复杂,维护成本比较高,硬件资源利用率不高,总体成本比较高。

betway官网 8

k8s方面的设计目标有五点,分别是:提高服务的可用性,可管理性、使用k8s来管理docker集群、开发不需要关心服务器、提高资源隔离性,实现服务混合部署,应用级别基础资源监控,服务平滑迁移等。针对这些问题和目标,通过自研发布系统,基于docker和k8s的容器管理平台,便于开发者便捷地部署自己的应用程序。

如下图,是K8s架构

betway官网 9

针对K8s架构,王景学老师还分享了基于location和group标签的集群调度、基于ovs的网络节点架构和实现、集群在阿里云扩展和支持,测试环境中有状态应用的尝试、容器基础资源监控方面的指标等,还有在应用迁移过程中,遇到了Swap、cpu软中断及资源利用率,应用白名单等问题。

于未来,希望可以实现对应用请求量,线程数,流量等指标的监控。基准值部分,达到单实例可承载请求量,线程数,流量。伸缩方面,做到最小保留实例数,最大扩容实例数,根据监控反馈和基准值计算需要扩容和缩容的实例数,
按照各个集群资源余量按比例伸缩。

正如您所看到的,选择AIOps工具和解决方案对您的业务非常有益。这似乎是AIOps解决方案供应商的营销噱头,但其实并不是。当下,大多数企业都在努力朝着DevOps文化转型,并进行着数字化转型。

因此,如果监控解决方案报告了由于连接数量增加而导致了CPU使用率的增加,诸如此类。Kubernetes就可以启动额外的应用程序实例,并使用负载平衡来分配访问流和减少负载。这是最简单的场景,而现实世界的用例则要复杂得多,需要允许自动执行任何的日常DevOps任务,使ML模型能够在特定条件下启动它,并预先处理问题,而不是在停机后。

与东华软件、AWS、京东金融、饿了么四位大咖探讨精准运维!

原标题:下一代的DevOps服务:AIOps

那些10年前甚至是5年前构建的系统监控工具的主要缺陷是它们不是为了满足大数据时代的需求而构建的。它们既不能处理数量庞大的输入数据,也不能处理种类繁多的数据类型,更加不能与输入数据的速度保持一致。根据以往的经验,这样的云监控解决方案必须将数据分块,将看似重要的内容进行分离,并切断看似不需要的内容,最后使用焦点组和统计样本进行操作,而不是处理整个完整的数据。

原文标题:What Is AIOps: The Next Level of DevOps
Services,作者:Vladimir Fedak

部署AIOps解决方案可以实现以下的积极成果:

这样做的结果是,在数据分析阶段,一些重要的模式可能会被忽略,数据可视化的视图被完全排除。这可能使得整个过程毫无用处,就好像大数据分析不能产生可操作的业务洞察一样,它将无法提供大数据分析中最重要的价值。

不间断的产品可用性,带来积极的终端用户体验
优先解决问题,而不是永久性的灭火
消除数据孤岛并实现根本性的故障修复,因为您分析了业务生成的所有数据而不是使用精简样本
日常任务的自动化,使您的IT部门能够集中精力于改进基础架构和流程,而不是处理重复且耗时的任务
更好的协作,因为对日志的深入分析有助于显示管理决策的影响,并评估采用的业务战略的效率

快速处理数据。可以训练一个ML模型来处理系统生成的所有类型的数据——这是未来的方向。如果必须添加新的数据类型,模型也可以相对容易地进行调整和再训练,以保持高性能。这将确保数据的完整性和保真度,从而产生全面的分析和具体的结果。
深入的数据分析。当你能够实现对所有数据进行分析时,隐藏的模式就会出现,可操作的见解也会出现。然后,DevOps工程师就可以分析出基础设施需要调整的地方,以避免性能瓶颈的出现,并且可以坐在高管的桌前,为优化基础设施和改进运营提供具体的基于数据的建议。
日常工作的自动化。识别出事件模式后,就可以设置自动触发器。因此,当统计数据显示某些事件总是导致特定的(负面的)结果,并且必须执行某些操作来纠正问题时,DevOps工程师就可以创建触发器并自动对此类事件做出响应。

作者:Vladimir Fedak返回搜狐,查看更多

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

关于什么是AIOps以及为什么它很重要的最终想法

  9月15日技术沙龙

责任编辑:

相关文章