我尝试创建索引或向我的 Amazon OpenSearch Service 域写入数据,但收到了“index_create_block_exception”或“cluster_block_exception”错误。
解决方法
针对您收到的 ClusterBlockException 错误消息的类型,请按照以下故障排除步骤进行操作。
index_create_block_exception
{
"error": {
"root_cause": [{
"type": "index_create_block_exception",
"reason": "blocked by: [FORBIDDEN/10/cluster create-index blocked (api)];"
}],
"type": "index_create_block_exception",
"reason": "blocked by: [FORBIDDEN/10/cluster create-index blocked (api)];"
},
"status": 403
}
发生此错误的原因是存储空间不足。要解决存储问题,请参阅可用存储空间不足。发生此错误的另一原因是 JVM 内存压力高。要解决 JVM 内存压力高的问题,请参阅如何解决 Amazon OpenSearch Service 集群上 JVM 内存压力高的问题?
cluster_block_exception(集群处于只读状态)
{
"error" : {
"root_cause" : [
{
"type" : "cluster_block_exception",
"reason" : "blocked by: [FORBIDDEN/6/cluster read-only (api)];",
}
],
"type" : "cluster_block_exception",
"reason" : "blocked by: [FORBIDDEN/6/cluster read-only (api)];",
},
"status" : 403
}
当只读块设置为 true 时,就会发生此错误。如果发生仲裁损失,并且您的集群有多个节点,则 OpenSearch 会恢复仲裁并将集群置于只读状态。您可以使用 GET _cluster/settings 来验证只读状态是否设置为 true。
有关详细信息,请参阅处于只读状态的集群。
cluster_block_exception(温索引)
{
"error": {
"root_cause": [{
"type": "cluster_block_exception",
"reason": "blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"
}],
"type": "cluster_block_exception",
"reason": "blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"
},
"status": 403
}
当您尝试在温索引中添加、更新或删除单个文档时,就会发生此错误。除非将温索引返回到热存储,否则它们是只读的。只有当 UltraWarm 存储中存在索引时,您才能查询和删除索引。要更新文档,必须将索引从 UltraWarm 存储迁移到热存储。
有关详细信息,请参阅将温索引返回到热存储。
相关信息
如何纵向扩展或横向扩展 Amazon OpenSearch Service 域?