PostgreSQL-adatbázis migrálása Azure Arc-kompatibilis PostgreSQL-kiszolgálóra
Ez a dokumentum ismerteti a meglévő PostgreSQL-adatbázis (az Azure Arc-kompatibilis Data Servicesben nem üzemeltetett) Azure Arc-kompatibilis PostgreSQL-kiszolgálóba való beolvasásának lépéseit.
Feljegyzés
Előzetes verziójú funkcióként a cikkben bemutatott technológia a Microsoft Azure előzetes verziójának kiegészítő használati feltételeire vonatkozik.
A legújabb frissítések a kibocsátási megjegyzésekben érhetők el.
Megfontolások
Az Azure Arc-kompatibilis PostgreSQL-kiszolgáló a PostgreSQL közösségi verziója. Ezért az Azure Arcon kívüli PostgreSQL-en működő eszközöknek az Azure Arc-kompatibilis PostgreSQL-kiszolgálóval kell működnie.
Így a Postgreshez ma használt eszközökkel képesnek kell lennie a következőkre:
- A Postgres-adatbázis biztonsági mentése az Azure Arcon kívül üzemeltetett példányról
- Visszaállítás az Azure Arc-kompatibilis PostgreSQL-kiszolgálón
A következő teendők maradnak meg:
- a kiszolgáló paramétereinek alaphelyzetbe állítása
- biztonsági környezetek visszaállítása: felhasználók, szerepkörök és engedélyek visszaállítása...
A biztonsági mentési/visszaállítási művelet végrehajtásához bármely olyan eszközt használhat, amely képes a Postgres biztonsági mentésére/visszaállítására. Példa:
- Az Azure Data Studio és postgres-bővítménye
pgcli
pgAdmin
pg_dump
pg_restore
psql
- ...
Példa
Szemléltetjük ezeket a lépéseket az pgAdmin
eszközzel.
Fontolja meg a következő beállítást:
Forrás:
Egy olyan Postgres-kiszolgáló, amely egy operációs rendszer nélküli kiszolgálón fut a helyszínen, és JEANYDSRV néven van elnevezve. Ez a 14-es verzió, és egy MyOnPremPostgresDB nevű adatbázist üzemeltet, amely egy T1 táblával rendelkezik, amely 1 sorból állCélállomás:
Egy Postgres-kiszolgáló, amely egy Azure Arc-környezetben fut, és neve postgres01. Ez a 14-es verzió. A standard Postgres-adatbázison kívül nem rendelkezik adatbázissal.
Készítsen biztonsági másolatot a helyszíni forrásadatbázisról
Konfigurálja:
- Adjon neki egy fájlnevet: MySourceBackup
- Formátum beállítása egyénire
A biztonsági mentés sikeresen befejeződött:
Üres adatbázis létrehozása a célrendszeren az Azure Arc-kompatibilis PostgreSQL-kiszolgálón
Feljegyzés
Ha regisztrálni szeretne egy Postgres-példányt az pgAdmin
eszközben, a példány nyilvános IP-címét kell használnia a Kubernetes-fürtön, és megfelelően kell beállítania a port- és biztonsági környezetet. Ezeket a részleteket a psql
végpontsoron találja a következő parancs futtatása után:
az postgres server-arc endpoint list -n postgres01 --k8s-namespace <namespace> --use-k8s
A következő kimenetet adja vissza:
{
"instances": [
{
"endpoints": [
"Description": "PostgreSQL Instance",
"Endpoint": "postgresql://postgres:<replace with password>@12.345.123.456:1234"
},
{
"Description": "Log Search Dashboard",
"Endpoint": "https://12.345.123.456:12345/kibana/app/kibana#/discover?_a=(query:(language:kuery,query:'custom_resource_name:\"postgres01\"'))"
},
{
"Description": "Metrics Dashboard",
"Endpoint": "https://12.345.123.456:12345/grafana/d/postgres-metrics?var-Namespace=arc3&var-Name=postgres01"
}
],
"engine": "PostgreSql",
"name": "postgres01"
}
],
"namespace": "arc"
}
Nevezzük el a céladatbázist RESTORED_MyOnPremPostgresDB.
Az adatbázis visszaállítása az Arc-beállításban
A visszaállítás konfigurálása:
Mutasson a visszaállítandó biztonsági másolatot tartalmazó fájlra: MySourceBackup
A formátum beállítása egyéni vagy tar értékre
Kattintson a Visszaállítás gombra.
A visszaállítás sikeres.
Ellenőrizze, hogy az adatbázis sikeresen visszaállítva lett-e az Azure Arc-kompatibilis PostgreSQL-kiszolgálón
Használja az alábbi módszerek egyikét:
Feladó pgAdmin
:
Bontsa ki az Azure Arc-beállításban üzemeltetett Postgres-példányt. Megjelenik a visszaállított adatbázis táblája, és az adatok kiválasztásakor ugyanaz a sor jelenik meg, mint a helyszíni példányban:
Az Azure Arc beállításain psql
belül:
Az Arc-beállításon belül csatlakozhat a Postgres-példányhoz, beállíthatja az adatbázis-környezetetRESTORED_MyOnPremPostgresDB
, és lekérdezheti psql
az adatokat:
Sorolja fel a végpontokat a kapcsolati sztring kialakításához
psql
:az postgres server-arc endpoint list -n postgres01 --k8s-namespace <namespace> --use-k8s
{ "instances": [ { "endpoints": [ "Description": "PostgreSQL Instance", "Endpoint": "postgresql://postgres:<replace with password>@12.345.123.456:1234" }, { "Description": "Log Search Dashboard", "Endpoint": "https://12.345.123.456:12345/kibana/app/kibana#/discover?_a=(query:(language:kuery,query:'custom_resource_name:\"postgres01\"'))" }, { "Description": "Metrics Dashboard", "Endpoint": "https://12.345.123.456:12345/grafana/d/postgres-metrics?var-Namespace=arc3&var-Name=postgres01" } ], "engine": "PostgreSql", "name": "postgres01" } ], "namespace": "arc" }
psql
A kapcsolati sztring használja a-d
paramétert az adatbázis nevének jelzéséhez. Az alábbi paranccsal a rendszer kérni fogja a jelszót:psql -d RESTORED_MyOnPremPostgresDB -U postgres -h 10.0.0.4 -p 32639
psql
Összeköt.Password for user postgres: psql (10.12 (Ubuntu 10.12-0ubuntu0.18.04.1), server 12.3 (Debian 12.3-1.pgdg100+1)) WARNING: psql major version 10, server major version 12. Some psql features might not work. SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off) Type "help" for help. RESTORED_MyOnPremPostgresDB=#
Jelölje ki a táblát, és látni fogja a helyszíni Postgres-példányból visszaállított adatokat:
RESTORED_MyOnPremPostgresDB=# select * from t1;
col1 | col2 ------+------------- 1 | BobbyIsADog (1 row)
Feljegyzés
- Jelenleg nem lehet olyan meglévő Postgres-példányt "előkészíteni az Azure Arcba", amely a helyszínen vagy bármely más felhőben futna. Más szóval nem lehet telepíteni valamilyen "Azure Arc-ügynököt" a meglévő Postgres-példányra, hogy az Az Azure Arc által engedélyezett Postgres-beállítás legyen. Ehelyett létre kell hoznia egy új Postgres-példányt, és át kell vinnie az adatokat. Ehhez használhatja a fent bemutatott technikát, vagy bármilyen tetszőleges ETL-eszközt használhat.
*Ezekben a dokumentumokban hagyja ki a szakaszokat , jelentkezzen be az Azure Portalra, és hozzon létre egy Azure Database for PostgreSQL-t. Hajtsa végre az Azure Arc üzembe helyezésének hátralévő lépéseit. Ezek a szakaszok az Azure-felhőben PaaS-szolgáltatásként kínált Azure Database for PostgreSQL-kiszolgálóra vonatkoznak, de a dokumentumok egyéb részei közvetlenül az Azure Arc-kompatibilis PostgreSQL-kiszolgálóra vonatkoznak.