评估一个云平台的SLA,一般以可用性、数据可靠性为主要指标,而因为单机稳定性存在天花板以及云计算系统的集群属性,谈及云计算SLA时讨论的重点主要在分布式系统而非单机。但在今年ArchSummit大会上,UCloud资深工程师邱模炯的分享《Linux内核在UCloud云平台上的实践》则主要着眼于单机上的云主机稳定性,UCloud广泛应用的Linux内核热补丁技术可以实现宿主机不重启的情况下完成内核升级,从而避免对上面云主机的业务中断。

\\

InfoQ中文站编辑跟邱模炯进行了一次交流,了解UCloud关注单机稳定性背后的原因。

\\

嘉宾简介

\\

邱模炯,UCloud资深工程师,2007年研究生毕业于北京大学计算机系,之后分别在VMware、腾讯工作过,目前供职于UCloud。技术经历上以Linux内核、虚拟化技术和数据中心自动化运维等方面为主。热爱服务器和数据中心的各种技术,研发和运维兼顾,硬件和软件兼顾,底层和应用兼顾。

\\

邱模炯是2014年10月QCon上海大会《扩展性、可用性和高性能》专场的出品人。

\\

InfoQ:云平台的稳定性是怎么定义的?它跟我们说的“可用性”是否是一个概念?它从整体的统计角度和从用户的角度,分别意味着什么?

\\

\

邱模炯:稳定性和可用性两个概念本来是很接近,说说我的看法。

\\

稳定性是指持续一段时间内一个系统不出故障的概率,也可以把它转化为“一段时间内系统有多少次故障”。

\\

可用性是指一段时间内这个系统可以正常运行的时间是多少。

\\

举个例子,比如说一个小时内一个系统出了10次故障,但每次故障只要十秒钟就恢复了,那么这一个小时就一百秒出问题。另一个情况是,我一个小时内出一次故障,这一个故障花了半小时。这两个谁更严重?从稳定性的角度来讲,前面一个更严重,虽然它故障的时间只有一百秒;从可用性的角度来讲的话,后面一个更加严重一些,因为一个小时有半个小时都不能工作。这是关于稳定性、可用性的概念。

\\

这两个指标都是用户可以感知的:稳定性关系到给用户带来的打扰次数,可用性关系到用户的业务能够保持正常运行的时间。我们现在对云平台的可用性一般会设置一个量化指标,比如UCloud对外的服务,云主机的可用性是99.95%,存储的可用性比如说是四个九、五个九。而另一方面,很少有人在量化指标里去提稳定性,大家更关心的是可用性的概念。

\

\\

InfoQ:你们在内部,如何把稳定性目标转化为可监控、可量化的指标?

\\

\

邱模炯:从研发角度来看,稳定性和可用性同样的重要。我们不能说把一次故障时间尽量的压缩,比如压缩到十秒内,然后我们就可以一个小时内打扰用户十次,这样对用户业务也同样会产生很大的影响。

\\

稳定性这个指标以云主机为例,我们会统计它的宕机次数,宕机次数反映稳定性,相对于宕机累计的时间则反映可用性。

\\

影响稳定性、可用性的因素,涉及到整个云平台技术方方面面。从上往下看整个云平台技术,首先是一个云管理平台——如OpenStack这样的平台,然后是虚拟化技术——也是云平台的一个核心技术,下面是Linux内核,然后是硬件——云平台最终是把数据中心的硬件、资源给池化,然后卖给用户,所以涉及到硬件技术。然后,我们这么多的硬件,我们的内核、虚拟化、云管理平台,我们要怎么样运维它。这些方面都影响稳定性、可用性,哪个环节做得不好都会导致稳定性、可用性的下降。

\\

在这些因素里边,我个人认为内核技术是最关键的。为什么呢?内核是个承上启下的东西。

\\

所谓承上,就是上面有云管理平台、虚拟化,而虚拟化技术跟内核技术也是紧密相关的。内核就像地基一样,地基不稳,上面就是搭空架子。

\\

所谓启下是说,因为硬件有不可避免的故障率,总是会有问题,但是我们可以通过内核技术去降低硬件的故障率。我们还可以通过内核的工作去减少运维的工作量。比如我们在UCloud开发了热补丁技术,做到免重启修复内核。如果没有热补丁技术,每次内核升级不但运维非常痛苦,因为他要重启所有机器;而且用户也会被打扰,一重启,用户云主机就中断了。但是热补丁技术解决了这个问题:运维很Happy,不用重启机器了,用户也很Happy,他感受不到中断。

\

\\

InfoQ:你这个观点挺有意思,因为一般我们听到的观点是说,云计算用分布式系统加上自动化的运维模式,去除单点,把底层故障对系统造成的影响隐蔽掉,这个关注点在于故障预测、快速的自动恢复。是什么原因造成你们的关注点不同?

\\

\

邱模炯:你说的对,大家提到云平台,非常容易想到有个大的分布式系统,有分布式存储、分布式网络。

