"Read-only file system" 使用多节点在 elasticsearch 中创建快照时出错
"Read-only file system" error while creating snapshot in elasticsearch with multiple-nodes
我设置了一个有 2 个节点的 Elasticsearch 集群。我现在正在尝试实施快照恢复过程。但是我得到了这个 "Read-only file system" 错误。由于这个错误,我无法创建快照。
我在第一个节点中创建了一个目录,权限为 777。使用 NFS 并与第二个节点共享目录。我能够导航到第二个节点终端中的共享目录。
我还在两个节点上设置 path.repo 以指向该共享目录 [/opt/backups]。
但仍然得到 "Read-only"。我不明白为什么。
我请求创建快照:
PUT host.com/elsearch/_snapshot/backup_1
{
"type": "fs",
"settings": {
"location": "/opt/backup",
"compress": true
}
}
这是错误:
{
"error": {
"root_cause": [
{
"type": "repository_verification_exception",
"reason": "[backup_1] [[jhsdgfjgeufh, 'RemoteTransportException[[es-node-2][26.19.35.46:9300][internal:admin/repository/verify]]; nested: ElasticsearchException[failed to create blob container]; nested: FileSystemException[/opt/backups/tests-Dvl-pSO2Cg: Read-only file system];']]"
}
],
"type": "repository_verification_exception",
"reason": "[backup_1] [[jhsdgfjgeufh, 'RemoteTransportException[[es-node-2][26.19.35.46:9300][internal:admin/repository/verify]]; nested: ElasticsearchException[failed to create blob container]; nested: FileSystemException[/opt/backups/tests-Dvl-pSO2Cg: Read-only file system];']]"
},
"status": 500
}
tests-Dvl-pSO2Cg 目录已在主服务器上创建。
我也试过了,因为我在一些类似的问题中看到了这个解决方案:
chown -R elasticsearch:elasticsearch $BACKUP_DIR
我能够通过执行这些命令解决问题:
setfacl -R -d -m u::rwx $BACKUP_DIR
setfacl -R -d -m g::rwx $BACKUP_DIR
setfacl -R -d -m o::rwx $BACKUP_DIR
基本上,在我的 $BACKUP_DIR 中创建的目录(当我调用 PUT '/_snapshot/...' 时)没有获得 777 许可,尽管我已经使用 chmod 777 -R。上面的命令将处理这个问题。
我设置了一个有 2 个节点的 Elasticsearch 集群。我现在正在尝试实施快照恢复过程。但是我得到了这个 "Read-only file system" 错误。由于这个错误,我无法创建快照。
我在第一个节点中创建了一个目录,权限为 777。使用 NFS 并与第二个节点共享目录。我能够导航到第二个节点终端中的共享目录。 我还在两个节点上设置 path.repo 以指向该共享目录 [/opt/backups]。 但仍然得到 "Read-only"。我不明白为什么。
我请求创建快照:
PUT host.com/elsearch/_snapshot/backup_1
{
"type": "fs",
"settings": {
"location": "/opt/backup",
"compress": true
}
}
这是错误:
{
"error": {
"root_cause": [
{
"type": "repository_verification_exception",
"reason": "[backup_1] [[jhsdgfjgeufh, 'RemoteTransportException[[es-node-2][26.19.35.46:9300][internal:admin/repository/verify]]; nested: ElasticsearchException[failed to create blob container]; nested: FileSystemException[/opt/backups/tests-Dvl-pSO2Cg: Read-only file system];']]"
}
],
"type": "repository_verification_exception",
"reason": "[backup_1] [[jhsdgfjgeufh, 'RemoteTransportException[[es-node-2][26.19.35.46:9300][internal:admin/repository/verify]]; nested: ElasticsearchException[failed to create blob container]; nested: FileSystemException[/opt/backups/tests-Dvl-pSO2Cg: Read-only file system];']]"
},
"status": 500
}
tests-Dvl-pSO2Cg 目录已在主服务器上创建。
我也试过了,因为我在一些类似的问题中看到了这个解决方案:
chown -R elasticsearch:elasticsearch $BACKUP_DIR
我能够通过执行这些命令解决问题:
setfacl -R -d -m u::rwx $BACKUP_DIR
setfacl -R -d -m g::rwx $BACKUP_DIR
setfacl -R -d -m o::rwx $BACKUP_DIR
基本上,在我的 $BACKUP_DIR 中创建的目录(当我调用 PUT '/_snapshot/...' 时)没有获得 777 许可,尽管我已经使用 chmod 777 -R。上面的命令将处理这个问题。