老王 发布的文章

云原生是什么?

技术圈总是在不停地蹦各种新名词。也不知道从什么时候开始,人们慢慢不怎么提“云计算”这个名词了,而是频繁提到一个新名词“云原生”,好像不这么提就不足以体现云计算原住民的身份。不过,要真的问什么是“云原生”,其实很多人都说不太清楚。随着云原生生态如火如荼的发展,甚至连 CNCF 官方都觉得有必要专门做个定义出来:

前一段时间,我在云栖大会上见到了阿里云的李响,就有人问他,“怎么理解‘云原生’?”作为 CNCF 的技术监督委员会成员的李响,以他的角度对此作了阐释:

“我觉得云原生本身实际上就是比较泛的概念,它最终的目标就是利用云上的资源、云上的服务来重构软件开发以及运行时的生命周期。简而言之就是怎么更好利用云。……随着云的发展,云原生本身也会有一些变化,大家接受云原生的理念和实现云原生的情况也会有变化。……我觉得不用太把云原生本身在一个框框里圈定,它更多还是一个核心的概念——更好地利用云释放云的红利,产生相关的技术让大家去实践。”

在我看来,虽然现在云原生的概念的内涵和外延都在不断的变化当中,但是不可否认的是,云计算生态已经从最初的巨石应用、刚性的分布式计算逐渐演变到原生地基于云计算环境进行设计、开发、部署、运维和弹性伸缩。可以说,云原生重新定义了云计算。

借助于云原生技术,一个计算系统可以很便捷的从一个环境中迁移至另外一个环境当中,而这在之前几年,几乎还是不可想象的。就这个场景,阿里云举了一个例子:比如像三维家,他们在上海云栖大会上宣布了全站上云的消息,因为他们已经应用了云原生的方式,仅花了三天把全部业务迁到阿里云上。而在迁移之后,三维家现在可以利用云原生的方式可以充分发挥云计算的弹性,三分钟之内就可以创建 100 个神龙节点去应对突发的业务需求,极大提升企业 IT 的灵活性,并且降低了 IT 成本。三维家表示,“阿里云的容器生态系统打造得非常完善,从监控、日志、服务暴露、应用拓扑、伸缩扩容方面能够做的更加灵活;基础设施的建设和维护稳定性交给阿里云,目前没有出现过问题。”

云原生进化

今年我参加云栖大会,有一个明显的感受就是,阿里云在不断的大声谈论云原生。事实上阿里云早已是云原生计算基金会的成员(现在是白金成员),也在这个领域耕耘良久,但是今年,无论是多到你参加不过来的各种主题演讲,还是各种产品和服务的消息,都在不断的讲,云原生、云原生……

在过去大家更多是把互联网和移动互联网的应用,大部分是无状态应用部署在容器平台之上,今年越来越多的企业开始把有状态的应用、交易类的应用以原生化的方式进行交付,进行自动化的运维。

这次云栖大会上阿里云还发布了 ACK 2.0。ACK 是阿里云容器服务 Kubernetes 版,它提供了高性能可伸缩的容器应用管理能力,支持企业级 Kubernetes 容器化应用的全生命周期管理,简化了集群的搭建和扩容等工作,整合了阿里云虚拟化、存储、网络和安全能力,以打造云端最佳的 Kubernetes 容器化应用运行环境。

关于阿里云容器服务,阿里云的易立说,从 2015 年底公测、2016 年中正式上线到现在的 4 年时间发展非常快,现在已经覆盖了阿里云全球 20 个地域,支撑了国内外数千家客户的生态系统。同时容器产品在持续保持增长,过去 3 年都能保持 400% 以上的增长速度,现在一个月下载次数超过 3 亿次。今年在 Forrester 全球公共云容器平台的评测里面,阿里云是国内排名第一,在 Gartner 报告也唯一入选公共云容器平台竞争格局。

阿里云容器服务优化整合了阿里云整体的计算、存储、网络、安全等核心能力。

比如说计算,不但能够支持强大虚拟机,像神龙这样的裸金属服务,还有异构计算的 CPU、GPU,未来也会包括云栖大会当天发布的含光芯片,通过容器的高效调度能够让 GPU 的利用率提升了 5 倍,而且容器产品能充分把计算资源弹性发挥出来,可以实现分钟级千节点的弹性伸缩,这对客户来说是非常重要的。

而在容器网络方面,它和阿里云的虚拟化网络进行了优化集成,可以实现原生网络一样的性能,与社区的 VXLAN 实现相比提升了 20% 性能。

在存储方面支持阿里云所有的存储产品,包括块存储、网络存储、对象存储等。针对容器场景进行了很多创新,比如说容器高密度部署时容器之间会对 I/O 进行争抢,通过跟操作系统团队进行深入合作,实现了更好的存储 I/O 隔离。另外,还实现了透明、高效的存储缓存,可以低成本支持像高性能计算和AI场景下大数据吞吐量的需求。

本次云栖大会上阿里云发布的 ACK 2.0 面向云原生进化,最重要的是它为整个企业上云奠定了一个新的基石。首先是容器服务全球化的部署,利用在阿里巴巴集团的大规模生产实践沉淀,建立了这样的基础设施。其次,云边端一体化可以实现边缘节点极大降低访问的延迟降低 75%。第三,可以让客户把他的私有云和云端利用 Kubernetes 进行统一管理,应用发布效率可以提升三倍,另外,还提供了全链路的安全架构,对安全风险进行监控。

对于云原生的发展,作为阿里云内部基础设施负责人的李响,在帮助阿里经济体以更为云原生的方式上云,在推动阿里经济体采用 Kubernetes、Service Mesh、Serverless 这些技术。他谈到:

“阿里和蚂蚁有着最大的 Kubernetes 集群,我们对 Kubernetes 上游拓展性、功能性是最大的贡献者之一,我们今年尝试落地Service Mesh,之前大家对 Service Mesh 的疑问是,它能不能应对一个复杂的场景,尤其和传统的微服务体系对接的场景。在阿里巴巴内部要验证这件事情,我们要告诉大家可以做到,而且我们要告诉大家怎么做到,后续会提供解决方案让大家去做这件事情。

第二,大家会思考 Service Mesh 的规模性是不是足够,阿里巴巴其实有巨大规模性的挑战,我们也会解决 Service Mesh 规模性的问题。我们认为阿里巴巴能够使用 Service Mesh,我想世界上 99% 的公司都可以使用 Service Mesh, 而不会遇到它的规模性问题。

第三,Service Mesh 是不是会影响核心链路上的性能问题,会不会影响在核心时刻的性能。我们也会在双 11 这种洪峰流量,对流量要求极高的情况下去验证 Service Mesh,使用 Service Mesh,去打磨 Service Mesh,所有打磨的东西会反馈到上流,让用户、开发者享受到这种红利。

第四,阿里巴巴通过这些事情培养出一批靠谱的工程师,我们有非常强的兜底能力,当用户遇到任何问题,阿里巴巴都能帮你解决问题,阿里巴巴真的是运营这套体系的,有这个生产实践的经验。

阿里巴巴真正把‘云原生’新的概念,在我们认为正确的方向进行落地、进行打磨,最后交付给客户。所有这些东西,当我们说阿里巴巴云上有这样的产品,一定是可靠的,一定是稳定的。”

容器安全是重点

当然我们也看到企业客户在使用云原生技术过程中面对几个挑战,第一个挑战就是安全。

安全是企业上云的首要关注。云原生加剧了这个挑战,云原生平台高密度、高动态部署使得遭受攻击可能性增加,而且一旦遭受攻击,用户不知道是谁受到攻击,也没有办法实时应对。

安全是体系性的东西,永远在最弱的一环去攻破整个企业的安全体系。阿里云容器服务实现了非常全面的端到端的云原生安全的架构,包括基础设施的安全,跟阿里云的云安全基础设施紧密基础,利用 RAM 进行认证、鉴权和审计,支持存储的 BYOK 加密等,提供了一个安全的云基础设施。

同时,在应用的生命周期里面用了安全的镜像检测,上线之前要进行扫描,上线之后会进行实时的安全检测。还有运行时的安全,因为安全的风险无处不在,一旦出现了安全问题必须第一时间对它进行监控、报警。

对于企业来讲,大量采用容器之后面临的挑战之一就是安全隔离。比如说一台机器上要混布多种类型的应用,但是有些像金融交易的应用,安全级别敏感性会很高,不希望受到其他应用的攻击和干扰。另外企业除了自己的应用还要部署第三方应用,这个过程中对一些不可信的应用要进行安全的隔离,阿里云引入了安全沙箱一系列的技术。传统的容器 RunC 用是共享内核的机制,很高效,但是安全隔离做得不好,现在可以利用安全沙箱可以进行安全隔离。

在这方面阿里云有一些差异化的优势:首先就是对它进行大量的性能优化,比如说它的网络跟原生的进程没有任何区别,网络性能非常好。整体能够达到 90% 的原生性能,对用户来讲可以获得非常好的安全性,同时对性能损耗是可以接受的。另外,能够让用户自主选择是 RunC 还是安全沙箱,两种容器运行时用户体验是完全一致的,用户可以根据自己对业务需求来选择合适的容器应用技术。

在安全容器领域有几个重要的项目,如 Google 的 gVisor,以及已经属于蚂蚁金服旗下的 Kata 容器项目等,不过和易立的沟通当中,我了解到阿里云容器服务的安全容器所采用的技术并非照搬 Kata 容器技术,而是集成了目前主流的安全容器项目,加以自身的创新而成的。阿里经济体实际上在容器安全方面投入非常大,包括 Kata,还有其他几种技术。他们与蚂蚁金服、阿里的操作系统团队合作一起来提供这样商业化安全容器的实现。这次发布的安全沙箱容器底层技术针对阿里云进行了大量优化,跟 Kata 技术有些类似,但是里面有很多部分不同,性能也做了大量的优化。

现在提供的是基于虚拟化隔离的安全技术,后续会陆续提供其他的技术能力,它们的隔离级别和适用场景是不同的,用户只要去选择就好了,在保证用户体验是一致的基础上,对用户是透明的。

结语

我们看到,阿里云正在云原生的路上狂奔,将各个产品、服务都押宝在元原生的领域上。最后,让我们用李响的一段话来结束这篇文章:“新兴的应用,或者是新兴的领域,我们建议你使用容器轻量级自动化平台,现在我们阿里云、ACK 都是朝着这种模式跟大家宣导的。我们要去帮助开发者,引导开发者从非原生的体系向云原生体系去转移,我觉得这条道路非常重要,这也是阿里云的责任,带动整个国内的基础设施,带动国内云原生体系发展,我们要去承担这件事情。”

自从 10 天前,我们发起了徽标征集活动,得到了大家的踊跃支持。虽然有相当多朋友表示原来的徽标就挺好,是的修改下就可以,但是也有很多朋友给我们提交了新的徽标设计及其设计理念。以下,我将这些设计展示给大家,大家可以发表意见。当然,也欢迎更多朋友来提交你们的徽标设计。

当前已经收到的徽标设计

以下是我们当前收到的设计展示及设计理念,我们共收到了 9 位贡献者提交的 12 份设计。以下按名字排序列出:

1466587594

地址:https://github.com/LCTT/logo/tree/master/1466587594

设计者:1466587594

