阿里巴巴的云原生与开发者

  

作者|李响阿里云资深技术专家

  

*×××”容器”,可下载云栖大会容器专场全部PPT * *

  
  

<>强摘要:强利用云原生技术构建应用简便快捷,部署应用轻松自如,运行应用按需伸缩。如今,云原生已经成为下一代技术发展的趋势。在2019年杭州云栖大会开发者峰会上,阿里巴巴资深技术专家李响就为大家分享了阿里巴巴的云原生技术与开发者的那些故事。

     

为什么选择云原生?

  

云原生的本质目标就是充分释放云计算带来的红利、阿里巴巴希望开发者能够使用云上极致弹性的资源交付能力,也能够使用云上极为便捷的产品和服务。阿里巴巴实践云原生也已经走过了几年时间,并在去年启动了全站上云。阿里巴巴希望业务可以更好地拥抱云,更加全面地推进云原生。

  

  

云原生既带来了技术红利,同时也带来了业务红利。

  
      <李>   

    在资源效率方面,云原生为资源效率带来了极大提升。使用容器,调度等技术不仅提高了单机维度的部署密度和资源效率,还提高了集群维度资源配置的合理性和使用率。除此之外,将业务搬到云上,还可以使用云的极致弹性的资源交付能力,既能够应对流量洪峰,也降低了资源的使用成本。

      李   <李>   

    在开发效率方面,使用Kubernetes这样的平台增强了运维自动化的能力,也增强了对应用和资源进行编排的能力,并降低了运维负担,提高了开发效率,同时,阿里云也在推动CI/CD系统的演进,希望加速应用从完成到上线的过程,并提高这一过程的稳定性和确定性,提高开发人员迭代的信心。此外,阿里云也希望将通用框架下沉到基础设施中,使得开发者能够在多语言的环境下更容易地接入和使用平台的能力,其中具有代表性的就是对服务网格的探索。

      李   <李>在标准与开放方面,通过云原生可以帮助阿里巴巴实现基础设施和生态标准的完全融合。这不仅可以将开源生态中的新技术、新理念引入到阿里巴巴的基础设施中,利用阿里内部的大规模场景和复杂业务进行打磨,锤炼,并将经过打磨的结果回馈给社区,让它带给广大开发者更多的技术红利。还可以将打造的技术引入阿里云,打造出一套完整的云原生产品技术家族,帮助云上的开发者。   
  

从Kubernetes开始

  

谈到实践云原生,其实可以从Kubernetes这个云原生的基石开始。从Kubernetes开始实践云原生的原因主要有两点:

  
      <李>一是Kubernetes向下可以对接各种不同的资源层,既可以对接像阿里云这样的公有云,也可以对接专有云,因此可以利用Kubernetes构建混合云平台。   <李>二是Kubernetes向上提供了强大的自动化运维能力,编排能力以及强大的拓展性,因此可以在Kubernetes上层构建一些垂直性的平台能力,比如可观测性和服务治理以及无服务化。基于这些垂直能力,可以进一步构建更贴近业务的平台,这也正是Kubernetes本身“平台平台”的定位。   
  

阿里巴巴的云原生与开发者

  

阿里巴巴的规模

  

阿里巴巴的规模非常庞大,内部有超过10个集群,超过10个万个节点,以及超过百万级别的容器。那么,开源技术和开源项目是否能够承受阿里巴巴的体量?能够抗住双11峰值规模的考验呢?

  

阿里巴巴坚信一定要和上游共建生态,阿里不希望只是去叉
Kubernetes,而希望去锤炼和打造Kubernetes,因此有三个策略:

  
      <李>第一个策略是对自身业务进行负载的追踪和模拟,并将追踪和模拟的结果应用到Kubernetes云原生体系中进行测试。   <李>第二个策略是对于测试过程中发现的规模性问题,会持续优化,并反馈到上游,使得整个社区受益,进而推动云原生领域的发展。   <李>第三个策略是持续推动社区去接受这些可扩展的能力,阿里巴巴也定制了自己的调度器和控制器,来满足自身的业务场景。   
  

Kubernetes 1.16和3.4 etcd

  

在最近发布的Kubernetes 1.16和3.4版etcd本中,阿里巴巴和蚂蚁金服也一同作出了大量贡献,单机的数据存储规模提升了50倍,单集群节点规模也提升了3倍,完全可以满足阿里巴巴这样体量的公司在双11这种场景下的需求。今年的618年,蚂蚁金服已经对Kubernetes集群进行了验证,在即将到来的双11日阿里会对Kubernetes集群进行再次验证。如果阿里巴巴可以使用Kubernetes作为云原生的基石,相信99.9%的企业都可以信任Kubernetes以及云原生技术。

阿里巴巴的云原生与开发者