tarantool / tarantool/tt

CLI: make backup

Open
#3 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
113
Forks
18
Avg merge
4d 11h
Merged PRs (30d)
23

Description

As an operations engineer, I want to be able to easily back up my instance data and configuration. I need this to reduce the load on the cluster when restoring an instance in the event of its death. I also need it to easily make a copy of the sales in a test environment.

I want to be able to back up my work machine without having to shell the node running the Tarantool instance. It is also important for me that the tools used and require the minimum possible additional configuration of the system in which it works.

Acceptance Criteria:

  1. The administrator can view the list of instances on a specific node (similar to CLI: get coredumps with request)
  2. The administrator has the ability to backup all instances of the node in 1 command. In this case, a separate archive (tar.gz) with a backup is made for each instance, and then the archives of each instance are packed into a common archive and loaded onto the administrator's machine.
  3. The administrator has the ability to make a backup of a specific instance.
  4. At the beginning of the backup process, a fresh snapshot is taken from the instance. If at the time of starting the backup, the creation of a snapshot has already been started, we wait until it completes and use this snapshot, you do not need to make a new one.
  5. The following artifacts are packed into the instance backup archive:
    1. For memtx: snap and xlog files
    2. For vinyl: vylog, vyrun files
    3. Instance configuration (if cartridge is used, then full yaml, or pure Tarantool configuration)
    4. The application itself.
    5. Tarantool version (* we take the distribution version, not the component's version! *)
  6. The administrator has the ability to make a logical backup of the instance data - a data dump in the taple format (see tarantool dump). In this case, only the archive with the dump file is downloaded as a result of the backup.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named; start by locating the CLI entry points for listing instances and initiating backups. Trace how commands reach a Tarantool node, then use the acceptance criteria as the completion checklist: per-instance and all-instance archives, fresh snapshots, configuration and application artifacts, version data, and logical dumps.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.