CDN加速

基本概念

更新时间:2020-06-22 12:49:43

基本概念

以下为容器服务的基本概念。

Docker基础

  • Docker镜像
    Docker 镜像就是一个只读的模板。
    例如:一个镜像可以包含一个完整的 ubuntu 操作系统环境,里面仅安装了 Apache 或用户需要的其它应用程序。镜像可以用来创建 Docker 容器。Docker 提供了一个很简单的机制来创建镜像或者更新现有的镜像,用户甚至可以直接从其他人那里下载一个已经做好的镜像来直接使用。

  • 容器
    Docker 利用容器来运行应用,容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。您可以把容器看做是一个简易版的 Linux 环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。

  • 镜像仓库
    镜像仓库,是集中存放镜像文件的场所。有时候会把仓库和仓库注册服务器(Registry)混为一谈,并不严格区分。实际上,仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(Tag)。仓库分为公开仓库(Public)和自建私有仓库(Private)两种形式;最大的公开仓库是Docker Hub,存放了数量庞大的镜像供用户下载。

基于Kubernetes的容器服务

  • 集群(Cluster)
    一个集群指容器运行所需要的云资源组合,关联了云服务器节点、负载均衡、VPC网络等云资源。

  • 节点(Node)
    分为master和worker两种类型,用于部署和管理容器组,集群中的worker节点数量可以根据需要进行弹性伸缩。节点上的服务包括容器组(Pod)、kubelet和kube-proxy,Pod最终运行在Node上,Node可以认为是Pod的宿主机。

  • 命名空间(Namespace)
    是对一组资源和对象的抽象集合。例如可以将开发环境,测试环境,联调环境的服务分别放到不同的 命名空间中。

  • 部署(Deployment)
    一个部署可通过镜像或者模板来创建,每个部署可由一个或多个服务组成,可将关联性比较强的多个容器、服务统一进行管理,简化服务管理。

  • 服务(Service)
    可以为一组相同功能的pod应用提供统一的入口地址,并将请求负载均衡分发到各个容器应用上。Service的负载均衡功能由节点上的Kube-proxy提供。

  • 容器组(Pod)
    通过一个或多个docker镜像封装构成的应用实例,实际上是容器服务创建或部署的最小/最简单的基本单位,一个节点可运行多个Pod,这些Pod共享相同的存储和专有网络(VPC)空间。

  • 标签(Label)
    是一组关联到Kubernetes资源对象上的key/value对。同一个对象的labels的key必须唯一。label可以附加到各种资源对象上,如节点(Node),容器组(Pod),服务(Service)等。用来实现多维度的资源分组管理功能,以便于灵活,方便地进行资源分配,调度,配置,部署等管理工作。

  • 配置项(ConfigMap)
    配置项是多个配置的集合,帮用户管理不同环境和不同业务,方便快速将配置以文件的形式导入到容器中。

  • 数据卷(Volumes)
    网宿云容器服务采用的是Kubernetes的数据卷的概念,Kubernetes 数据卷具有明确的生命周期管理,支持多种类型的数据卷,同时一个容器组(Pod)内的所有容器共享一个数据卷。

  • 镜像(Image)
    Docker镜像是容器应用打包的标准格式,在创建部署(Deployment)时可以指定镜像部署,镜像可以来自于网宿云为客户提供的本地镜像仓库、官方Docker Hub。

  • 模板(Template)
    模板包含了一组容器应用的定义和其相互关联,可以用于多容器应用的快速部署和管理。