云原生主要技术之容器技术-新纪元的分水岭?

今天主题的内容有3部分

容器的定义
容器的优势
容器的特性

给开发人员和运维人员的工作内容都有所改变,提升工作效率,也间接的提升了竞争力。

容器定义

面对开发人员而言:容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。开发人员在自己笔记本上创建并测试好的容器,无需任何修改就能够在生产系统的虚拟机、物理服务器或公有云主机上运行。docker是容器的一种,还有其他容器,比如 Core OS 的 Rkt。

面对操作系统而言:容器就是一个视图隔离、资源可限制、独立文件系统的进程集合。所谓“视图隔离”就是能够看到部分进程以及具有独立的主机名等;控制资源使用率则是可以对于内存大小以及 CPU 使用个数等进行限制。容器就是一个进程集合,它将系统的其他资源隔离开来,具有自己独立的资源视图。

容器具有一个独立的文件系统,因为使用的是系统的资源,所以在独立的文件系统内不需要具备内核相关的代码或者工具,我们只需要提供容器所需的二进制文件、配置文件以及依赖即可。只要容器运行时所需的文件集合都能够具备,那么这个容器就能够运行起来。

容器优势

对于开发人员 – Build Once, Run Anywhere

容器意味着环境隔离和可重复性。开发人员只需为应用创建一次运行环境,然后打包成容器便可在其他机器上运行。另外,容器环境与所在的 Host 环境是隔离的,就像虚拟机一样,但更快更简单。

今天开发人员通常使用多种服务(比如 MQ,Redis,DB)构建和组装应用,而且应用很可能会部署到不同的环境,比如虚拟服务器,私有云和公有云。

对于运维人员 – Configure Once, Run Anything

只需要配置好标准的 runtime 环境,服务器就可以运行任何容器。这使得运维人员的工作变得更高效,一致和可重复。容器消除了开发、测试、生产环境的不一致性。

容器的特性

硬件依赖

容器无需修改便可运行在几乎所有的平台上 — 虚拟机、物理机、公有云、私有云

隔离性

资源、网络、库都是隔离的,不会出现依赖问题

自动化

提供 run, start, stop 等标准化操作,非常适合自动化

高效性

轻量级,能够快速启动和迁移

职责分工

开发人员只需考虑怎么写代码;运维人员只需关心如何配置基础环境

小结

容器的出现,是原有基于虚拟机的云主机应用,彻底转变为更加灵活和轻量的“容器+编排调度”的云平台应用。

作者:程序员白老哥

来源:今日头条

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8261;邮箱:jenny@youkuaiyun.com。本站原创内容未经允许不得转载,或转载时需注明出处::优快云资讯门户 » 云原生主要技术之容器技术-新纪元的分水岭?

赞 (0)