The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Elasticsearch::Client::Direct::Snapshot - A client for managing snapshot/restore

VERSION

version 1.01

DESCRIPTION

This module provides methods to manage snapshot/restore, or backups. It can create, get and delete configured backup repositories, and create, get, delete and restore snapshots of your cluster or indices.

It does Elasticsearch::Role::Client::Direct.

METHODS

create_repository()

    $e->snapshot->create_repository(
        repository  => 'repository',        # required
        body        => { defn }             # required
    );

Create a repository for backups.

Query string parameters: master_timeout, timeout

See the "snapshot/restore docs" for more information.

get_repository()

    $e->snapshot->get_repository(
        repository  => 'repository' | \@repositories    # optional
    );

Retrieve existing repositories.

Query string parameters: local, master_timeout

See the "snapshot/restore docs" for more information.

delete_repository()

    $e->snapshot->delete_repository(
        repository  => 'repository' | \@repositories    # required
    );

Delete repositories by name.

Query string parameters: master_timeout, timeout

See the "snapshot/restore docs" for more information.

create()

    $e->snapshot->create(
        repository  => 'repository',     # required
        snapshot    => 'snapshot',       # required,

        body        => { snapshot defn } # optional
    );

Create a snapshot of the whole cluster or individual indices in the named repository.

Query string parameters: master_timeout, wait_for_completion

get()

    $e->snapshot->get(
        repository  => 'repository'                   # required
        snapshot    => 'snapshot'   | \@snapshots     # required
    );

Retrieve snapshots in the named repository.

Query string parameters: master_timeout

See the "snapshot/restore docs" for more information.

delete()

    $e->snapshot->delete(
        repository  => 'repository',              # required
        snapshot    => 'snapshot'                 # required
    );

Delete snapshot in the named repository.

Query string parameters: master_timeout

See the "snapshot/restore docs" for more information.

restore()

    $e->snapshot->restore(
        repository  => 'repository',              # required
        snapshot    => 'snapshot'                 # required,

        body        => { what to restore }        # optional
    );

Restore a named snapshot.

Query string parameters: master_timeout, wait_for_completion

See the "snapshot/restore docs" for more information.

AUTHOR

Clinton Gormley <drtech@cpan.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2014 by Elasticsearch BV.

This is free software, licensed under:

  The Apache License, Version 2.0, January 2004