查看原文
其他

DNSPod十问邹辉:云原生对企业的价值到底有多大?

D妹 腾讯云原生 2021-07-14



问答时间:2021年3月4日
嘉宾简介:


邹辉:现任腾讯云容器产品总经理,全面负责腾讯云容器、Service mesh 产品相关业务和团队管理工作。 自2010年加入腾讯以来,先后带领技术团队负责腾讯内部多个高性能通信框架及缓存系统,服务于腾讯内部多个海量业务;2017年开始从无到有搭建腾讯云容器产品,推动容器产品规模连续多年保持三位数以上速度增长,并取得行业领先地位。
主持人简介:


吴洪声(人称:奶罩):腾讯云中小企业产品中心总经理,DNSPod创始人,洋葱令牌创始人,网络安全专家,域名及DNS技术专家,知名个人站长,中欧国际工商学院EMBA。
01

吴洪声:“云原生行业没有标准,云原生行业全是标准”。从云原生概念到现在,关于云原生的定义已经发生了很多变化,云原生概念本身也在不断地生长。企业、开发者各自有不同的解读,行业各方也有不同的理解。站在腾讯云的角度,我们是如何理解云原生的?


邹辉:从2013年Matt Stine 提出云原生概念,到2015年云原生社区CNCF成立,再到当前云原生技术风靡全球;越来越多的云厂商加入云原生并对外提供云原生服务、越来越多的终端用户使用云原生并发扬光大,云原生所涵盖的技术也越来越多,可以说是百花齐放,但是云原生的边界具体在哪里,业界一直没有一个准确的定义和说法,不同组织和不同人的理解也不一样。

云原生更多是一种设计理念,包含面向自动化、弹性扩展、灰度发布、故障自愈、可观测性……等等设计,理念贯穿于软件的设计、开发、部署和运维整个生命周期,告诉企业如何做才能更好的将云用起来,提升企业的研发运维效率,降低企业的资源成本。


站在腾讯云的角度,我们更多从服务方的角度来定义云原生,如何让企业能够在上云的过程中,借助云上的服务更好地将云原生理念落地;所以我们将云原生实践过程分成了四个阶段“开发云原生”、“计算云原生”、“架构云原生”和“数据云原生”,每个阶段都有多种云原生技术及衡量标准,因为时间关系关于这几个阶段的详述就不展开,大家有兴趣可以关注腾讯云原生公众号,点击【传送门】,即可下载《腾讯云原生最佳实践》&《腾讯云原生路线图手册》!


02

吴洪声:这几年在“企业上云”的号召下,很多企业开始向云上之路迈进。尤其是不少传统企业,也将原有的系统进行改造和升级,晃晃悠悠地将业务搬到线上。但付出一定的人力和物力后,在面对市场变化和新业务增长上并没有取得相应的成效。传统企业怎么做到真正的上云?或者说传统企业就不适合上云?

邹辉:企业上云可大幅降低企业IT成本以及运维成本,同时云厂商提供了各类开箱即用的解决方案可以有效降低研发成本。因此,企业上云是趋势,但上云过程需要谨慎、仔细考量。


首先,您需要了解云厂商提供的能力是否与企业当前的硬件、软件、网络、存储等匹配,如果您的应用需要特殊的系统、软件才能支持,那么您需要评估上云改造的可行性和代价,您可以跟对应厂商的售前架构师一起梳理企业IT系统上云的可行性。


上云方案评估可行后,可以把新业务和非核心业务优先迁移到云上,通过这些应用的迁移可以积累云平台的使用经验,即使过程中出现问题也不会对业务造成太大影响,等这些应用都平稳运行后,再把核心业务逐步迁移到云平台。上云的过程可能涉及到IDC跟云平台应用互相调用的场景,需要应用架构能够支持,比如需要统一的服务发现与负载均衡,上云过程也是一次业务梳理和架构优化的契机,经过上云重构能够让应用更健壮以及更具弹性。


最后要说的是没有银弹,短期来看,上云会给企业带来阵痛,长期来看,上云会给企业带来降本、增效、技术持久领先等价值,但在市场变化、业务增长方面,更多的需要企业自身去突破。


03

吴洪声:一个新兴概念到真正落地往往需要经历很长一段时间的实践,这里面包含技术锤炼、人才培养等多方面的探索。尤其是在互联网背景下,企业业务、产品更新周期更短,如何适应新态势,是企业最亟待解决的问题。所以,当一个企业真正拥抱云原生技术,具体要在什么方面来落实?

邹辉:云原生落实路线分为技术和组织架构方面。


首先,技术方面。推动应用微服务拆分,应用微服务化后,可以控制服务自动伸缩的力度,只对需要扩缩容的服务进行扩缩容,单个微服务可以做到快速发布,加快业务的功能迭代速度。其次使用容器和kubernetes等云原生技术栈,不同开发语言、开发框架统一使用容器作为交付产物,能有效提升应用自动构建、发布的效率,从而提升企业产品迭代速度。同时使用kubernetes对业务容器进行统一的资源调度,可大幅降低资源成本,结合tracing/logging/metrics可大幅提升应用的可运维性和容灾能力。


在组织架构方面,需要有专业的效率工程团队来提供统一的DevOps工具链平台,整个平台的建设过程需要跟业务方持续沟通和迭代,确保满足业务的流程需求。业务团队组织架构也要顺应流程的敏捷迭代,团队内部需要高内聚,开发、测试、运维紧密协作,团队间需要低耦合,通过统一的流程和接口规范来交互。


04

吴洪声:腾讯云目前运营着国内云厂商中最大规模的容器集群,支撑着游戏、微信、广告等业务的数十亿计用户。那基于不同的用户、不同的场景腾讯云在容器领域的产品布局是什么?今年腾讯云在容器领域发力的重点又是怎么样的?


邹辉:腾讯云容器服务目前有非常多的细分产品,服务于腾讯内部客户,公有云客户以及私有云客户:


在公有云计算领域:我们提供了TKE(标准Kubernetes服务)、EKS(Serverless Kubernetes服务),TKE-Edge(边缘Kubernetes服务),TCM(Service Mesh服务),TCR(企业版镜像仓库服务)。


在私有云领域:我们提供了TCE 企业版(公有云能力的完整输出,包括上面提到的各种容器服务),TKE企业版/TCS(基于容器的PAAS平台)。


在开源领域:我们提供了TKEStack(TKE的开源版本),SuperEdge(TKE-Edge开源版本)。


基于上述的三个场景,我们会进一步拓展容器这里适用的计算和业务场景,比如将容器与云上大数据+AI产品结合推出云原生大数据+AI解决方案,容器与混合云场景结合推出容器混合云解决方案,拓展容器这里的边界。同时我们也会进一步优化TKE这里的产品能力,让TKE可以做到最极致的效率、最低的成本;比如我们正在做离在线混部、request负载智能推荐、还有基于成本的弹性扩缩容、结合竞价的容器调度和资源动态回收能力。


05

吴洪声:近两年,混合云开始走到舞台中心,它既能通过内部私有云和本地基础设施保证运营持续性、稳定性、安全性,也能借助外部公有云提高速度和敏捷性,丰富客户互动体验,从而实现了私有云和公有云独特的融合。你如何看待混合云的发展前景?混合云离全面落地应用还有多远?


邹辉:从行业客户来看:大部分头部企业都在布局混合云。

混合云是一种部署形态,一方面客户会由于资产保值、提高议价能力、控制风险、减少锁定等原因选择混合云。另一方面企业也会为了获得不同云服务商的相对优势,不同云服务商能力差异的互补选择多云进行混合业务部署。


从技术来看:容器混合云将成为云厂商混合云方案的主流。

混合云概念在容器技术普及之前就有了,但一直未能大范围使用起来,因为基于VM的应用部署模式在标准化、扩展性等方面还不是足够友好,容器生态帮助企业解决了标准化管理的问题,使企业更易于实现多云/混合云敏捷开发和持续交付。我们相信容器及Kubernetes技术的普及,将加快混合云的落地。


从厂商来看:行业内的云厂商都在 布局基于容器技术的混合云解决方案。

腾讯云从去年开始,启动了基于容器的混合云解决方案。今年上半年,我们将会推出三种模式的混合方案:

