개인 마이크로 채널 대중 숫자에 오신 것을 환영합니다주의 : 패트리샤는 자바를 배우고 , 텍스트의 끝 공유 링크 자원 알리 P8 수석 건축가 구토 혈액 요약 "자바 핵심 기술 및 면접 .PDF을 선택"할 ! !
웹 사이트 : https://www.exception.site/essay/elasticsearch-sync-index-read-only-allow-delete
디렉토리
- 한 배경
- 둘째, 여담
- 셋째, 시작 문제 해결
- 넷째, 왜 인덱스는 읽기 전용 상태?
- 다섯째, 어떻게 해결하기 위해
한 배경
며칠 전 패트리샤 그룹을 못 충칭의 비즈니스 라인에서 피드백을받을 미들웨어의 역 동기 데이터 전송이 Elasticsearch에 MySQL을 증분 데이터가 항상 실패했다.
둘째, 여담
당신은 데이터 전송 및 데이터 전송 DTS 알리 클라우드 제공자가 일이 있다고?
아니! 위는 R & D 부서 패트리샤 미들웨어 독립적 인 연구 및 개발, 목적은 알리 DTS 동기화 기능에 대한 사업 의존도의 각 라인을 대체하는 경우 데이터 전송이 대만에했다!
현재, 데이터 전송은 여전히 오픈 소스 알리 운하, 또는 알리 DTS에 의존해야, 목적에 의존는 MySQL 데이터베이스 바이너리 로그 증가 구독을 달성하는 것입니다.
네트워크 구조도 상기 예, 데이터 전송 유닛의 상기 타겟 소스 Elasticsearch 맞춤 매핑 규칙, 데이터 처리, 배포 및 최종 동기화 통해 바이너리 로그 이벤트 소비자로서 작용한다.
셋째, 시작 문제 해결
데이터 전송이 로그보고 시작 서버에 연결된 스프링 기계를 통해 날아 신속 주제, 문제로 돌아가서 :
로그가 존재하는 많은 참조 [FORBIDDEN/12/index read-only / allow delete (api)]
오류를! !
提示错误也很明显:ES 索引处于只读状态!!在和业务组沟通以后,发现需要同步的目标索引有两个,一个商品索引(充当主表),一个商品属性索引(充当商品从表),从表同步是 ok 的,也就是说商品属性索引非只读状态,写入正常,仅仅是商品索引处于只读状态,最终未能正常同步数据。
四、为什么索引处于只读状态呢?
什么原因导致的索引只读的?小哈开始翻阅 Elasticsearch 官方文档, 原文如下:
Elasticsearch considers the available disk space on a node before deciding whether to allocate new shards to that node or to actively relocate shards away from that node.
Elasticsearch 在决定是否分配新分片给该节点,或对该节点重新定位分片之前,会先判断该节点存储空间是否足够,如果说你的使用磁盘空间已经超过 95%,ES 会自动将索引 index
置为 read-only
状态。
于是,让运维看下 ES 机器的磁盘空间是否足够,运维反馈说:前两天就是因为磁盘不足告警,刚刚扩的容,肯定是够的!
真相大白了!
前两天磁盘空间不足,那个时候,商品索引刚好有写入的操作,由于 ES 的保护机制,将该索引置为了只读状态。
五、如何解决
原因找到了!要如何解决呢?
处于只读状态的索引,只能被查询或者删除。而 ES 还不会自动将索引状态切换回来,就需要我们手动切换了:
PUT /<yourindex>/_settings
{
"index.blocks.read_only_allow_delete": null
}
对商品索引执行如上命令后。让业务组再次同步数据,一切正常了。
六、参考
- https://www.elastic.co/guide/en/elasticsearch/reference/current/disk-allocator.html
- https://stackoverflow.com/questions/48032661/transporterror403-ucluster-block-exception-ublocked-by-forbidden-12-inde
- https://blog.51cto.com/michaelkang/2164181
- https://www.aityp.com/%E8%A7%A3%E5%86%B3elasticsearch%E7%B4%A2%E5%BC%95%E5%8F%AA%E8%AF%BB/
무료 공유 | 인터뷰 및 학습 복지 자원
최근에 나는 인터넷에서 당신이 바라는뿐 아니라 인터뷰, 배우는 모든 사람이 공유 할 수있는 좋은 PDF 자원 "자바 핵심 기술 및 면접 .PDF"을 발견! ! !
액세스 : 공용 우려 : 패트리샤는 자바를 배울는 , 배경 응답 자원을 모두 자원 링크에 대한 일상적인 접근없이 무료로 , 여기 카탈로그뿐만 아니라 스크린 샷입니다 :
: 중요한 것은 공공 우려 번호, 두 번 대답 패트리샤는 자바를 배우고 , 배경 응답 자원을 모두 자원 링크에 대한 일상적인 접근없이 무료 ! ! !