Repository SSH Plugin provides SSH repository for Elasticsearch's Snapshot/Restore feature.
| Version | Elasticsearch |
|---|---|
| master | 2.2.X |
| 2.2.1 | 2.2.0 |
| 1.6.0 | 1.6.1 |
| 1.4.0 | 1.4.1 |
Please file an issue. (Japanese forum is here.)
$ $ES_HOME/bin/plugin install org.codelibs/elasticsearch-repository-ssh/2.2.1
This plugin provides "ssh" type for a snapshot repository. You can register ssh-based repository as below:
curl -s -XPUT localhost/_snapshot/my_backup?pretty -d '{
"type": "ssh",
"settings": {
"location": "/mnt/snapshot",
"host": "123.123.123.123",
"port": 22,
"username": "snapshot_user",
"private_key": "/home/snapshot_user/.ssh/id_rsa",
"known_hosts": "/home/snapshot_user/.ssh/known_hosts",
"compress": true
}
}'
where
| Name | Type | Description |
|---|---|---|
| location | string | a snapshot directory on SSH server |
| host | string | Host name for SSH server |
| port | int | Port number for SSH server |
| username | string | User name |
| private_key | string | Private key for "username" |
| passphrase | string | Passphrase for "private_key" |
| known_hosts | string | known_hosts file |
| password | string | Password for "username" if not using private_key |
| ignore_host_key | boolean | true if ignoring known_host file |
The usage is the same as Elasticsearch's one. See snapshot and restore.
In a large cluster, you may need to increase the MaxSessions parameter of your sshd in repository server.