第一:开源的TKE发行版,企业可以通过腾讯云控制台一键将TKE发行版安装到企业IDC机房中的机器(除了重新安装外,我们也提供存量自建Kubernetes集群升级到TKE发行版的能力);通过TKE发行版,企业可以在IDC中获得与公有云TKE完全一致的集群管理体验,同时企业可以基于TKE发行版,进行更多定制化的开发。在管理面上,企业可以通过腾讯云上控制面板或者IDC中的TKE发行版来管理 所有的Kubernetes集群。

第二:我们拓展了腾讯云上TKE集群的纳管范围,云上TKE集群可以直接添加用户IDC中的节点(节点与云上TKE集群之间网络互通及延时有更高的要求)。

第三:企业在IDC中的自建Kubernetes集群,可以直接通过安装腾讯云EKS VK的方式使用腾讯云上的EKS弹性容器资源,将云上的容器资源作为IDC容器资源的一个备份和补充,以应对一些突发流量或者潮汐流量。


06

吴洪声:TKE是腾讯云容器服务中的明星产品,主要基于原生Kubernetes 来提供以容器为核心、高度可扩展的高性能容器管理平台。其中独立部署开源版本TKEStack去年正式宣布开源,上个月加入开放原子开源基金会。你如何看待这个产品开源的意义?你认为企业开源项目的重点是什么?


邹辉:TKEStack的开源是腾讯在云原生领域的经验和技术积累的对外输出,我们期望通过TKEStack促进人工智能、大数据、物联网等新技术在云原生场景下的落地。


另外随着云原生技术的推广和发展,各种私有化业务的研发、运维、交付标准,以及对应的上层应用,都将慢慢向云原生的标准对齐。所以我们也会将更多的云原生应用,比如中间件、数据……这些集成到TKEStack中,让用户在实际使用过程中能够自由选择和组装,极大地降低研发成本,提高交付效率,加速企业的数字化转型。


在企业开源项目的重点这里,我认为开源对企业自身有着很大的价值,能够为企业在商业版本推广上带来马太效应,并能够消除客户被厂商绑定的顾虑,同时通过开源来建立标准,形成生态,也是对产品发展的重要支撑。


在企业开源的过程中,要把开源项目当作产品对待,找准项目的核心价值,解决用户或行业的痛点,满足细分领域用户的诉求。并且要拉通合作伙伴,设计合理的治理模型,通过各种渠道推广和扩大影响力。同时商业化的能力也很重要,商业落地和开源生态相互促进,形成良性循环,将大大提高开源项目的成功机会。


07

吴洪声:在本次2020 Techo Park开发者大会上你讲述了腾讯云原生路线图的全面布局,创造了三个行业首次。首次站在用户角度梳理云原生关键脉络,首次提出云原生系统,首次提出云原生实践“ISO”。规划这张路线图的初衷是什么?在这背后有哪些关键产品支撑?


邹辉:目前腾讯云原生产品矩阵,涵盖了从软件研发、计算资源、架构框架、数据存储与处理到安全防护……等五个大领域,几十个细分产品。依托这些产品,我们正在为不同行业、不同规模和不同发展阶段的几十万家客户提供云原生服务。



在服务这些客户的时候,我们发现一个企业的云原生化改造会碰到很多的问题,比如“改造收益是什么?应该选择什么样的技术或者服务?改造节奏、投入及风险该如何平衡?最佳实践有哪些?改造结果如何评判?……等等”。所以基于此,我们推出了“腾讯云原生最佳实践路线图”,期望通过“路线图”,让企业的“云原生技术改造 ”走的更加顺畅和简单。


08

吴洪声:Kubernetes 在其最新的 Changelog 中宣布,自 Kubernetes 1.20 之后将弃用 Docker 作为容器运行时。这一消息在云原生领域激起了不小的水花,你认为Kubernetes弃用Docker对开发者来说意味着什么?将对Docker 的生态产生怎样的影响?