\\

但分布式存储追求的是什么?我们平时为了提升性能,为了数据可靠性,往往通过分布式系统里边的一些技术,比如说通过写多份去避免单份失效,通过集群去解决总体性能。

\\

但是云主机这个基础产品,在性能上面是单点:因为一台特定的云主机只能来自于一台物理服务器。

\\

云主机在可用性上也是单点。分布式系统追求的是怎么样去避免单点故障,但是我们现在看到各种分布式技术里面,它没有办法有效地解决云主机这个性能和可用性单点。所以我们现在尽可能地去挖掘单台物理器的性能的极限,还有可用性的极限。

\\

UCloud的团队成员主要是来自于国内顶级的互联网公司,所以对于分布式系统方面非常有经验,大家想到的第一印象的东西——分布式系统、分布式存储、SDN网络——我们已经具备深厚的技术背景,已经把这方面做得很好了。所以我们进一步要把这个事情从良好做到优秀,就要挖掘内核。我们越做,越觉得内核在这里边起到的作用非常关键。

\\

你刚刚提到我们做内核工作是要去提升它的稳定性和可用性。我们做这些工作,追求的是:云主机永远不要宕机。听起来好像有点夸张,其实我们已经非常接近这个目标了。

\\

云主机的宕机有几个因素影响:一个是内核不稳定,另一个是下面的硬件故障,主要是这两个。内核不稳定,我们有热补丁技术给它修复,宿主机内核还是云主机内核都可以。至于下面的硬件——特别是内存,内存是硬件宕机故障的大头,那我们通过内核技术把内存硬件故障给隔离开,避免它引发宕机。

\\

我昨天还想了想,过去至少连续三个月,我都没有收到任何一起宿主机内核引发宕机的报警短信。

\

\\

InfoQ:所以其实你们认为云主机完全不出故障是一个可以实现的目标?

\\

\

邱模炯:对。除非出现一些不可抗力,比如说一个机房、一台服务器突然断电,那我是没有办法。

\

\\

InfoQ:你在演讲中提到内核工作的第二个目标是提升性能,包括IO加速模块,将IO读写顺序化记入Cache盘组,然后获得IOPS的性能还是非常高的。但是它是不是可能会对数据可靠性有影响?你们做过持续很长时间的测试,它的表现怎么样?

\\

\

邱模炯:我们不光是测试,我们已经在生产环境下面稳定运营了快一年,从来没有发现过可靠性的问题。相反,其实我们恰恰是从可靠性的角度来做这项工作的。

\\

用户是我们的核心资产,UCloud以用户为中心,从用户角度看待我们的产品。我们的研发、产品的工作都是围绕我们的用户而作的。

\\

我们的用户需要那么高的IOPS,怎么办?用SSD。但是,虽然现在厂商认为SSD已经非常稳定了,过去还是发生过一些事件,导致SSD盘的数据丢失。SSD盘数据丢失和我们平时那些机械盘数据丢失是不同的概念,SSD盘要是坏了一个点,就有可能整个盘的数据没法恢复。所以说,我们是从数据可靠性的角度来做这项工作,不光是性能。

\

\\

InfoQ:能有一个量级的提升吗?

\\

\

邱模炯:数据可靠性有一个量级的提升,性能是两个量级的提升:对于IOPS机械盘一般是一百到两百,我们把它提升到两万到三万。

\

\\

InfoQ:最后一个问题是有关内核人才这方面。国内的内核人才其实比较稀缺,而UCloud现在还算是一个初创企业。你们怎么去评估自己维护内核团队是不是划算这件事情?

\\

\

邱模炯:UCloud内核团队现在不到十个人。大家觉得不到两百人的公司为什么需要十个人的内核团队,是不是太多了?相反我觉得人数少了,应该再多一些。你想我们十人服务上万家客户,分给每个客户只有0.1个人,对不对。而我们的客户,他们也要追求稳定性,追求数据的可靠性,内核技术对他们也很重要。

\\

大公司为什么需要内核团队?因为他们有很多的服务器。UCloud也有大量的服务器,我们目前有万台级别的服务器。公司是否需要内核团队,其实是由服务器的数量、数据中心的规模,以及我们的客户是否需要来决定的。

\\

国内的内核人才确实比较稀缺。现在我们收简历,能收到一大堆做分布式系统、或者做前端开发的简历,但是很少收到内核人才的,即使收到,也很少说对云平台有非常深的认识和钻研,因为云平台也很新。但内核技术对于云平台技术又非常关键,考虑到这个情况,UCloud大概一年半之前就开始建内核团队,现在正在发挥非常重要的作用。

\\

Linux内核是开源的,UCloud的内核成果从开源中吸取,从开源中发展。UCloud不但掌握内核,而且发展内核,最终是希望把内核成果回馈给我们的用户,我们的业界同行。以后希望通过类似InfoQ的活动,把我们的实践与思考不断地反馈给大家。

\

