Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Updated Backup section #4103

Merged
merged 10 commits into from
Jul 24, 2020
Merged

Updated Backup section #4103

merged 10 commits into from
Jul 24, 2020

Conversation

benarent
Copy link
Contributor

A bunch of customers have been confused with our recommend backup instructions, I hope this makes things clearer.

@benarent benarent requested a review from webvictim as a code owner July 23, 2020 17:05
@benarent
Copy link
Contributor Author

@fspmarshall @awly PTAL: as I've incorporated some of your recent feedback and suggestions.

Copy link
Contributor

@awly awly left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR made me realize how incoherent our backup/restore story is.
We leak too much implementation detail to the user and don't have good naming for various pieces of data we store.

It also doesn't seem to be possible to migrate audit log or session recordings between backends.


| Backend | Recommend Backup Strategy |
|-|-|
| dir ( local filesystem ) | Copy `data_dir/storage` and use `tctl get all` to get local state. |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd rephrase the strategy as: "Backup /var/lib/teleport/storage directory and the output of tctl get all".
Also, if a user backs up /var/lib/teleport, is there any reason to do tctl get all?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the idea with tctl get all was that the format would be YAML and therefore backend agnostic, so theoretically you could dump out the CAs, users etc and then restore these into a different backend.

Copy link
Contributor

@travelton travelton left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nits

@webvictim
Copy link
Contributor

@travelton TIL about code suggestions...

mind-blown

benarent and others added 6 commits July 23, 2020 11:35
Co-authored-by: Travis Swientek <tswientek@gravitational.com>
Co-authored-by: Gus Luxton <gus@gravitational.com>
Co-authored-by: Gus Luxton <gus@gravitational.com>
Co-authored-by: Travis Swientek <tswientek@gravitational.com>
Co-authored-by: Travis Swientek <tswientek@gravitational.com>
Co-authored-by: Travis Swientek <tswientek@gravitational.com>
@benarent
Copy link
Contributor Author

It also doesn't seem to be possible to migrate audit log or session recordings between backends.

Correct, it has been requested by customers before especially to load in session recordings into a Teleport UI. I think our stance has been, we recommend you ship it off to long term storage and use tsh play #1580

@benarent benarent requested a review from webvictim July 24, 2020 16:33
@webvictim
Copy link
Contributor

retest this please

Copy link
Contributor

@webvictim webvictim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, few last nits

Co-authored-by: Gus Luxton <gus@gravitational.com>
@benarent benarent merged commit 1077ceb into master Jul 24, 2020
@benarent benarent deleted the docs/benarent/backup branch July 24, 2020 18:47
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants