蓝灯分享 | 一篇文章带你了解Cloud Native
Posted 蓝灯数据
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了蓝灯分享 | 一篇文章带你了解Cloud Native相关的知识,希望对你有一定的参考价值。
Cloud Native表面看起来比较容易理解,但是细思好像又有些模糊不清:Cloud Native和Cloud关系是什么?它用来解决什么问题?它是一个新技术还是一个新的方法?等等。下面我们将会一一解读。
什么是Cloud Native?
Cloud Native是Matt Stine提出的一个概念,它是一个思想的集合,包括DevOps、持续交付(Continuous Delivery)、微服务(MicroServices)、敏捷基础设施(Agile Infrastructure)、康威定律(Conways Law)等,以及根据商业能力对公司进行重组。
可以说,Cloud Native即包含技术(微服务,敏捷基础设施),也包含管理(DevOps,持续交付,康威定律,重组等)。Cloud Native也可以说是一系列Cloud技术、企业管理方法的集合。
Cloud Native的价值在于,企业采用基于Cloud Native的技术和管理方法,可以更好的把业务迁移到云平台,从而享受云的高效和按需资源能力。
从技术层面理解云原生:
可移植
应用层与物理层隔离。应用从开发环境迁移到物理环境无需改变环境配置。
自动化
通过持续集成和自我修复系统将 IT 基础设施的开发和部署进行自动化。
效率提升
通过引入全新方式来降低运维成本,让系统管理员可以有更多时间去改进系统,而不是把时间都用在维护系统上。
意识改变
DevOps 的兴起以及运维和开发人员越来越多的共同协作发布服务,包括微服务和传统服务,让用户意识到服务发布的速度和敏捷性,已经和稳定性一样重要。
总的来说,Cloud Native 是更好的工具、自我修复系统和自动化系统的集合,可以让应用和基础设施的部署和故障修复更加快速和敏捷,极大的降低企业在云计算方面的部署成本。
Cloud Native和传统Cloud的关系
Cloud Native的技术部分是建筑在传统Cloud的三层(IaaS、PaaS、SaaS)概念之上的:
敏捷基础设施对应IaaS部分;微服务则可以对应PaaS和SaaS部分。
当然,Cloud Native比传统Cloud 多了一些企业管理方法。
备注:Cloud Native从技术上更强调敏捷基础设施和微服务的概念,这并不意味着它是抛开IaaS、PaaS、SaaS而另起炉灶的。
Cloud Native的五个层面:
(1) 康威定律:业务云化推行,从某种意义上讲也是一种变革。既然是变革,必然会涉及组织的各个层面,开发、质量、运维等等都会涉及。康威定律则准确的描述了系统架构和组织的关系:组织决定系统架构!
一个云系统最终长成什么样子,则完全是企业的组织结构决定的,是组织内部、组织之间的沟通结构。
如果要想得到一个合理的Cloud架构,仅从技术入手是不够的,还需要从组织架构入手,才真正有效。
(2) DevOps(英文Development和Operations的组合):是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、运维和质量保障(QA)部门之间的沟通、协作与整合。它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品 和服务,开发和运维必须紧密合作。
(3) 持续交付(Continuous Delivery):是一系列的开发实践方法,用来确保让代码能够快 速、安全的部署到产品环境中,它通过将每一次改动都提交到一个模拟产品环境中,使用严格的自动化测试,确保业务应用和服务能符合预期。因为使用完全的自动 化过程来把每个变更自动的提交到测试环境中,所以当业务开发完成时,你有信心只需要按一次按钮就能将应用安全的部署到产品环境中。持续交付可以采 用:CI(持续集成)、代码检查、UT(单元测试),持续部署等方式,打通开发、测试、生产的各个环节,持续的增量的交付产品。
(4) 微服务(MicroServices):微服务首先是一个服务,其次该服务的颗粒比较小。微服务可以采用Docker、LXC等技术手段实现。
(5) 敏捷基础设施(Agile Infrastructure):提供弹性、按需的计算、存储、网络资源能力。可以通过Openstack、KVM、Ceph、OVS等技术手段实现。
Cloud Native兴起的背后诉求
· 更快的上线速度
· 细致的故障探测和发现
· 故障时能自动隔离
· 故障时能够自动恢复
· 方便的水平扩容
Cloud Native可以解决上面的诉求:
· 持续交付、DevOps、微服务解决-->更快的上线速度
· 微服务解决-->细致的故障探测和发现
· 微服务解决-->故障时能自动隔离
· 敏捷基础设施、微服务解决-->故障时能够自动恢复
· 敏捷基础设施、微服务解决-->方便的水平扩容
如何推行Cloud Native?
组织变革:根据康威定律,如果要达到比较理想的云化效果,必须进行组织变革。一个合理的组织架构,将会极大提高云化的推行。相信很多公司,在决定搞云计算后,都大大小小进行了部门合并和组织结构调整。这块水比较深,相信很多人有变革的切肤之痛。
推行DevOps文化:在公司层面推行DevOps文化,倡导开放、合作的组织文化,打破“部门墙”。
推行持续交付:联合开发、质量、运维各个环节,打通代码提交、代码检查、UT、开发环境部署、staging环境部署、线上环境部署等流水线。
建设敏捷基础设施:这部分是整个Cloud Native的根基。这部分可以采纳的技术非常多,开源的、商用的都比较多。
采用微服务架构:微服务架构是Cloud Native的一个核心要素。微服务包含几方面的内容:
(1)有支撑微服务的平台。
(2)有符合微服务平台规范的APP。
(3)如何引入微服务。
(4)微服务核心技术点。
以上是关于蓝灯分享 | 一篇文章带你了解Cloud Native的主要内容,如果未能解决你的问题,请参考以下文章