CRI 客户端 crictl 的基本使用


共计 940 个字符,预计需要花费 3 分钟才能阅读完成。

简介

首先要知道 crictl 是什么,之前有了解过 containerd 和 ctr,详见这篇文章 Containerd 的安装和基本使用

ctr 是 containerd 自带的 CLI 命令行工具,crictl 是 k8s 中 CRI(容器运行时接口)的客户端,k8s 使用该客户端和 containerd 进行交互。

常用命令

1. 镜像相关

1.1 查看镜像

crictl image/images

1.2 拉取镜像

crictl pull nginx

1.3 删除镜像

crictl rmi nginx

1.4 查看镜像信息

crictl inspecti <image-id>

crictl 缺少对具体镜像的管理能力,如没有导入导出镜像、给镜像打标签、推送镜像等功能。

2. 容器相关

2.1 查看容器

crictl ps

2.2 运行容器

# 需要配置文件
crictl run container-config.yaml pod-config.yaml

2.3 暂停容器

crictl stop <container-id>

使用 crictl stop 命令仅停止容器,并不会直接影响到 Pod 的状态。Pod 是由 Kubernetes 控制器(如 Deployment、StatefulSet 等)管理的,控制器会负责确保 Pod 的期望状态并持续监控 Pod 的运行情况。

2.4 启动容器

crictl start <container-id>

2.5 删除容器

crictl rm <container-id>

2.6 查看容器占用资源

crictl stats

2.7 查看容器状态

crictl inspect <container-id>

2.8 查看日志

crictl logs <container-id>

2.9 进入容器

crictl exec -it <container-id> bash

3 pod相关

3.1 查看pod

crictl pods

3.2 创建pod

# 需要配置文件
crictl run pod-config.yaml

3.3 查看pod占用资源

crictl statsp

3.4 暂停pod

crictl stopp <pod-id>

暂停后使用 kubectl get pod 发现 nginx-pod 的状态为 Error。

3.5 删除pod

crictl rmp <pod-id>

删除 pod 后,k8s 似乎会新建一个 pod。

3.6 查看pod状态

crictl inspectp <pod-id>

提醒:本文发布于394天前,文中所关联的信息可能已发生改变,请知悉!

Tips:清朝云网络工作室

阅读剩余
THE END