--- title: "path [basePath] is not accessible on master node - 如何解决此 Elasticsearch 异常" date: 2026-02-20 lastmod: 2026-02-20 description: "path [basePath] is not accessible on master node 表示主节点在仓库校验时无法在指定 basePath 读写测试对象。" tags: ["Elasticsearch异常", "repository verification", "master node", "BlobStore"] summary: "适用版本: 6.8-8.9 1. 错误异常的基本描述 # 这条异常出现在仓库校验阶段。Elasticsearch 会在 basePath 下写入一个测试 blob,如果主节点无法完成这一步,就会抛出 RepositoryVerificationException("path ... is not accessible on master node")。 常见现象 # POST /_snapshot/{repo}/_verify 失败。 日志明确提到 master node 和 basePath。 常见于共享存储挂载错误、对象存储权限不足或只读配置错误。 典型报错与异常栈 # RepositoryVerificationException: path [basePath] is not accessible on master node 2. 为什么会发生这个错误 # 常见原因包括: 主节点对仓库路径没有读写权限。 base_path 配置错误,指向了不存在或不可写路径。 对象存储客户端虽然可初始化,但具体路径前缀不可访问。 主节点与其他数据节点的仓库配置不一致。 3. 如何排查和解决这个异常和解决这个异常 # 先检查仓库配置中的 base_path 是否正确。 确认主节点与其他节点使用的是同一套仓库配置。 如果是共享文件系统,检查挂载和文件权限。 如果是对象存储,确认前缀路径可写且没有只读限制。 修复后重新执行仓库验证。 排查时需要注意的问题 # 这类错误通常发生在仓库校验,不是业务查询链路。 看到 master node 时,优先检查主节点视角的权限和连通性。 4." --- > **适用版本:** 6.8-8.9 ## 1. 错误异常的基本描述 这条异常出现在仓库校验阶段。Elasticsearch 会在 `basePath` 下写入一个测试 blob,如果主节点无法完成这一步,就会抛出 `RepositoryVerificationException("path ... is not accessible on master node")`。 ### 常见现象 - `POST /_snapshot/{repo}/_verify` 失败。 - 日志明确提到 `master node` 和 `basePath`。 - 常见于共享存储挂载错误、对象存储权限不足或只读配置错误。 ### 典型报错与异常栈 ```text RepositoryVerificationException: path [basePath] is not accessible on master node ``` ## 2. 为什么会发生这个错误 常见原因包括: - 主节点对仓库路径没有读写权限。 - `base_path` 配置错误,指向了不存在或不可写路径。 - 对象存储客户端虽然可初始化,但具体路径前缀不可访问。 - 主节点与其他数据节点的仓库配置不一致。 ## 3. 如何排查和解决这个异常和解决这个异常 1. 先检查仓库配置中的 `base_path` 是否正确。 2. 确认主节点与其他节点使用的是同一套仓库配置。 3. 如果是共享文件系统,检查挂载和文件权限。 4. 如果是对象存储,确认前缀路径可写且没有只读限制。 5. 修复后重新执行仓库验证。 ### 排查时需要注意的问题 - 这类错误通常发生在仓库校验,不是业务查询链路。 - 看到 `master node` 时,优先检查主节点视角的权限和连通性。 ## 4. 如何解决这个错误 ### 常用修复思路 - 修正 `base_path` 或底层路径权限。 - 保证所有节点使用一致仓库定义。 - 对对象存储前缀单独做可写性验证。 - 避免把只读仓库拿来做需要写测试对象的校验操作。 ### 后续注意事项与推荐建议 - 仓库接入后应在所有角色节点上完成一次校验。 - 共享存储路径和对象存储前缀都应纳入变更管理。 ### 借助 INFINI 产品提升排障效率 - [INFINI Console](https://docs.infinilabs.com/console/main/) 可观察仓库校验失败分布。 - [INFINI Gateway](https://docs.infinilabs.com/gateway/main/) 可协助审计仓库变更请求。 ## 5. 小结 `path [basePath] is not accessible on master node` 的根因是主节点无法在仓库路径上完成验证写入。重点要查主节点权限、路径正确性和仓库一致性。 ## 相关错误 - [failed-to-create-blob-container-how-to-solve-this-elasticsearch-exception](/knowledge-base/elasticsearch_error/failed-to-create-blob-container-how-to-solve-this-elasticsearch-exception/) - [cannot-create-blob-store-how-to-solve-this-elasticsearch-exception](/knowledge-base/elasticsearch_error/cannot-create-blob-store-how-to-solve-this-elasticsearch-exception/) - [failed-to-verify-repository-how-to-solve-this-elasticsearch-exception](/knowledge-base/elasticsearch_error/failed-to-verify-repository-how-to-solve-this-elasticsearch-exception/) ## 附:日志上下文 ```java BlobContainer testContainer = blobStore().blobContainer(basePath().add(testBlobPrefix(seed))); testContainer.writeBlobAtomic("master.dat", new BytesArray(testBytes), true); throw new RepositoryVerificationException(metadata.name(), "path " + basePath() + " is not accessible on master node", exp); ```