只读 URL 仓库

编辑

此仓库类型仅在您在自己的硬件上运行 Elasticsearch 时可用。如果您使用 Elasticsearch Service,请参阅 Elasticsearch Service 仓库类型

您可以使用 URL 仓库让集群只读访问共享文件系统。由于 URL 仓库始终是只读的,因此它们是注册只读共享文件系统仓库的安全便捷的替代方案。

使用 Kibana 或 创建快照仓库 API 来注册 URL 仓库。

resp = client.snapshot.create_repository(
    name="my_read_only_url_repository",
    repository={
        "type": "url",
        "settings": {
            "url": "file:/mount/backups/my_fs_backup_location"
        }
    },
)
print(resp)
const response = await client.snapshot.createRepository({
  name: "my_read_only_url_repository",
  repository: {
    type: "url",
    settings: {
      url: "file:/mount/backups/my_fs_backup_location",
    },
  },
});
console.log(response);
PUT _snapshot/my_read_only_url_repository
{
  "type": "url",
  "settings": {
    "url": "file:/mount/backups/my_fs_backup_location"
  }
}

仓库设置

编辑
chunk_size
(可选,字节值) 快照中文件的最大大小。在快照中,大于此大小的文件将被分解成此大小或更小的块。默认为 null(无限文件大小)。
http_max_retries
(可选,整数) httphttps URL 的最大重试次数。默认为 5
http_socket_timeout
(可选,时间值) 通过连接进行数据传输的最大等待时间。默认为 50s
compress
(可选,布尔值) 如果为 true,则快照中的元数据文件(例如索引映射和设置)将被压缩。数据文件不会被压缩。默认为 true
max_number_of_snapshots
(可选,整数) 仓库可以包含的快照的最大数量。默认为 Integer.MAX_VALUE,即 2^31-12147483647
max_restore_bytes_per_sec
(可选,字节值) 每个节点的最大快照恢复速率。默认为无限制。请注意,恢复还通过 恢复设置 进行限制。
max_snapshot_bytes_per_sec
(可选,字节值) 每个节点的最大快照创建速率。默认为每秒 40mb。请注意,如果设置了 托管服务的恢复设置,则默认为无限制,并且速率还会通过 恢复设置 进行限制。
url

(必填,字符串) 共享文件系统仓库根目录的 URL 位置。支持以下协议:

  • file
  • ftp
  • http
  • https
  • jar

使用 httphttpsftp 协议的 URL 必须使用 repositories.url.allowed_urls 集群设置显式允许。此设置支持在 URL 中的主机、路径、查询或片段位置使用通配符。

使用 file 协议的 URL 必须指向集群中所有主节点和数据节点都可以访问的共享文件系统的位置。此位置必须在 path.repo 设置中注册。您无需在 path.repo 设置中注册使用 ftphttphttpsjar 协议的 URL。