容器日志及相关参数
| 对比项 |
docker |
containerd |
| 存储路径 |
docker作为k8s容器运行时的情况下,容器日志的落盘由docker来完成, 保存在类似/var/lib/docker/containers/$CONTAINERID目录下。kubelet会在/var/log/pods和/var/log/containers下面建立软链接,指向/var/lib/docker/containers/$CONTAINERID目录下的容器日志文件 |
containerd作为k8s容器运行时的情况下, 容器日志的落盘由kubelet来完成,保存到/var/log/pods/$CONTAINER_NAME目录下,同时在/var/log/containers目录下创建软链接,指向日志文件 |
| 配置参数 |
在docker配置文件中指定: “log-driver”: “json-file”, “log-opts”: {“max-size”: “100m”,”max-file”: “5”} |
方法一:在kubelet参数中指定: —container-log-max-files=5 —container-log-max-size=”100Mi” 方法二:在KubeletConfiguration中指定: “containerLogMaxSize”: “100Mi”, “containerLogMaxFiles”: 5, |
| 把容器日志保存到数据盘 |
把数据盘挂载到”data-root”(缺省是/var/lib/docker)即可 |
创建一个软链接/var/log/pods指向数据盘挂载点下的某个目录 在TKE中选择”将容器和镜像存储在数据盘”,会自动创建软链接/var/log/pods |
ctr常用命令
| 功能 |
docker 命令 |
containerd 命令 |
| 获取image信息 |
docker images |
ctr image ls |
| pull 一个nginx的image |
docker pull nginx |
ctr image pull nginx |
| tag 一个nginx的image |
docker tag nginx nginx-test |
ctr image tag nginx nginx-test |
| push nginx-test的image |
docker push nginx-test |
ctr image push nginx-test |
| pull 一个nginx的image |
docker pull nginx |
ctr image pull nginx |
| 导入本地镜像ctr不支持压缩 |
docker load<nginx.tar.gz |
ctr image import nginx.tar |
| 运行的一个容器 |
docker run -d —name=nginx nginx-test |
ctr run -d —env 111 nginx-test nginx |
| 查看运行的容器 |
docker ps |
ctr task ls |
crictl常用命令
containerd不支持docker API和docker CLI, 但是可以通过cri-tool实现类似的功能。
1. 镜像相关功能
| 镜像相关功能 |
docker |
containerd |
| 显示本地镜像列表 |
docker images |
crictl images |
| 下载镜像 |
docker pull |
crictl pull |
| 上传镜像 |
docke push |
无 |
| 删除本地镜像 |
docker rmi |
crictl rmi |
| 查看镜像详情 |
docker inspect |
crictl inspecti |
2. 容器相关功能
| 容器相关功能 |
docker |
containerd |
| 显示容器列表 |
docker ps |
crictl ps |
| 创建容器 |
docker create |
crtctl create |
| 启动容器 |
docker start |
crtctl start |
| 停止容器 |
docker stop |
crictl stop |
| 删除容器 |
docker rm |
crictl rm |
| 查看容器详情 |
docker inspect |
crictl inspect |
| attach |
docker attach |
crictl attach |
| exec |
docker exec |
crictl exec |
| logs |
docker logs |
crictl logs |
| stats |
docker stats |
crictl stats |
3. POD相关功能
| POD相关功能 |
docker |
containerd |
| 显示POD列表 |
无 |
crictl pods |
| 查看POD详情 |
无 |
crictl inspectp |
| 运行POD |
无 |
crictl runp |
| 停止POD |
无 |
crictl stopp |
参考
腾讯视频:介绍:containerd——Derek McGowan
https://v.qq.com/x/page/q0793qeuqsl.html
腾讯视频:深入了解:containerd——Derek McGowan
https://v.qq.com/x/page/t07934oebiu.html
腾讯视频:简介+深入了解:containerd
https://v.qq.com/x/page/x0877dy5rj6.html
腾讯视频:简介:containerd
https://v.qq.com/x/page/j0816srf3dt.html
腾讯视频:containerd介绍
https://v.qq.com/x/page/e0727aju2je.html
腾讯视频:深入了解:containerd
https://v.qq.com/x/page/d0824687yy5.html
腾讯视频:介绍:containerd的现状
https://v.qq.com/x/page/r3130nuk89l.html
腾讯视频:containerd,这对我来讲是什么意思(任何技术水平)
https://v.qq.com/x/page/x0664ka2vh6.html
腾讯视频:扩展containerd
https://v.qq.com/x/page/h302998qc33.html
腾讯视频:不仅仅是安全:Containerd
https://v.qq.com/x/page/h0794un8to6.html
腾讯视频:containerd - 构建容器 supervisor
https://v.qq.com/x/page/q0314svqva0.html
腾讯视频:containerd小型峰会
https://v.qq.com/x/page/y303060cxzh.html
腾讯视频:containerd-Google;傅伟,Alibaba
https://v.qq.com/x/page/i0893nv0r81.html
腾讯视频:K8s从Docker迁移到containerd的经验教训
https://v.qq.com/x/page/d0877u82hmh.html
腾讯视频:嵌入containerd运行环境获得乐趣和利润
https://v.qq.com/x/page/a0711uqpk6y.html
Opentalk直播:containerd上手实践
https://shangzhibo.tv/watch/10226294?lang=zh-cn
DockOne.io:容器运行时从Docker到containerd的迁移
http://dockone.io/m/article/9149
腾讯云:(译)Kubernetes containerd集成进入GA阶段
https://cloud.tencent.com/developer/article/1469622