Merge pull request 'Documentation changes for v0.8' (#394) from doc-0.8 into main
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #394
This commit is contained in:
commit
7291747a28
3 changed files with 41 additions and 7 deletions
|
@ -51,15 +51,15 @@ to store 2 TB of data in total.
|
||||||
|
|
||||||
## Get a Docker image
|
## Get a Docker image
|
||||||
|
|
||||||
Our docker image is currently named `dxflrs/amd64_garage` and is stored on the [Docker Hub](https://hub.docker.com/r/dxflrs/amd64_garage/tags?page=1&ordering=last_updated).
|
Our docker image is currently named `dxflrs/garage` and is stored on the [Docker Hub](https://hub.docker.com/r/dxflrs/garage/tags?page=1&ordering=last_updated).
|
||||||
We encourage you to use a fixed tag (eg. `v0.4.0`) and not the `latest` tag.
|
We encourage you to use a fixed tag (eg. `v0.8.0`) and not the `latest` tag.
|
||||||
For this example, we will use the latest published version at the time of the writing which is `v0.4.0` but it's up to you
|
For this example, we will use the latest published version at the time of the writing which is `v0.8.0` but it's up to you
|
||||||
to check [the most recent versions on the Docker Hub](https://hub.docker.com/r/dxflrs/amd64_garage/tags?page=1&ordering=last_updated).
|
to check [the most recent versions on the Docker Hub](https://hub.docker.com/r/dxflrs/garage/tags?page=1&ordering=last_updated).
|
||||||
|
|
||||||
For example:
|
For example:
|
||||||
|
|
||||||
```
|
```
|
||||||
sudo docker pull dxflrs/amd64_garage:v0.4.0
|
sudo docker pull dxflrs/garage:v0.8.0
|
||||||
```
|
```
|
||||||
|
|
||||||
## Deploying and configuring Garage
|
## Deploying and configuring Garage
|
||||||
|
@ -125,7 +125,7 @@ docker run \
|
||||||
-v /etc/garage.toml:/etc/garage.toml \
|
-v /etc/garage.toml:/etc/garage.toml \
|
||||||
-v /var/lib/garage/meta:/var/lib/garage/meta \
|
-v /var/lib/garage/meta:/var/lib/garage/meta \
|
||||||
-v /var/lib/garage/data:/var/lib/garage/data \
|
-v /var/lib/garage/data:/var/lib/garage/data \
|
||||||
lxpz/garage_amd64:v0.4.0
|
dxflrs/garage:v0.8.0
|
||||||
```
|
```
|
||||||
|
|
||||||
It should be restarted automatically at each reboot.
|
It should be restarted automatically at each reboot.
|
||||||
|
|
|
@ -16,7 +16,7 @@ The migration steps are as follows:
|
||||||
1. Do `garage repair --all-nodes --yes tables` and `garage repair --all-nodes --yes blocks`,
|
1. Do `garage repair --all-nodes --yes tables` and `garage repair --all-nodes --yes blocks`,
|
||||||
check the logs and check that all data seems to be synced correctly between
|
check the logs and check that all data seems to be synced correctly between
|
||||||
nodes. If you have time, do additional checks (`scrub`, `block_refs`, etc.)
|
nodes. If you have time, do additional checks (`scrub`, `block_refs`, etc.)
|
||||||
2. Disable api and web access. Garage does not support disabling
|
2. Disable API and web access. Garage does not support disabling
|
||||||
these endpoints but you can change the port number or stop your reverse
|
these endpoints but you can change the port number or stop your reverse
|
||||||
proxy for instance.
|
proxy for instance.
|
||||||
3. Check once again that your cluster is healty. Run again `garage repair --all-nodes --yes tables` which is quick.
|
3. Check once again that your cluster is healty. Run again `garage repair --all-nodes --yes tables` which is quick.
|
||||||
|
|
34
doc/book/working-documents/migration-08.md
Normal file
34
doc/book/working-documents/migration-08.md
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
+++
|
||||||
|
title = "Migrating from 0.7 to 0.8"
|
||||||
|
weight = 13
|
||||||
|
+++
|
||||||
|
|
||||||
|
**This guide explains how to migrate to 0.8 if you have an existing 0.7 cluster.
|
||||||
|
We don't recommend trying to migrate to 0.8 directly from 0.6 or older.**
|
||||||
|
|
||||||
|
**We make no guarantee that this migration will work perfectly:
|
||||||
|
back up all your data before attempting it!**
|
||||||
|
|
||||||
|
Garage v0.8 introduces new data tables that allow the counting of objects in buckets in order to implement bucket quotas.
|
||||||
|
A manual migration step is required to first count objects in Garage buckets and populate these tables with accurate data.
|
||||||
|
|
||||||
|
The migration steps are as follows:
|
||||||
|
|
||||||
|
1. Disable API and web access. Garage v0.7 does not support disabling
|
||||||
|
these endpoints but you can change the port number or stop your reverse proxy for instance.
|
||||||
|
2. Do `garage repair --all-nodes --yes tables` and `garage repair --all-nodes --yes blocks`,
|
||||||
|
check the logs and check that all data seems to be synced correctly between
|
||||||
|
nodes. If you have time, do additional checks (`scrub`, `block_refs`, etc.)
|
||||||
|
3. Check that queues are empty: run `garage stats` to query them or inspect metrics in the Grafana dashboard.
|
||||||
|
4. Turn off Garage v0.7
|
||||||
|
5. **Backup the metadata folder of all your nodes!** For instance, use the following command
|
||||||
|
if your metadata directory is `/var/lib/garage/meta`: `cd /var/lib/garage ; tar -acf meta-v0.7.tar.zst meta/`
|
||||||
|
6. Install Garage v0.8
|
||||||
|
7. **Before starting Garage v0.8**, run the offline migration step: `garage offline-repair --yes object_counters`.
|
||||||
|
This can take a while to run, depending on the number of objects stored in your cluster.
|
||||||
|
8. Turn on Garage v0.8
|
||||||
|
9. Do `garage repair --all-nodes --yes tables` and `garage repair --all-nodes --yes blocks`.
|
||||||
|
Wait for a full table sync to run.
|
||||||
|
10. Your upgraded cluster should be in a working state. Re-enable API and Web
|
||||||
|
access and check that everything went well.
|
||||||
|
11. Monitor your cluster in the next hours to see if it works well under your production load, report any issue.
|
Loading…
Reference in a new issue