Backup and Restore
The way K3s is backed up and restored depends on which type of datastore is used.
In addition to backing up the datastore itself, you must also back up the server token file at /var/lib/rancher/k3s/server/token
.
You must restore this file, or pass its value into the --token
option, when restoring from backup.
If you do not use the same token value when restoring, the snapshot will be unusable, as the token is used to encrypt confidential data within the datastore itself.
Backup and Restore with SQLite
No special commands are required to back up or restore the SQLite datastore.
- To back up the SQLite datastore, take a copy of
/var/lib/rancher/k3s/server/db/
. - To restore the SQLite datastore, restore the contents of
/var/lib/rancher/k3s/server/db
(and the token, as discussed above).
Backup and Restore with External Datastore
When an external datastore is used, backup and restore operations are handled outside of K3s. The database administrator will need to back up the external database, or restore it from a snapshot or dump.
We recommend configuring the database to take recurring snapshots.
For details on taking database snapshots and restoring your database from them, refer to the official database documentation:
Backup and Restore with Embedded etcd Datastore
See the k3s etcd-snapshot
command documentation for information on performing backup and restore operations on the embedded etcd datastore.