京东云郭理靖:我对云服务的一些看法
本期人物介绍:
郭理靖,京东云产品研发部高级总监、产品委员会主席,专注于公有云服务、Docker、API 与数据开放平台、数据库服务等领域。擅长数据库、分布式存储系统、高可用服务架构等技术。
在任职期间,郭理靖研发上线了 MySQL、SQL Server、MongoDB、PostgerSQL、MariaDB、Percona、JDW(数据仓库)、DRDS(分布式数据库服务)、时序数据库、TiDB、BDS(区块链 BI 数据分析服务)等多款京东云产品 。京东云不仅是国内第一家支持 MySQL 8.0 的云厂商,也是国内第一家支持 MariaDB 的云厂商,而区块链 BI 数据分析服务也是可以代表全球区块链先进技术的创新产品,聚合了业界知名项目的核心数据,目前 BDS 已经对外开源。
前言
盛夏,在一家幽静的咖啡馆,我见到了匆匆赶来的郭理靖。我们深入谈了关于云计算、关于数据库方面的一些话题。我将这些谈话中的精彩内容整理出来,以飨读者。
与京东云共同成长的人
在谈话中,我了解到,郭理靖在京东的工作历程是伴随着京东云的发展一路走过来的。
从 2006 年到现在,郭理靖一直专注于云计算领域。从 2013 年京东云作为内部的基础设施云服务开始,他亲历了京东云从内部自用到正式商用的多个阶段的发展。
作为核心人员之一,郭理靖又在其中扮演了什么样的角色呢?
“其实我有两层角色,”郭理靖说到,“第一层,我负责数据库相关的服务,包括 RDS、数据仓库,现在京东云还推出了时序数据库、分布式数据库等,把京东技术体系内部的各种数据库的技术拿出来。另外,我还在京东云产品委员会,负责对京东云产品进行中长期规划, 评审产品开发可行性与必要性,规范产品上线流程,跟踪竞品动态与对标,统一产品培训资料,推进内、外部培训认证机制,精心打造京东云产品。”
谈到这里,我发现一个现象,根据我的了解,包括京东云在内的很多公有云服务商的产品负责人都是出身于一线技术岗位。之前也有人跟我说,“为什么云服务行业是技术人员来担任产品经理,这是因为云计算服务就是技术性的产品,不懂技术的没法制定和设计这样的产品出来。”
郭理靖表示:
“这种说法是比较有道理的,因为整个云计算的产品主要是给技术人员使用,要求产品经理有很强的技术功底、技术视野以及技术敏感度,不是技术背景出身的产品经理,难于理解用户诉求,很多细节没法把握。比如做时序数据库,到底是做成什么样的时序数据库,提供什么样的功能,只有做过技术支撑的产品经理,才能理解要什么样的产品和什么样的用户体验。”
从私有云到公有云
最初,京东云只是作为内部基础设施服务,那时候京东云的人手也比较少,最初采用的技术是 OpenStack 技术栈,从 2014 年开始全部转向了 Docker 容器技术。那个时候,京东已经把统一监控、部署、代码管理、日志服务这些技术部分都已经建设完备了,但是还缺乏一个核心的运行环境,而其时崛起的容器技术正好填补了这个空白。这个技术体系一直发展到现在。
到 2016 年, 京东云平台经历内部历练和打磨后,已经有了大规模的对外开放的技术基础了。在基础架构细节梳理的比较清晰、底层的基础设施服务和中间件服务都逐渐成熟、内部的使用和运营非常顺畅之后,当时决定,可以对外做公有云了。当然,做公有云和私有云的难度不是一个量级的,私有云很多事情都是在掌控范围之内,而做公有云要改造的东西特别多的。这包括网络管控、存储结构改造等几大的难点。
然而,京东云以后来者居上的节奏,从决定要对外开放,到真正的对外开往,仅用了几个月的时间,在 2016 年的 4 月 1 号正式对外开放公有云服务。
在京东云的公有云服务上线之后,逐渐往上增加各种产品和服务。产品从 20 多款已丰富至现在的 220 多款。
云计算从最初一个概念的提出,到后来发展为公有云、私有云、混合云等不同的形态,关于到底哪种云服务形态才是未来,人们也有不同的看法。不过从当前阶段看起来,主流的认识是,在认可公有云的基础上,企业希望有一种“私有化”的公有云服务。那么如何看待公有云、私有云以及接下来的发展呢?
郭理靖说:
“这个事情我们分两方面看,一方面就是看现状,另外一方面看接下去的发展。”
“当前的云服务的现状是公有云、私有云、混合云并存,而且这个阶段可能会比较长。……京东也在做私有云服务,……我们称之为 JDStack 专有云,专业服务中大型企业以及政务云 。JDStack 既能把京东云所有的能力集成起来,而又提供灵活选配的功能,除了核心的几个组件,如 SDN、RDS 等必需的产品之外,其他产品都可以选配,用户可以将京东云的能力复制一份带回家,这个产品目前的市场前景也非常好。”,同样,对于混合云,“我们可以提供的 VPN 以及专线接入,打通用户的私有云与我们的公有云,我们有完整的混合云方案,京东云的很多客户也是采用混合云的模式。”至于公有云,就更不用说了。这三种模式我们都有,主要是使用于不同场景……就目前来看,公有云市场最大,而私有云的销售份额要比混合云大。”
“你刚才讲到公有云上的私有云,确实有些用户希望在公有云里面划分一些独占的资源池,它的所有 VPS,RDS 都分配到那个资源池里面去,这种客户独享资源池的模式我们也是完全支持的。”郭理靖接着补充到,“存在这样的需求我觉得主要还是在于,政策法规上对于数据安全上面的规定。在金融、保险等领域,对数据保存的位置与管理都是有特殊要求的,使用这个解决方案,不仅能够满足合规的要求,而且能复用公有云统一的技术栈、管理服务,不用担心升级运维等基础设施性的问题。”
Docker 出现以后,随着 Kubernetes 编排系统的进一步普及和标准化,用户逐渐摆脱了被厂商绑定的情况,目前京东云在容器服务方面的进展是怎么样的?
“其实在云端提供容器服务的最大难点是资源隔离,在这方面我们做的还比较出色。我们应该是国内厂商中比较早做容器服务的。现在 Docker 是用 cgroup 进行隔离的,但会造成 Docker 容器之间的逃逸,导致同一台物理机上的 Docker 容器可以读取另一个 Docker 容器的数据。这在私有云上这不是太大的问题,但在公共云上是不可接受的,所以我们开发了原生容器服务,利用虚拟化去承载容器镜像。用传统的虚拟化技术进行隔离,同时兼容所有 Docker 的镜像,在启动速度方面,丝毫不逊色于 Docker,甚至在不少场景还会更快。同时原生容器还可以无缝衔接我们现有的 SDN 和云硬盘等底层服务,在公有云产品线里是属于与云主机平级的‘一等公民’,这会比在虚拟机里运行 Docker 要好很多。”
专注于数据库
除了云计算方面,郭理靖也植根于数据库领域。
“京东云的关系型数据库(RDS)覆盖面还是比较广的,支持的数据库类型也比较多,除此之外我们还有自己的 DTS 服务,可以做数据迁移服务。”他说,“京东云非常重视数据库,数据库研发团队也非常精悍。我们对新技术的敏感度及理解一直走在前面。例如,京东云是国内首发支持 MySQL8.0 的云厂商,同时也是第一家支持云数据库 MariaDB 服务的云厂商,我们也在积极进行云原生数据库的研发工作。
新的数据库,新的服务模式
关于京东云自研的新数据库服务,我表示很好奇,因为一个全新的数据库的研发难度显然要远远大于将已有的开源产品进行适配、优化后提供给客户使用。
郭理靖说,“因为 MySQL 在单一实例上自身存在容量限制,并不能发挥云端的优势:按需付费。比如购买云厂商的 RDS,企业实际购买的数据库服务的 QPS 是受限的,如果买更高性能则可能很多时候是浪费的。这就没有把云服务的资源和能力完全发挥出来:随着用户的体量越来越大,对容量的需求相对更大,应该在访问高峰时能够满足服务要求,在访问低峰时足够便宜,按照实际用量来收费。这样的数据库产品很值得设计研发。”
京东云对未来这样一个按需付费的数据库期望达到:
“第一、兼容SQL 标准;第二、按需付费、按性能付费,小规格的存储也能享受高性能,存储和运算深度分离;第三、性能非常好。”
开源开放
作为开源社区,我们自然也关注京东云的开源。
郭理靖说,“参与开源社区活动我们是非常积极的。我们不但是云原生基金会(CNCF)的会员,也加入了 Enterprise Ethereum Alliance(EEA),我们对开源这件事持很开放的态度。”
“在过去的几年中我们的工作压力比较大,更多的精力是投放在产品的打磨上,先要达到一定的产品丰富程度才能去做到精益求精,才能在对外开源,才能在开源社区上去贡献更大的力量”,郭理靖补充道。
当然,开源从来不仅仅是一种意愿,而是代表着背后很多的工作投入的。
开源这件事需要必要的时间和投入,京东云事业部对此也是持开放的态度,希望可以通过开源进行技术和品牌侧的建设。从这一点看,我觉得中国的技术公司已经有这样的思想和氛围了。
“要做一个完整的开源项目还是存在一些挑战,比如京东云的很多项目相互依赖比较多,要做开源的话首先要进行整理和切割,否则开源出去也无法独立运作,就没有开源的意义了。举个例子,如果要开发一个中间件,那必须把原先和用户、计费、管理、监控相关的东西全部切割出来,这个任务代价是很大的。”
郭理靖说,“目前我们的 BDS 项目已经完成代码的整理,已经对外开源了。BDS 是京东云打造一个行业标准的区块链的 BI + 数据搜索服务。区块链项目的底层区块存储结构各不相同,需要对不同的项目的数据进行解析与整理,基于此,京东云开源了区块链数据服务 (BDS),以望让更多的开发者与社区可以参与其中,接入更多公有链、联盟链、私有链等区块链项目。区块链数据服务将以区块链数据搜索引擎形式聚合所有区块链相关的内容,最大化区块链上可信数据价值,方便社区能在 BDS 上进行区块链数据的一站式查询。。”
“技术开源也能从另一个纬度考验我们的技术能力,进而驱动我们不断打磨技术和产品”。
作为京东集团技术能力对外输出的重要出口,京东云商用三年以来,正在逐渐演化为京东技术的“开源”代表,对内整合 AI、区块链等硬核技术,对外不断携手上下游伙伴扩张生态,京东云希望让各种技术通过云端整合相互促进,业务侧对外赋能可以像积木一般拆分重组,实现“即插即用”的模块化方式,为社区、为生态带来普惠价值。
结语
和郭理靖的谈话匆匆过去了一个小时,通过和一位直接负责云产品的技术负责人的深入沟通,让我对京东云丰富的云产品背后所掩盖的宏大的技术背景有所了解,也对云计算的发展有了更多的切实体悟。
“穿山甲专访”栏目是 Linux 中国社区推出的面向开源界、互联网技术圈的重要领军人物的系列采访,将为大家介绍中国开源领域中一些积极推动开源,谙熟开源思想的技术人,并辨析其思考、挖掘其动因,揭示其背后所发生的事情,为关注开源、有志于开源的企业和技术人标出一条路径。
取名为“穿山甲”寓意有二:取穿山甲挖掘、深入之意来象征技术进步和表征技术领袖的作用;穿山甲是珍稀保护动物,宣传公益。