设计理念:

  • 徽标呈箭头状,代表回车键
  • 蓝绿配色,完全照搬样例,外加了一个两者的混合色
  • 主体是稍带圆角又显锐利的字母 L 与 C 的结合,要说带有一些含义的话不免有些强行了

alim0x

地址:https://github.com/LCTT/logo/tree/master/alim0x

设计者:alim0x

设计理念:

  • 扁平化图标,符合当下趋势
  • 主体风格延续原有徽标,减轻徽标更换对受众印象认知的影响
  • 中间为原徽标风格的 “L”,小圆点增加徽标活泼感
  • 外圈为 “C” 抽象而来,代表 “CN”、“Community”
  • 配色上绿色作为主题色,同时中环使用浅绿色作为过渡,使徽标更清新且饱满

flag-1

地址:https://github.com/LCTT/logo/tree/master/flag-1

设计者:ullpdq

设计理念:

  • 一直觉得国旗设计得很美

flag-2

地址:https://github.com/LCTT/logo/tree/master/flag-2

设计者:ullpdq

设计理念:

  • 国旗方案的变种

logo0281

地址:https://github.com/LCTT/logo/tree/master/logo0281

设计者:liujiacode

设计理念:

  • 该徽标保留了旧徽标的配色 (绿, 白, 灰) 和一些元素 (如中间的 "L"). 在旧徽标的基础上, 本徽标更强调社区与社区成员之间的联系. Linux 社区如同一张复杂而有序的网络, 紧紧地将成员联系在一起.
  • 徽标背景由深灰色方块和浅灰色中国版图构成, 表示 Linux.CN 主要是面向全国的 Linux 技术社区.
  • 图中四个角落分别有朝向不同方向的 "C" ("C" 代表 "Community"), 表示参与到社区中的开源爱好者们专业技能不同, 目标也不同.
  • 图正中有一个 "L" ("L" 代表 "Linux", 是旧徽标中的关键元素之一), 代表 Linux 社区.
  • 四个 "C" 的开口方向都朝向中间的 "L" , 表示开源爱好者们相互交流与合作, 共同构建起整个社区. "C" 与 "L" 通过一张复杂而又有序的网络连接在一起, 表示开源爱好者们之间并不是相互孤立的, 而是通过社区网络稳定而有序地结合在一起.
  • "C" 也可以代表 "Component", 表示 Linux 系统是由多个组件构成的. 这些组件之间并不是相互孤立的, 这些组件的协同作用使得 Linux 能够正常运行.
  • 图案下方写有社区名称, 即 "Linux.CN".

logo0964

地址:https://github.com/LCTT/logo/tree/master/logo0964

设计者:liujiacode

设计理念:

  • 徽标背景由深灰色方块和浅灰色中国版图构成, 表示 Linux.CN 主要是面向全国的 Linux 技术社区.
  • 图中绿色方框代表 Linux 终端, 终端内有命令提示符 "LC:~$\_". 其中 "LC" 是 "Linux.CN" 的缩写.
  • 绿色方框叠加在一起, 表示使用 Linux 的开源爱好者们相互交流与合作, 共同构建起整个社区.
  • 图案下方写有社区名称, 即 "Linux.CN".

long

地址:https://github.com/LCTT/logo/tree/master/long

设计者:lujun9972

设计理念:

  • 巨龙,毛笔,石砚,玉佩,筷子.尽显中国气息.

备注:此设计稿规格不符合要求(500x500 的正方形)。

RedInLinux

地址:https://github.com/LCTT/logo/tree/master/RedInLinux

设计者:Marksteinsong

设计理念:

  • 为表示对“Linux中国的支持”,特地来凑个数。

备注:此设计稿规格不符合要求(500x500 的正方形)。

tinnx

地址:https://github.com/LCTT/logo/tree/master/tinnx

设计者:AntonVanke

设计理念:

  • 主体是LC
  • 下面一行Linux.cn

WSJ

地址:https://github.com/LCTT/logo/tree/master/WSJ

设计者:wangshijun-shexian

设计理念:

  • 尽量保留原logo元素,以维持用户记忆,减少突兀感;
  • 保留的元素有①灰黑色背景色调②大写字母L③网址④整体造型;
  • 改变的元素有①底部绿色改成更新的苹果绿②绿色范围减小,去掉网址,可与圆形内接等边三角形贴合,增加图形稳定性,给放大主logo元素让出空间③大写字母L放大,去掉隔断,填充网址④L东侧是大写字母C,颜色与底部颜色相同,可以凸显原logo架构,主体形状与L相似,东北部加等腰直角三角形,与L共同组成正方形,该正方形可联想成向东怒吼的雄狮侧面部,寓意Linux中国在中国大地孔武有力,大有作为;
  • 新logo可方可圆,黑白阴阳稿也一样简洁醒目,可用于各类应用场合。

wxy

地址:https://github.com/LCTT/logo/tree/master/wxy

设计者:wxy

设计理念:

  • 本徽标的灵感来自于俄罗斯方块游戏。
  • 配色的蓝绿:绿色一直是我们主题色,蓝色比较搭配,当然要是给它赋予专业、自由的寓意也无不可。
  • 主体是一个 4x4 的离散格子,其中由两个字母组成,分别“L”和“c”,这是我们的简写。

yue-1

地址:https://github.com/LCTT/logo/tree/master/yue-1

设计者:ullpdq

设计理念:

  • 这个方案是钺,配色什么的就随意了,回头可以再调整

徽标征集活动

活动目标:为 Linux 中国设计制作一个新的徽标

活动时间:2019 年 9 月 20 日 — 2019 年 10 月 31 日

时间节点:

  • 2019 年 9 月 20 日 — 2019 年 10 月 20 日:徽标征集及点评
  • 2019 年 9 月 21 日 — 2019 年 10 月 30 日:官方评选
  • 2019 年 10 月 31 日 评选结果发布

参与方式:本活动完全在 GitHub 上进行,因此投稿、点评、建议都采用 GitHub 相应机制来完成。

仓库地址: https://github.com/LCTT/logo

  • 投稿:通过 GitHub 的 PR 提交你的徽标设计展示图和设计说明。格式要求:

    • 每个投稿一个自行命名的文件夹,不当命名我们会予以修改。文件夹内包括:
    • 名为 logo.png 的 png 格式的徽标,尺寸为 500px X 500px,评选阶段无需投递原稿
    • 一个名为 README.md 的说明文件,说明创意构思
  • 点评:对提交徽标的 PR 发表评论
  • 建议:通过 GitHub 的 议题 issue 发起

最后,既然是征集评选活动,那就该有奖品:

  • 一等奖(获选)一名,奖金 3000 元
  • 二等奖两名,各奖 500 元
  • 三等奖五名,各奖 100 元

此外,一等奖作品的作者需同样将该的完整版权授予 Linux 中国,但作品作者的相关信息会在 Linux 中国官方予以记录和致谢。

作为一个曾经亲自扛着 2U 服务器进长安街长话机房的系统工程师,我对服务器的感情是深厚的,当抚摸着冰冷的裸金属,感受着机房内嗡嗡的背景噪音时,似乎能感觉到数据的流动。因此,当得知我的采访对象是国内第一个服务器硬件开源项目的总架构师陈国峰先生时,我还是有点小激动的。

国峰是一个十分低调的人,现任京东云硬件研发总监,他曾在百度工作,负责过百度硬件架构设计的相关工作,如百度的“北极”整机柜服务器、百度网盘用的冰山服务器、百度 AI 所使用的 X-MAN 异构计算服务器等就是其带领团队研发的成果,他也曾任开放数据中心委员会“天蝎”项目的总架构设计师。这十来年的硬件设计经历,让这个行业“老兵”对于互联网的基础设施——服务器,有着独到的见解。

京东云硬件研发总监 陈国峰

演进:从复杂到简单的服务器

我最早接触过的服务器是 Sun 微系统的 Sparc 小型服务器,并没有见识过最早的 大型机 MainFrame 。随着互联网的发展,作为互联网迅猛发展的重要基础设施,服务器的形态也逐渐演变,从塔式服务器、刀片式服务器,再到机架式服务器,我们可以看到服务器的发展从高成本向低成本演进,由复杂变简单,由高技术壁垒向无技术壁垒演进。

就好比手机的演进过程,从一开始使用模拟网的大哥大,到后来使用数字网的手机(现在我们称之为功能机),再到现在的智能机,可以看到,手机的技术在急速进步,技术壁垒在迅速降低,生产成本也以不可思议的速度降低。而在服务器硬件方面,我们同样发现,现在的机架式服务器与原来的大型机相比,亦是如此。

从另外一个角度来看,随着市场需求的不断加大,我们对于服务器硬件的看法也逐渐发生了变化。从过去每个互联网公司最重要的硬件资产就是昂贵的服务器,到如今服务器已经成为了基本的生产资料一样普遍和随处可见。

以前对大机和小机追求的高可靠性、高稳定性,以及由此产生的高成本,随着云计算技术的普及,对单个服务器基础设施的稳定性和可靠性也在降低。互联网应用系统可以通过软件、集群的方式,来提升可靠性和稳定性,通过软件上的容忍度,对集群的容忍度会变高,通过这些上层的手段来避免对于底层基础设施的过度追求。相应的,随着对于基础设施的要求的不断降低,硬件设计的成本自然而然的也就降了下来。

变化:源自真实场景的需求

京东云的下一代服务器也并非完全凭空诞生,而是源自于实际需求的变化。

在过去,使用机架式服务器依然有大量的工作需要在机房内由人工完成,比如一个月可以在一个机房内交付 1 万台机器,一年 10 万台左右的规模。在过去的产业模式下,这种机制尚可持续,但如今的 HyperScale 模式下,这样的交付效率显然无法满足业务对于大规模数据中心的部署要求。

另外,随着云计算的兴起,云的场景也开始多元化,传统的公有云开始衍生出混合云、私有云……这样就会诞生另外一个场景,私有化的部署,包括边缘部署。这种部署是很分散的,不是集中式的。对于这种分散式的部署,我们更需要的是一体化集成的整机柜服务器,避免把很多部署的技术资源分散到各个地域和零散的点上面去。然而云用户,特别是私有云和混合云用户对硬件的稳定和配合功能往往也会有不同的诉求,这给传统的整机柜服务器提出了新的挑战。

为此,国峰带领他的团队,设计出了京东云下一代服务器。

在他看来,下一代服务器必须具备以下几个特性:

  1. 高稳定性。在过去私有云的时代,总拥有成本(TCO)是服务器定制的核心诉求,而在云的时代,为用户提供高可靠的基础设施是京东云的基本服务宗旨,所以,我们把高稳定性放在第一位,而不再是简单的将成本放在第一位。
  2. 高灵活性。公有云就意味着你的客户也是千人千面,不同于传统自用私有云,公有云客户需求的多元化是不可避免的,因此,基础服务就必须有足够的灵活性,以适配这种来自需求的灵活性。这也是为什么京东云下一代服务器要采用模块化设计的概念。
  3. 高效率。对于当前复杂的云市场,公有云,私有云,混合云多种场景并存的市场下,提供一体化交付,并且快速响应客户的资源需求也是产品竞争力的一项重要指标;高效另外一个层面的含义是高能效,能效是数据中心技术中的又一项重要指标,直接影响基础设施的运营成本;因此高效率也成为硬件基础设施的重要特性。
  4. 低成本。任何产品都避不开成本,成本是产品市场的核心因素,影响到产品的核心竞争力,但是,在云的场景下成本管控应当是在为客户提供了高稳定性、高灵活性、高效率之后考虑的事情。

HaaS :Hardware as a Service

和我们所熟知的裸金属、异构计算不同,京东云下一代服务器是比裸金属和异构计算更底层的基础设施服务。确切地说,不管是裸金属还是异构计算,包括上层的 IaaS、PaaS、SaaS 等服务都可以在京东云下一代服务器上呈现。

京东云将会围绕着下一代服务器打造公有云、私有云、混合云、全方位的云产品。一方面,这些底层的硬件服务会服务于京东集团内部的自用私有云,同时也会服务于集团的公有云业务。另一方面,针对私有云和混合云,也可以对外提供私有化交付。如果客户有需求,京东云可以将这些定制的硬件结合京东云的 Iaas、Paas、SaaS 相关技术和产品做成整体解决方案,交付给客户。针对不同的客户需求,京东云可以围绕定制化服务器硬件和MDC(整合IT,供电,制冷一体方案)提供租、售产品服务。这就是我们所谓的 HaaS 的理念和概念。

挑战:技术的进步

当然,下一代服务器并非一蹴而就,所面临的挑战主要分为三个方面:

第一、设计理念——高灵活性,因为用户的需求不可预测,用户场景复杂,租用机房较多,每个机房基础设施条件不一样,同时业务类型复杂,资源调配迁移需求比较多,而目前主流的整机柜与通用机相比,无论从 21 英寸的尺寸还是集中的散热方式都有很大的差异,造成了整机柜部署的局限性,很难实现灵活迁移,混合部署。京东云的下一代服务器通过“标准化,模块化,弹性化”,极大地提高了多场景支撑的灵活性。首先我们采用 42U 19 英寸标准机柜为设计单位,节点独立散热,通用性强,实现了整机柜和标准机架服务器任意切换。其次,节点前 IO 设计,机柜后部无任何线缆,所有运维工作均可在冷通道进行,单边维护效率更高,环境更友好。同时通过模块化设计,可实现前后 IO 灵活切换,集中供电和单机供电模式灵活切换。

第二、也是这个行业面临的通用性技术挑战——高功率密度问题。因为现在芯片行业已经进入到后摩尔定律时代了,意味着计算力的提升也会带来功耗的不断提升。功耗的上升,对于系统散热设计的挑战就会越来越大,风冷已经不足以满足目前的制冷需求,甚至散热某种程度上已经制约了服务器和数据中心的发展。所以,在新的架构设计上,我们会通过一些新的散热手段,比如通过风液混合散热的方式解决功率密度的问题。

第三,功率密度提高之后,风扇转速就会更高。同时由于硬盘的存储密度不断上升,对于外部环境的振动、噪声的敏感度就越来越高。所以我们在设计上对于硬盘和风扇振动需要考虑得更多,我们采用了“硬盘前置,风扇后置”的系统架构,最大程度的拉开风扇和硬盘之间的距离,有效的降低了震动对硬盘的影响。

开源:硬件开源任重道远

软件是开源领域的主力,虽然已经有一些开源硬件的出现,但是,仍然算不上主流,绝大多数团队在硬件方面依然采用传统的闭源方式。

在这个方面,我专门请教了国峰。在他看来,首先,必须承认硬件开源的发展远不如软件开源。硬件开源是最近几年兴起的,国际上比较知名的组织就是 OCP(Open Compute Project),以及国内比较知名的 ODCC ,其前身是 BAT 三家发起的天蝎项目。

他认为,之所以过去大家不做硬件开源,主要是两个原因:

一方面,原来硬件的技术壁垒相对较高,大家希望通过这些技术壁垒来创造价值,来实现商业变现,所以,之前市场上一直没有硬件开源的社区和项目。

另一方面,硬件跟软件有一个很大的不同点,软件的代码一旦写好,在机器上直接运行就能知道是否可以工作,硬件不一样,要验证一个硬件系统的设计,首先要从原理图上设计出来,然后在工厂生产出来,最后进行验证。它的周期长,同时需要大量实物的投入,投入成本相对比较大。此外,还需要有很多专业设备做测试,调试,所以,它的验证成本也非常高。这也是为什么硬件开源难以发展起来的原因。

但是,随着时代的变化,市场的不断变大,技术的开放力度也在不断的增强,技术壁垒也相应在不断降低,成本也越来越低。众人拾柴火焰高,一个新的硬件出来之后有更多的人参与进来,它的上下游的生态就会建得更快一点,普及周期就会变得更短。

这也是为什么京东云下一代服务器要做硬件开源的原因,我们希望建立和维护这样的生态,把大家拉到一起共同推动新生态的演进。

当然,开源也并非易事,要开源首先必须得做好充分的准备来接受市场以及行业专业人士的检验。目前京东云正在为下一代服务器的开源做准备。接下来,京东云也会围绕其新的硬件设计建立一些开源的渠道,比如 OCP、ODCC 等。

京东云希望通过硬件开源,让行业里面更多相关经验的从业者参与到下一代服务器的硬件设计中来,共同围绕新的服务器架构营造一个合作共赢的生态。

几年前,当我和 DeadFire 想拿手里的域名 linux.cn 建立一个 Linux 方面的社区时,我们在想该叫个什么名字。讨论之下,就不揣浅陋叫了 “Linux 中国”这个名称,那个时候其实也没多想到会做多久、多大,却不料一直做了这么多年,仅仅是从 LCTT 算起,也有 6 年了。

有了网站(论坛),那就得有个徽标(Logo)啊。作为非艺术战线的工科男,我觉得简洁就好,于是就采用了“L”作为基本创意,请朋友(兴航)帮忙设计制作了徽标。后来虽然有过一些小的演变,不过基本上没有大的变化。

这是我们当前的徽标:

由于我的画蛇添足,这个徽标上加了很多自以为得意的小零件,但是在很多场合看起来并不清晰和大方,比如说,经常有合作伙伴和我要徽标放到展板和印刷品上去,其实往往显得比较另类——倒是比较好找到。

所以,换个徽标的想法我也是由来已久。于是,就有了这个新的徽标——不瞒你说,完全是我自己制作出来的(言外之意,专业性方面肯定不够了)。

这个徽标背后的思路是这样的:

  • 灵感来自于俄罗斯方块游戏
  • 配色的蓝绿:绿色一直是我们主题色,蓝色比较搭配,当然要是给它赋予专业、自由的寓意也无不可
  • 主体是一个 4x4 的离散格子,其中由两个字母组成,分别“L”和“c”,这是我们的简写
  • 更多的寓意——那就是在胡扯了

所以,大家觉得怎么样?欢迎给出意见和建议。

当然,这是我们抛出的砖头,也欢迎大家投稿——要不,我们做一次徽标征集活动?

徽标征集活动

活动目标:为 Linux 中国设计制作一个新的徽标

活动时间:2019 年 9 月 20 日 — 2019 年 10 月 31 日

时间节点:

  • 2019 年 9 月 20 日 — 2019 年 10 月 20 日:徽标征集及点评
  • 2019 年 9 月 21 日 — 2019 年 10 月 30 日:官方评选
  • 2019 年 10 月 31 日 评选结果发布

参与方式:本活动完全在 GitHub 上进行,因此投稿、点评、建议都采用 GitHub 相应机制来完成。

仓库地址: https://github.com/LCTT/logo

  • 投稿:通过 GitHub 的 PR 提交你的徽标设计展示图和设计说明。格式要求:

    • 每个投稿一个自行命名的文件夹,不当命名我们会予以修改。文件夹内包括:
    • 名为 logo.png 的 png 格式的徽标,尺寸为 500px X 500px,评选阶段无需投递原稿
    • 一个名为 README.md 的说明文件,说明创意构思
  • 点评:对提交徽标的 PR 发表评论
  • 建议:通过 GitHub 的 议题 issue 发起

最后,既然是征集评选活动,那就该有奖品:

  • 一等奖(获选)一名,奖金 3000 元
  • 二等奖两名,各奖 500 元
  • 三等奖五名,各奖 100 元

此外,一等奖作品的作者需同样将该的完整版权授予 Linux 中国,但作品作者的相关信息会在 Linux 中国官方予以记录和致谢。

今天的消息,又挣扎了两年的《Linux Journal》,宣布倒闭了。他们宣布

2019 年 8 月 7 日,Linux Journal 关闭了大门。所有员工都被解雇了,公司没有任何经营资金可以继续以任何身份持续下去了。这个网站在接下来的几个星期内将继续维持,如果可以的话,希望可以保持更长时间的存档。

—— Linux Journal,LLC

这不是 Linux Journal 第一次发出悲呼。在一年半前,他们就宣布了停刊,但幸而在宣布停刊之后得到了社区的援手,得以复活,又持续了一年多。他们甚至对新的希望报以了很大的信心,在他们庆祝 25 周年的时候,还写了一篇文章来分析发生了什么,以及将来的想法。而且,确实,他们也在努力做出了新的改变。

但是,不管什么原因吧,这份创刊于 1994 的 Linux 杂志,在放弃了纸质杂志、电子杂志之后,可能要变成一个历史遗迹了。他们在网站上,用一张血红的纸张上扯破露出“TIME TO SAY GOODBYE”表达了对这份持续了 25 年的努力的不甘和哀伤——我是真能感受到这背后的哀伤。

说起来,Linux Journal 真是一个非常有价值的杂志/门户/社区,与之相比,我们的 Linux 中国社区就逊色多了,但是正是同一时刻,我也面临了 Linux 中国是否能继续下去的一些风刀雪箭,莫非天意?

说起来,Linux 中国也持续性的走了至少 6 年了 —— 如果从 2013 年 9 月 10 日 LCTT 成立算起的话。刚刚我在朋友圈发了一条消息,询问大家觉得 Linux 中国有无商业价值,不敢太严肃的问,怕引来各种联想。当然,有很多开玩笑的回答,也有一些感性的估计,也有一些用心的感激。其实,何必问呢,答案我心里有啊。

或许,Linux 中国有一些社会价值,也许帮到过许多人,也有很多人在这里付出了很多、很多的努力,但是,我们这 6 年没有尺寸进益,这说明了什么,我们究竟有没有商业价值?

很多人都知道,我一直坚持 Linux 中国的公益性、非商业性,也主张 Linux 中国是大家的,而不是我的或谁的。可是如果连起码的商业平衡也不能积累,是不是从一开始就是一个乌托邦式的空中楼阁?

Linux Journal 就倒在我的身侧,我遥望远方……

老王写于昆明,2019/8/8

从炎热的夏日中走入到钱塘江畔清凉的网易云会客室,我见到了陈谔,开始这次“轻舟”之行。

说实话,初次近距离见到陈谔时,心中有点愕然,作为网易杭研的元老之一、网易云基础服务的领头人,我竟然从他身上感到一点点腼腆和技术人员的质朴。联想到之前网易云这边作为背景信息给出的个人介绍,这样的一位领军人物,居然自谦自己“对分布式系统设计开发、云计算平台系统架构有一定的经验和理解”,我不禁有些恍然。

我接触和采访过很多开源和互联网公司的技术领袖,陈谔应该是我见过的最温和而又不失自信的人之一,他的脸上总是浮现着内敛的笑容,让我们在谈话的一开始,就有了一个良好的氛围。

受访者(左):网易云陈谔,采访者(右):老王

网易云:千锤百炼终成型

和很多互联网公司推出的云服务一样,网易云也是一个脱胎于内部实践的云服务。网易杭州研究院作为整个网易公司的技术攻坚力量和创新业务孵化团队,随着网易业务和规模的不断的变化,杭州研究院面临着非常大的压力去做好基础设施的相关工作。

随着移动互联网的到来,原本可以很好应对博客、游戏等业务的 IT 基础设施逐渐变得捉襟见肘,原本的资源调度能力无法处理好随着新业务和新模式的快速增长和迭代而产生的需求和复杂度。IT 基础设施成为了当时网易发展业务的新瓶颈。

为了能够更好的服务网易内部的业务, 2012 年,网易杭州研究院组建了专门的云平台产品部,来建设网易内部使用的云计算平台,以应对移动互联网到来而产生的更加复杂应用带来的基础设施需求。

随着网易云产品对内提供服务,规模上的问题被逐渐解决,但是,产品的研发模式也在不断的迭代,网易内部开始不断地实践微服务架构。在这个过程中,陈谔感觉到,现有的 IaaS 产品和 PaaS 产品已经渐渐无法支撑来自微服务架构的复杂度,但在那时,云原生理念和技术尚未成熟的时代,对于微服务的探索只能独立践行。网易云针对性的提供了 CI/CD、分布式架构链路跟踪、服务治理的工具,帮助用户更好的去实践微服务。

到了 2015 年 7 月,随着 CNCF 的成立,这时陈谔发现,网易云的很多产品和服务,和 CNCF 的理念是一致的或相似的,于是,网易云决定将自己的探索和成果更好地结合社区的发展,向社区贡献自己的努力,也吸纳来自社区的营养,将网易云的发展和开源社区的路线结合起来。

也正因为拥抱社区,网易云很早就走上了 Kubernetes + Docker 的发展路线。谈起对于 Docker 和 Kubernetes 的选择,陈谔表示,网易云选择 Docker 和 Kubernetes 并不是偶然之下的决定。

实际上,早在 Docker 出现之前,网易云已经开始使用 LXC 技术来进行更细粒度的资源分配,实现了类似的容器技术栈,在此过程中,陈谔及其团队亲历了 LXC 技术在实施的过程中各种问题和技术缺陷带来的困扰。而 Docker 的横空出世使得整个云计算领域眼前一亮。虽然网易云自建的技术栈已经可以满足当时及近期业务的需求,但作为具有技术远瞻力的技术负责人,陈谔知道,相比于得到业界普遍看好的 Docker,自研的专属技术栈的生态环境狭窄,技术人员的培养成本也居高不下。而另外一方面,Docker 的镜像机制、分层文件系统机制,也使得之前在 LXC 技术栈里面斩荆披棘的网易云似乎看到容器技术发展的堂皇大道,使用 Docker 也就变得顺理成章。因此,网易云十分自然的就完成了从 LXC 向 Docker 的转移。

我问及 Kubernetes 的选择,陈谔笑了笑,他提到,网易云对于 Kubernetes 的支持是非常早的,在早期 Kubernetes、Swarm、Mesos 尚三足鼎立的时候,网易云就坚定的投入了 Kubernetes 生态。这一点和网易云过去在微服务、容器编排方面的实践是密不可分的。Kubernetes 解决了网易云在过去运维过程中遇到的诸多问题:如何进行弹性伸缩、如何进行服务调度、如何使用配置来进行控制。Kubernetes 所提供的配置能力,特别适合于需要解决微服务架构编排问题的网易云。

对于网易云来说,他们并不是一个刻意追求新奇的团队,相比于新兴的技术,网易云更在乎什么能够解决问题。显然,对于微服务架构支持最好的 Kubernetes 成为最终之选。

企业云:只为解决客户问题

网易云和很多云计算公司不同,没有将目光全部投放在公有云上,而是专注于为企业提供业务云化的解决方案。网易云也和容器云厂商的定位不同,容器是网易云的产品,更是网易云的工具,因此网易云虽然很早就应用了 Docker、Kubernetes 等技术,但是并没有突出这些看起来非常时髦的技术名词,而是根据企业需求,更多的将这些作为服务于上层的微服务产品的基础。通过结合容器的网络方案、存储方案等云原生技术积累,网易云希望更好的服务自己的客户。

陈谔说,网易云之所以选择了企业云的路线,更多是因为网易云发现自身更适合于在云原生领域深耕细作。与其在公有云的红海中去竞争,不如在云原生领域去深入挖掘,提升技术和竞争力。这样,就将竞争从 IaaS 层面,提升到了基于云原生体系的 PaaS 层面,避开了红海的竞争。同时,这种基于 Kubernetes 标准化的 PaaS 服务,其生命力也远超普通的 IaaS 产品,Kubernetes 的设计使得它能够消除厂商锁定,基于其实现的 PaaS 服务可以运行在任何一家 Kubernetes 服务商的云产品上。

陈谔还提到,作为一个面向企业提供解决方案的服务商,网易云和其他的容器云不同的是,更多是希望去靠近企业的 IT 的技术的认知,不会给企业造成过多的认知负担和业务侵入性。在业务落地时,能够根据企业的需要来不断的完成落地,而不是从一开始就要求企业去实践容器等,造成更大的负担。如果不是企业的需求要做容器化的话,不会第一时间要求用户完成容器化的迁移。但陈谔也发现,当用户真正去实施微服务框架的时候,往往会考虑实施和部署容器化,这时,网易云早已准备好的容器平台就可以很好的完成这部分的工作。

对于不希望进行容器化的企业,陈谔提到,网易云针对于这些异构的环境,也提供了不同的解决方案,诸如支持裸金属集群和虚拟机环境的 服务网格 Service Mesh 等能力,可以帮助那些不打算做容器化的企业完成自己的工作。

