最近更新时间:2024-01-05 09:58:11
Kubernetes (K8s) 作为一种流行的容器编排系统,广泛应用于大规模的容器集群管理。容器运行时(Container Runtime)是K8s中最重要的组件之一,负责在操作系统层面管理镜像和容器的生命周期,并用于提供安全、隔离和资源管理等功能。Kubelet通过Container Runtime Interface (CRI) 与容器运行时交互,来管理镜像和容器。
容器创建和启动:容器运行时负责根据预定义的容器配置信息(如镜像、命令、环境变量等),创建并启动容器实例。
容器文件系统管理:容器运行时处理容器的文件系统,负责将镜像的内容挂载到容器的文件系统,并在容器之间提供隔离。
资源限制和管理:容器运行时可以根据用户或管理员定义的资源限制,管理容器对CPU、内存、磁盘等资源的使用。
容器网络:容器运行时协助配置容器的网络,使得容器可以与其他容器或外部网络进行通信。
安全性:容器运行时实施安全机制,确保容器之间和宿主机之间的隔离,并防止容器中的恶意行为影响其他容器或宿主机。
在K8s中,容器运行时的选择对于性能、可靠性和安全性都起着至关重要的作用。容器服务目前提供Containerd运行时。
容器运行时 | 简介 | Kubernetes版本限制 | 功能 | 适用场景 |
Containerd | Containerd是由Docker团队开源的容器运行时,它专注于提供轻量级、高性能的容器运行环境。作为一个纯粹的容器运行时,Containerd被设计为更加符合K8s的架构和需求。它具有更小的资源占用,更快的启动时间,以及更好的性能表现。 | 无版本限制 |
| 若您有以下使用场景,建议您选择Docker运行时:
|
说明:Containerd 不支持 docker API 和 docker CLI,若您有该需求,可以通过 cri-tool 命令实现类似的功能。
功能说明 | Containerd CLI | |
镜像列举 | ctr image ls/list | docker images ls |
导出镜像 | ctr image export app.tar weiyigeek.top/app:1.2.0 | docker save -o app.tar app:1.2.0 |
导入镜像 | ctr image import app.tar | docker load -i app.tar |
拉取镜像 | ctr -n k8s.io images pull docker.io/library/redis:latest | docker pull redis:latest |
上传镜像 | ctr -n k8s.io images push docker.io/library/redis:latest | docker push |
更改标记 | ctr -n k8s.io images tag docker.io/library/redis:latest weiyigeek.top/redis:latest | docker tag redis:latest weiyigeek.top/redis:latest |
删除镜像 | ctr -n k8s.io images rm docker.io/library/redis:latest | docker rmi |
创建容器 | ctr -n k8s.io container create docker.io/library/redis:latest redis | docker create |
创建并运行容器 | ctr run -d --env name=WeiyiGeek application weiyigeek.top/app:1.2.0 | docker run |
查看容器 | ctr -n k8s.io container list | docker ps |
启动容器 | ctr -n k8s.io task start | docker start |
停止容器 | ctr -n k8s.io task pause | docker stop |
删除容器 | ctr -n k8s.io container rm | docker rm |
容器详情 | ctr -n k8s.io c info 39d36ef08456 | docker inspect 39d36ef08456 |
容器连接 | ctr -n k8s.io task attach | docker attach |
进入容器 | ctr -n k8s.io task exec | docker exec |
stats(状态) | ctr -n k8s.io task metric 39d36ef08456 | docker top |
日志查看 | ctr -n k8s.io event | docker logs --tail 50 8db74c2bf7595 |
纯净模式