Docker本身并不是容器,它是创建容器的工具,是应用容器引擎。
Docker技术的三大核心概念,分别是:
镜像(Image)
容器(Container)
仓库(Repository)

说白了,这个Docker镜像,是一个特殊的文件系统。它除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(例如环境变量),不需要操作系统所以可能一个服务只需要几M,比虚拟机动不动几个G轻量级。镜像不包含任何动态数据,其内容在构建之后也不会被改变。

负责对Docker镜像进行管理的,是Docker Registry服务(类似仓库管理员)。不是任何人建的任何镜像都是合法的。万一有人开源有问题的镜像?所以,Docker Registry服务对镜像的管理是非常严格的。最常使用的Registry公开服务,是官方的Docker Hub,这也是默认的 Registry,并拥有大量的高质量的官方镜像。

就在Docker容器技术被炒得热火朝天之时,大家发现,如果想要将Docker应用于具体的业务实现,是存在困难的——编排、管理和调度等各个方面,都不容易。于是,人们迫切需要一套管理系统,对Docker及容器进行更高级更灵活的管理。

就在这个时候,K8S出现了。
K8S,就是基于容器的集群管理平台,它的全称,是kubernetes。
8s是一个编排容器的工具,其实也是管理应用的全生命周期的一个工具,从创建应用,应用的部署,应用提供服务,扩容缩容应用,应用更新,都非常的方便,而且可以做到故障自愈,例如一个服务器挂了,可以自动将这个服务器上的服务调度到另外一个主机上进行运行,无需进行人工干涉。那么,问题来了,要运维何用?
k8s可以更快的更新新版本,打包应用,更新的时候可以做到不用中断服务,服务器故障不用停机,从开发环境到测试环境到生产环境的迁移极其方便,一个配置文件搞定,一次生成image,到处运行。

K8S和rancher的区别:
K8s:实实在在的Docker容器编排工具,包括对于Docker容器网络的管理,资源的管理等,它解决了多容相互依赖,相互隔离的场景需求,与此类似的还有Swarm等。早期的K8s甚至没有界面,完全命令行交互,安装也较为繁琐,并不是非常友好。

Rancher:更上层管理框架,更像是一个微容器云的管理平台,它支持容器编排框架的选择(早期版本),可见可以把它看作K8s更上层的管理平台,界面化做的更好,它让对于K8s的操作和K8s之外的操作都变得更加友好。

有兴趣的可以看下我写的K8S介绍
K8S介绍

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