mirror of
https://github.com/netbirdio/docs.git
synced 2026-10-17 19:19:04 +02:00
docs: separate the PostgreSQL prerequisite from the data migration step
This commit is contained in:
@@ -42,7 +42,7 @@ The example uses these names. Replace them with your own throughout:
|
||||
|
||||
Have these ready before you change anything on node 1:
|
||||
|
||||
1. **A highly available PostgreSQL endpoint, version 17 or later**, with an empty database and a user that owns it. The installer runs PostgreSQL 17, and its backup does not restore into an older version. Building a highly available PostgreSQL is outside this guide: use a managed service or your database team's platform, as described in [Step 1 of the High Availability guide](/selfhosted/maintenance/scaling/high-availability#step-1-make-postgre-sql-highly-available).
|
||||
1. **An empty, highly available PostgreSQL service to migrate into, version 17 or later**, with an empty database and a user that owns it. Step 1 moves your data there. The installer runs PostgreSQL 17, and its backup does not restore into an older version. Building a highly available PostgreSQL is outside this guide: use a managed service or your database team's platform, as described in [Step 1 of the High Availability guide](/selfhosted/maintenance/scaling/high-availability#step-1-make-postgre-sql-highly-available).
|
||||
2. **Redis and a three-node NATS cluster**, as described in [Steps 2 and 3](/selfhosted/maintenance/scaling/high-availability#step-2-set-up-a-redis-ha-endpoint) of the High Availability guide.
|
||||
3. **A load balancer** that supports HTTP/2 and gRPC, and a way to give it a TLS certificate for `app.example.com`, through its own ACME support or a certificate you upload. You configure its routing in Step 4.
|
||||
4. **A second host with Docker** for node 2.
|
||||
@@ -60,9 +60,9 @@ cp .env .env.single-node
|
||||
Do not `source` the installer's `.env` file in your shell. One of its values contains spaces, and the shell stops with `profile: command not found`. Read single values with `grep` instead, as the commands below do.
|
||||
</Warning>
|
||||
|
||||
## Step 1: Move the database
|
||||
## Step 1: Migrate your data to the shared PostgreSQL
|
||||
|
||||
The installer stores everything in its own PostgreSQL container, except the embedded identity provider, which keeps users and login sessions in an SQLite file, `idp.db`. This step moves both into your PostgreSQL endpoint. NetBird is down on node 1 until the step ends, which usually takes a few minutes.
|
||||
The installer's PostgreSQL runs in a container on node 1, so it goes down with node 1. It holds everything except the embedded identity provider's data: users and login sessions sit in an SQLite file, `idp.db`. This step copies both into the PostgreSQL service you prepared, and points NetBird at it. NetBird is down on node 1 until the step ends, which usually takes a few minutes.
|
||||
|
||||
1. Stop the NetBird server so nothing writes during the copy:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user