容器技术之所以能够快速崛起,发展成为云计算领域最热门的技术,最大的法宝就是它标准化了云的交付件。过去,应用软件的存在形式是一个大而全的整体,而在容器的世界里,应用软件是根据业务逻辑切分成不同的模块,然后封装成容器的形式存在。
容器——应用的标准交付件
这是一个 IT 方法论的变革,它将应用软件生产和运维的方式标准化和模块化,而标准化和模块化往往意味着高效。无论是在软件交付之前的研发过程,还是软件交付之后的运维管理过程,标准化的交付件为企业带来的价值是非常巨大的。正因为如此,有人认为容器技术开启了应用软件的工业 4.0 时代。
如果把企业 IT 划分为两个阶段——应用交付前和交付后,那么,容器给企业 IT 转型带来的能力主要体现在两个方面:交付前的快速交付和持续创新能力,以及交付后的高效管理和运维能力。
IT交付新能力——提升迭代效率
在「互联网+金融」的趋势下,金融 IT 变革的一个最大挑战就是如何实现快速迭代,从而快速响应用户需求,这也是衡量一个企业互联网化的最重要的指标。然而,传统的软件开发模式已经成为企业产品迭代速度的瓶颈。传统开发模式中,开发、测试、运维人员被分割成独立的阶段,每个阶段分别交付不同的内容,开发人员交付代码、测试人员交付测试包,运维人员部署运行环境,在这样的协作方式下,已经无法满足「互联网+」趋势对于快速迭代的需求。并且,由于开发测试环境和生产环境不一致,无法进行统一管理,存在安全隐患。
开源应用容器引擎Docker 的出现打破了传统软件交付模式的桎梏,为快速迭代带来了全新的思路。Docker 容器技术统一了云的交付件,无论是开发、测试、还是运维人员都交付容器镜像,都基于镜像仓库进行协作。交付前开发人员需要完成迭代和移交镜像和镜像构建的过程,交付后运维团队负责镜像容器的编排和运行。这样就让整个开发过程做到了统一,容器成为了应用交互的一个标准交付件。不仅可以大大提升软件交付和迭代效率,还能避免因交付内容不同导致的人为错误。
IT架构新能力——混合云+微服务架构
在「烟囱式」IT架构向混合云架构的转型过程中,有两个关键点:一方面,应用架构由大而全的整体架构向灵活的微服务架构转变;另一方面,计算资源由专用计算资源向分布式架构转变。
以 Docker 为代表的容器技术的出现,为烟囱式 IT 架构向混合云架构转型提供了堪称完美的解决方案。首先,Docker 为微服务架构的实现注入了新的活力。微服务架构本身非常多样化,切分完成后,每个模块都可以由不同的团队来维护,也可以用不同的编程语言来编写,这会加大系统运维的难度。但是 Docker 容器将这些模块封装成统一的容器镜像,这使得平台的自动化运维变得简单。同时,应用以容器镜像的形式存在以后,可以非常容易地进行大规模分布式系统部署和运维,为计算资源由过去的专用资源向分布式架构转型提供基础。
IT运维新能力——高可用性
高可用性是金融行业 IT 运维的一个永恒的话题。在「互联网+金融」的趋势下,用户体验至关重要,其中一个非常重要的指标就是服务的高可用性。如何实现复杂 IT 环境下的高可用性是「互联网+金融」趋势下金融 IT 变革的又一个重大课题。
互联网 IT 运维的核心观点是——任何一个 IT 系统都有可能是不可靠的,因此,运维的关键就变成如何从分布式系统的管理软件层面去确保系统的连续性和高可用性。容器的轻量级特性和秒级启动能力为金融 IT 的运维带来了新的思路。由于容器本身非常轻量级,具有秒级启动的能力,因此,在分布式系统中的任意一个容器出现问题,可以立即秒级启动另一个容器,从而确保整个系统的连续性和高可用性。正因为如此,容器也被称之为「魂器」。