
# 配置了"自动删除"策略，磁盘容量到达95%时，为什么没有自动删除最早的消息？
#### 问题现象
Kafka实例每个代理（即broker）的存储空间为100GB，配置了"自动删除"策略，并创建了一个180分区的Topic，磁盘容量到达95%时，没有自动删除最早的消息。
#### 可能原因
Kafka实例每个代理会使用33GB的磁盘作为日志和Zookeeper数据的存储，且创建实例时磁盘格式化会占用部分磁盘空间，因此实际数据存储空间大约为66GB。Topic的每个分区都是由多个segment文件组成，每个segment文件的最大存储容量为500MB。Kafka删除消息是删除segment文件，而不是删除一条消息。Kafka要求每个分区至少保留一个segment文件用来存储消息，如果分区中仅剩一个segment文件，此segment文件不会被删除。在分区数到达132个（66GB/500MB=132）及以上时，可能会达到磁盘存储空间使用上限。
磁盘容量到达95%（即62.7GB）时，由于Topic配置了180个分区，每个分区中可能只存在一个segment文件，此segment文件无法被删除，其存储的消息也不会被删除。
#### 解决方法
建议扩容磁盘空间，具体操作请参考[变更Kafka集群实例规格](https://support.huaweicloud.com/usermanual-kafka/kafka-ug-181221001.html)。