邹辉:要非常清晰的了解这个问题,必须从架构上知道Kubernetes与Docker之间的关系。Docker是诸多容器运行中的一种,Kubernetes为了方便适配不同的容器运行时,定义了一个与运行时通信的标准接口CRI,不同容器运行时要想接入Kubernetes,只需实现这个标准接口即可。然而Docker本身并没有实现CRI,于是Kubernetes社区维护的一个dockershim组件完成CRI协议到Docker协议的转换,Kubernetes通过CRI接口调用dockershim,dockershim调用Docker来完成上述能力。Kubernetes 1.20实际上是弃用的dockershim,减少架构上的复杂度。


对于普通的Kubernetes使用者而言,不必有太多担心,Kubernetes会直接通过CRI接口调用另外一种容器运行时Containerd来实现容器的功能,在Kubernetes使用上对用户其实是无感的。


对于Docker的使用者而言,也可以继续使用Kubernetes,区别只是需要做一些配置修改,自己部署Dockershim即可;但长远来看,Dockershim本身的维护也是一个比较大的问题,对于Docker生态而言,这里需要有更多的考量。


不过归根到底,对于开发者而言,还是要拥抱以Kubernetes为核心的云原生生态,了解多种容器运行时的对比情况,根据业务场景做出自己合理的选择。


最后,从云厂商的角度来看,目前一些主流云厂商都已经支持选择Containerd作为容器运行时。而腾讯云早在两年前,就已经洞察这一趋势,并产品化支持了Contianerd。


09

吴洪声:云计算技术,其更新迭代的速度快得让人应接不暇。未来容器技术在整个云生态中将会占据怎样的地位?你是如何看待容器技术的发展空间的?

邹辉:短短几年时间,在社区、开发者、企业和云厂商的多方作用下,容器技术便从出现走到成熟;到目前为止,容器技术已经在各行各业的软件系统中被大量使用,各大云厂商也在全力投入容器技术为代表的云原生生态,可以说容器技术已经成为云生态中的一种“基础设施”。


这种“基础设施”的属性正在不断加强,主要体现在三方面。


第一 容器正在与大数据、AI、数据库以及其它一些有状态类服务结合,成为这些软件的“底座”,给这些服务的部署运维、调度管理…带来更好的便利,这块的技术正在不断成熟,企业优秀实践也越来越多,极大地拓展了容器技术的使用边界。


第二 在一些新兴的领域或者场景,比如边缘计算、混合云管理,大家正在使用容器技术来屏蔽底层IAAS的差异,减少管理上的成本,极大的加速了这些领域的发展进程。


第三 以容器技术为核心的云原生生态还在快速的发展中,比如微服务、serverless、服务网格、容器安全…等,每年都不断有一些新的东西出现在 CNCF的云原生全景图中,生态的繁荣也反向促进了容器技术作为“基础设施”的地位。

10

吴洪声:云计算的分布式、可扩展和灵活的特性在云原生架构上得到了充分体现,开发人员可以更高效地应用和管理异构硬件和环境下的各类云计算资源,并专注于应用开发本身。未来软件开发、软件应用将诞生于云上,成长于云上。在这种情况下,云原生是不是会有重塑IT体系的可能?云原生会给我们的生产生活带来哪些改变?

邹辉:生于云,长于云。云原生出现便是为了让企业能够更好的上云,所以云原生一定会重塑企业IT的各个环节,让企业IT能够使用云原生理念,更好地去利用云上的各种设施和服务。


比如说:在软件开发部署阶段,通过 DevOps流程规范制定、各种工具平台使用甚至组织结构调整,建设完善的CICD系统和流程,提高开发、构建和部署的效率,同时降低因为“人”的因素导致的一些失误。在软件设计阶段,基于微服务、服务网格等技术重构软件系统,让软件的开发更简单,部署发布更容易,问题发现和跟踪也更方便。在软件的运维阶段,通过kubernetes以及其它一些云原生技术,让软件架构能够基于云的多可用区自动容灾,资源使用上做到按需使用自动伸缩,付费模式上做到按量计费。


云原生相关技术虽然在改变IT架构中的各个环节,但改变并非目的,归根到底,通过云原生概念和技术的落地,可以让我们的研发运维效率更高,版本的发布迭代速度更快,资源使用成本更低,架构更加稳固可靠,而这些最终体现在企业的效率和成本上,让企业更具竞争力。





  往期精选推荐  


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存