UCloud邱模炯:为什么内核是云平台稳定性的关键相关推荐

  1. UCloud叶理灯:内外部容器云平台构建的思考!

    一年一度的用户大会,UCloud再次携"中立"而来, 会上一口气发布的诸多产业互联网产品再次印证了其在技术创新方面始终很坚持.尤其是USQL数据湖分析工具.StepFlow工作流服 ...

  2. 合宙Air724 Luat 开发接入ThingsCloud 物联网云平台

    本文用于合宙模组 luat 方式接入 ThingsCloud 云平台,代码托管在Github,可以在这里下载: https://github.com/IoT-ThingsCloud/luat-thin ...

  3. 物联网云平台—物联网背后的掌舵者?

    物联网云平台-物联网背后的掌舵者? 物联网的概念提了有四五年了,最近终于加速了. 从去年年底,小米宣布已成为全球最大的物联网硬件平台,到今年年中阿里宣布全面进军物联网,再到联想决定豪赌物联网-巨头的纷 ...

  4. NB-IOT实现万物互联设计思路分享 (从硬件到单片机到云平台)

    NB-IOT实现万物互联 产品设计思路分享 NB-IOT窄带物联网(Narrow Band Internet of Things, NB-IoT),是一种专为万物互联打造的蜂窝网络连接技术.NB-IO ...

  5. 什么是云平台,云平台的分类和优势有哪些?

    云平台又称云计算平台,就是一个云上的平台, 为用户提供各种各样的远程服务.通俗理解云指的是远程计算机,计算指指计算机的交付.使用与服务,将云和计算组合在一起就形成了一个平台,云平台提供计算.网络和存储 ...

  6. 智能工厂元宇宙 工业互联网云平台的架构与功能解析

    随着工业领域的数字化转型和物联网技术的发展,工业互联网云平台作为实现智能制造和工业自动化的关键技术之一,引起了广泛关注.工业互联网云平台通过将传感器数据.设备状态和生产信息等连接到云端,实现数据的采集 ...

  7. 国内目前有哪些可用的云平台?

    经历过前几年国家的大力推广和云服务商的不断努力,云服务器正成为个人或者企业选择服务器的不二选择,那么哪家的服务器稳定.服务好.性价比高呢? 本人大学计算机专业,毕业后也支持从事计算机相关专业的工作,对 ...

  8. 美格智能高算力智能模组SNM951——游戏“上云”,一秒即应

    算力是数字经济发展的基础设施和核心发展要素,也是全球竞争的焦点.为此,国家为推动经济高质量发展,全面部署了"东数西算"工程,着力打造全国算力一张网,为我国数字经济发展提供新优势. ...

  9. 开源自研新基建,内核实践云数据,当此方为嘉年华 - 2020嘉年华大会侧记

    墨墨导读:当时代开始召唤,当号角已然吹响,当变革迫在眉睫,当英雄辈出登场,如此方为嘉年华,不负韶华我辈往! 两天精彩的 2020数据库技术嘉年华 已然胜利闭幕,然而回想起争鸣的技术,激昂的产品,心潮依 ...

最新文章

  1. 为什么要用hadoop
  2. 【NLP】如何清理文本数据?
  3. android进程间对象传递,Android Fragment 间对象传递
  4. 状态栏编程(显示系统时间和进度条)
  5. JavaScript玩转机器学习:张量(Tensors) 和 操作(operations)
  6. 判断一棵树是否是一颗完全二叉树☆
  7. 图文详解什么是OAuth2
  8. STL 中的容器们 (二)
  9. html5导出错误,JavaScript:toDataUrl()抛出“安全错误:可能无法导出受污染的画布”. - 程序园...
  10. (转)他们才是全球高频交易顶级玩家
  11. 阿里张勇《人民日报》刊发署名文章:抓住数字新基建的机遇
  12. 正在学习的比较详细的机器学习教程(不断更新)
  13. python批量修改文件后缀名
  14. 计算机应用基础windows10 +office2016题库及答案
  15. 谨以此篇献给即将奔三十的人们
  16. idea为web项目添加tomcat并配置Artifacts
  17. Mysql常见面试题(陆续更新中)...
  18. MATLAB SCI论文绘图及绘图窗口大小设置
  19. WPF免费视频教程,来自Lynda.com
  20. 第11课:生活中的组合模式——自己组装电脑

热门文章

  1. CSS——定位、层级与透明效果
  2. python 股票回测书籍推荐_python实现马丁策略回测3000只股票
  3. Python str split方法
  4. jspdf与zip.js结合。解决转pdf文件清晰度与文件过大的问题
  5. Word | 日文文段注音方法 Win Mac
  6. 计算方法之非线性方程组求解
  7. AndroidStudio4.1 不报错,不爆红
  8. linux下修改ext3硬盘为nst,Linux系统备份与恢复
  9. 小i机器人软件工程师揭秘机器人的“脑细胞”NLU
  10. Qt:在QML中自定义贝塞尔动画曲线