一、何为容器,何为 Docker
虚拟机:在一种操作系统里运行另一种操作系统,是操作系统级别的。
缺点:(1)资源占用多,需要几百 MB 的内存才能运行。(2)步骤冗余,是完整的操作系统,一些系统级别的操作无法跳过,如用户登录。(3)启动慢容器:不是模拟一个完整的操作系统,是一种进程隔离的技术,应用可以运行在每个相互隔离的容器中。是进程级别的。
优点:(1)资源占用少,另外,多个容器可以共享资源,虚拟机则独享资源。(2)体积小,只要包含用到的组件即可,而虚拟机是整个操作系统的打包。(3)启动快,相当于启动本机的一个进程。Docker:一个开源的应用容器引擎,基于Go。目前最流行的 Linux 容器解决方案。
二、Docker 基本概念
镜像(Image)、容器(Container)、仓库(Repository)
镜像是 Docker 运行容器的前提,仓库是存放镜像的场所
-
image 文件
- Docker 把应用程序及其依赖,打包在 image 文件里面(二进制)。只有通过这个文件,才能生成 Docker 容器。image 文件可以看作是容器的模板。
- Docker 根据 image 文件生成容器的实例。同一个 image 文件,可以生成多个同时运行的容器实例。
-
容器文件
- image 文件生成的容器实例,本身也是一个文件,称为容器文件。也就是说,一旦容器生成,就会同时存在两个文件: image 文件和容器文件。
- 关闭容器并不会删除容器文件,只是容器停止运行而已。
-
仓库
- 为了方便共享,image 文件制作完成后,可以上传到网上的仓库。Docker 的官方仓库 Docker Hub 是最重要、最常用的 image 仓库。
- 国内连接 Docker 的官方仓库很慢,将默认仓库改成国内的镜像网站。
三、k8s 与 Mesos
- Mesos 和 Kubernetes 都是优秀的开源框架。基于容器的集群管理平台,它的全称,是kubernetes,8 是中间 8 个字母
- 一个K8S系统,通常称为一个K8S集群(Cluster),这个集群主要包括两个部分:一个Master节点(主节点)、一群Node节点(计算节点)
四、单体式架构(Monolithic)> 微服务架构(Microservices)
两者对比
- 对于移动通信,核心网本质是服务器,不同的核心网网元,就是不同的服务器,不同的计算节点。
- 前几年大家认为,虚拟机是核心网的终极形态。目前看来,更有可能是容器化。
参考链接: