### 解决"/dev/mapper/centos-root 突然满了"问题的流程:

| 步骤 | 操作 |
| --- | --- |
| 1 | 检查磁盘空间使用情况 |
| 2 | 清理不必要的文件 |
| 3 | 扩展磁盘空间 |

---

### 步骤1:检查磁盘空间使用情况

1. 打开终端,连接到Kubernetes集群中的节点

```shell
ssh @
```

2. 使用以下命令查看磁盘空间使用情况

```shell
df -h
```

3. 根据输出结果找到“/dev/mapper/centos-root”所在的行,查看该分区的使用情况。如果使用率接近100%,则需要继续进行后续步骤。

---

### 步骤2:清理不必要的文件

1. 找到占用大量磁盘空间的文件或目录

```shell
du -h --max-depth=1 / 2>/dev/null | sort -hr | head -10
```

2. 根据输出结果,找到占用磁盘空间较大的文件或目录,可以考虑删除或移动这些文件以释放空间。

3. 删除不必要的日志文件、临时文件或缓存文件可以帮助释放磁盘空间

```shell
rm
```

4. 移动大文件至其他存储位置

```shell
mv
```

---

### 步骤3:扩展磁盘空间

1. 如果清理文件后还无法释放足够的空间,可以考虑扩展磁盘空间。

2. 在Kubernetes集群中找到需要扩展磁盘的PV(Persistent Volume)

```shell
kubectl get pv
```

3. 查看PV的详细信息,找到对应的StorageClass

```shell
kubectl describe pv
```

4. 根据StorageClass的类型,进行相应的磁盘扩展操作。以下是一些常用的操作示例:

- AWS EBS扩展磁盘的操作
```shell
aws ec2 modify-volume --volume-id --size
```

- GCP Persistent Disk扩展磁盘的操作
```shell
gcloud compute disks resize --size=
```

- Azure Disk扩展磁盘的操作
```shell
az disk update --name --resource-group --size-gb
```

5. 等待磁盘扩展操作完成,然后重新检查磁盘空间使用情况

```shell
df -h
```

通过以上步骤,你应该能够成功解决"/dev/mapper/centos-root 突然满了"的问题,并释放足够的空间让系统正常运行。希朴文中的操作指引对你有所帮助。