网易云希望自己的产品能够基于客户的 IT 策略来考虑,而不是将网易内部的实践生搬硬套到客户的业务中去。

DevOps 认知:陈谔的 DevOps 观

在谈到网易云内部的 DevOps 实践时,陈谔提到,在网易云内部其实很早就开始进行了 DevOps 实践。从 2014 年开始,网易云内部就开始推行服务化的组织架构和协作方式。在网易云内部,所有的工作都是接口先行,在网易云看到的每一个界面,都是先有接口,后有界面的。每一个接口背后都对应着网易云的一个服务以及对应的研发团队。这样从一开始,网易云就不设立专门的应用运维团队来负责业务的发布和上线,而是由各服务团队自行完成业务的发布和上线。除了 IaaS 层面基础设施的运维有专门的 SRE 团队来负责以外,各服务的运维都由各自团队自行来负责,这使得对应的团队必须自行解决运维需求。而且,为了更好的协作,网易云内部的所有的 API ,都会放在一个统一的 API 网关中,所有的用户都可以借助 API 来完成自己想要的操作,而无需进行 Web 界面的操作。

我们还谈到了 DevOps 和容器化的关系,在过去的一段时间里,宣传上总是将二者联系起来。在陈谔看来,容器化和 DevOps 的关系实际上是相辅相成的。

在他看来,之所以 DevOps 会出现,核心是随着企业业务的不断服务化拆分、微服务架构的实施,中心化的运维成为瓶颈,这使得企业不得不去提升运维的能力,去招募更多的运维。但是基于企业成本的考虑,运维人员的数量终归是有限的,因此有一些开发人员不得不兼任运维工作。但是,开发人员在运维方面的思路、关注点、风险意识上和传统运维人员存在一定差异,基于这样的考虑,需要一批工具来辅助开发人员进行运维工作,规范开发人员可以做的事情。在这样的一个大背景下,容器技术应运而生了。他相信,即使没有 Docker 公司搞出了容器化,也会有其他的公司来做出类似的产品,不同的只不过是各家的方案的优劣罢了。

轻舟微服务:帮助企业更好落地微服务

此次会见陈谔是在网易云创峰会上,而此次大会浓墨重彩介绍的产品之一就是网易轻舟微服务。

轻舟微服务是网易云在完成了基础设施的 Docker、Kubernetes 等改造完成后,基于对业界的分析和研究后提出来的。出于标准化技术栈的考虑,网易云最终启动了轻舟微服务的项目,将现有的技术栈,打造成一个个独立的标准化技术产品。到了 2018 年,在完成了对所有技术栈的标准化以后,将轻舟微服务发布了出来。

陈谔认为,异构系统整合,包括兼容、通信和系统间事务一致性,和多供应商建设,包括多团队协作、软件资产沉淀,是目前企业在建设在线业务中台过程中遇到的最大障碍,而网易轻舟微服务新品的发布,正是要通过服务网格、分布式事务框架 GTXS、全新 API 网关与原有轻舟产品的整合,完成全栈化在线中台技术体系升级,帮助企业完成业务架构的进化,支撑业务快速创新。

网易云陈谔和老王

陈谔介绍,轻舟服务网格是基于 Istio 和 CNCF 的 Envoy 等主流开源技术构建,可以实现 Java、Python、NodeJS、Golang 和 PHP 等不同技术栈的兼容和通信,能够与网易已有微服务框架 NSF 统一管控、互相发现、互相调用,并且支持容器、虚拟机和裸机部署,将异构系统的支持实现到了业界领先的程度。

在陈谔看来,轻舟微服务的推出,是网易云内部的微服务能力的对外输出,是网易云内部技术能力的输出体系,针对企业客户,提供了一整套的技术方案,以及对应的咨询服务和最佳实践的指导,帮助先前没有足够能力独力完成微服务化的企业,完成企业产品和服务的微服务化。

很多企业的 独石应用 Monolithic applications 随着企业的发展和产品的变迁,都面临新的挑战,而微服务化改造是企业所寄予众望的一条发展路径。但或因为微服务的技术储备不足,或因为既有业务的历史包袱过重,企业自行开发微服务体系不但耗时周期过长,而且可能因经验不足而走了弯路,因此,网易云在推出了轻舟微服务以后,赢得了不少企业用户的关注。

在实际的使用过程中,轻舟的部署也帮助企业大幅度提升了新业务接入的效率和版本发布的效率。举个例子来说,如果同时有数十个微服务的不同版本在开发,在传统的模式下,就需要提供数十个测试环境来完成测试,但在轻舟下,就可以基于无侵入的流量染色功能重用一套测试环境,仅将测试流量路由至特定版本微服务,降低了环境的成本。

后记

由于我离开了中国电信好几年了,近些年我对企业级产品和服务接触并不太多。而这次的采访,使得我对于一直以来缺少了解的网易云和其产品有了更深刻的认识。显然,网易云在这场云计算大潮中,找到了企业界真正的痛点,关注到了众多企业的真实需求,这种深耕的思路,一方面让网易云支撑起来网易云音乐、网易考拉等明星产品,另外一方面也使得网易云在企业上云和 IT 现代化方面不断攻城略地,取得不菲的成果,这值得云计算领域的细分厂商学习。

“穿山甲专访”栏目是 Linux 中国社区推出的面向开源界、互联网技术圈的重要领军人物的系列采访,将为大家介绍中国开源领域中一些积极推动开源,谙熟开源思想的技术人,并辨析其思考、挖掘其动因,揭示其背后所发生的事情,为关注开源、有志于开源的企业和技术人标出一条路径。

取名为“穿山甲”寓意有二:取穿山甲挖掘、深入之意来象征技术进步和表征技术领袖的作用;穿山甲是珍稀保护动物,宣传公益。