Skip to content

Commit 3fb2211

Browse files
tcpdumpfbackethild42
authored andcommitted
Duplication
1 parent d037863 commit 3fb2211

File tree

6 files changed

+1020
-0
lines changed

6 files changed

+1020
-0
lines changed
Lines changed: 170 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,170 @@
1+
---
2+
title: "How to move a database service from a single AZ region to a 3-AZ region"
3+
excerpt: "Learn how to move your OVHcloud Public Cloud Database from a single AZ to a 3-AZ region and ensure high availability"
4+
updated: 2025-07-14
5+
---
6+
7+
## Objective
8+
9+
OVHcloud Public Cloud Databases can be deployed with different architectures to meet varied needs for availability and resilience. This guide is specifically designed to walk you through the migration of your existing database service from a single availability zone (1-AZ) configuration to a 3-AZ architecture (three availability zones). You'll discover the detailed steps to perform this transfer, ensuring high availability and improved fault tolerance for your critical applications.
10+
11+
## Requirements
12+
13+
- A [Public Cloud project](/links/public-cloud/public-cloud) in your OVHcloud account
14+
- Access to the [OVHcloud Control Panel](/links/manager) or to the [OVHcloud API](/links/api)
15+
- An existing database service deployed in a single availability zone (1-AZ)
16+
- A 3-AZ region activated within your Public Cloud project
17+
18+
## Why move to 3-AZ?
19+
20+
Migrating your database service to a 3-AZ deployment significantly enhances its resilience, high availability, and disaster recovery capabilities. In a 3-AZ setup, your data is synchronously replicated across three distinct availability zones within the same region. This architecture ensures that in the event of an outage in one zone, your database service can automatically failover to another operational zone with minimal downtime and no data loss.
21+
22+
For more detailed information on the deployment modes and their technical specifications, please refer to our dedicated guide: [Comparison of Public Cloud Databases Deployment Modes - Understanding 3-AZ / 1-AZ](/pages/public_cloud/public_cloud_databases/databases_18_regions_comparison).
23+
24+
## Instructions
25+
26+
### Move an engine instance to 3-AZ
27+
28+
> [!tabs]
29+
> Via the OVHcloud Control Panel
30+
>> To move a database service from a 1-AZ to a 3-AZ region, log in to the OVHcloud Control Panel and open your Public Cloud project. Click `Databases`{.action} in the left navigation bar, select your engine instance then click the `Backups`{.action} tab.
31+
>>
32+
>> ![databases - select engines instances and go to the backups section](images/databases_select_cluster.png)
33+
>>
34+
>> Choose the backup from which you wish to fork, click on the `...`{.action} button and click on the `Duplicate (fork)`{.action} button.
35+
>>
36+
>> ![databases - click on the duplicate button](images/databases_fork_backup.png)
37+
>>
38+
>> Select the Restore point named `Backup`{.action}.
39+
>>
40+
>> ![databases fork - select backup for the restore point part](images/databases_fork_restore_point.png)
41+
>>
42+
>> Select your `plan`{.action} for the engine instance.
43+
>>
44+
>> ![databases fork - select your plan](images/databases_fork_plan.png)
45+
>>
46+
>> Select a `3-AZ region`{.action}.
47+
>>
48+
>> ![databases fork - select your 3-AZ region](images/databases_fork_region.png)
49+
>>
50+
>> Select the `node type`{.action} for the engine instance.
51+
>>
52+
>> ![databases fork - select the node type](images/databases_fork_node_type.png)
53+
>>
54+
>> If needed, you can configure additional storage and connectivity settings, then verify the IP addresses to whitelist (the list is pre-filled by default with the origin service's configuration).
55+
>>
56+
>> ![databases fork - select optional fields](images/databases_fork_optional.png)
57+
>>
58+
>> When you have completed your configuration, click on the `Order`{.action} button.
59+
>>
60+
>> ![databases fork - select optional fields](images/databases_fork_order.png)
61+
>>
62+
> Via the OVHcloud API
63+
>> > [!primary]
64+
>> >
65+
>> > To interact with your Public Cloud Databases services via the OVHcloud API, make sure you've mastered the basics first by consulting our guide: [Public CLoud Databases - Getting started with APIs](/pages/public_cloud/public_cloud_databases/databases_02_order_api).
66+
>> >
67+
>>
68+
>> To find the backup ID of an engine instance, use this following API call:
69+
>>
70+
>> > [!api]
71+
>> >
72+
>> > @api {v1} /cloud GET /cloud/project/{serviceName}/database/postgresql/{clusterId}/backup
73+
>> >
74+
>>
75+
>> This call retrieves the backup list of the engine instance concerned. They are listed in order from the most recent backup to the oldest.
76+
>>
77+
>> If you want to check the information on a particular backup, you can use this API call:
78+
>>
79+
>> > [!api]
80+
>> >
81+
>> > @api {v1} /cloud GET /cloud/project/{serviceName}/database/postgresql/{clusterId}/backup/{backupId}
82+
>> >
83+
>>
84+
>> To create your engine instance from one backup, use the following API call:
85+
>>
86+
>> > [!api]
87+
>> >
88+
>> > @api {v1} /cloud POST /cloud/project/{serviceName}/database/postgresql
89+
>> >
90+
>>
91+
>> An example of a `body` for this API call:
92+
>>
93+
>> > [!warning]
94+
>> >
95+
>> > The field named `backup` is deprecated and replaced by `forkFrom`.
96+
>> >
97+
>>
98+
>> ```console
99+
>> body : {
100+
>> "backups": {
101+
>> "regions": [
102+
>> "EU-WEST-PAR" # Regions on which the backups are stored
103+
>> ],
104+
>> "time": "15:04:05" # Time on which backups start every day
105+
>> },
106+
>> "disk": {
107+
>> "size": 80 # Service disk size
108+
>> },
109+
>> "forkFrom": {
110+
>> "backupId": "********-****-****-****-3684de51065d", # the previously recovered ID of the backup
111+
>> "serviceId": "********-****-****-****-ce179babccf3" # the id of the engine instance to which this backup belongs
112+
>> },
113+
>> "maintenanceTime": "15:04:05", # Time on which maintenances can start every day
114+
>> "nodePattern": { # Pattern definition of the nodes in the cluster, not compatible with nodesList
115+
>> "flavor": "db1-4",
116+
>> "number": 2,
117+
>> "region": "EU-WEST-PAR"
118+
>> },
119+
>> "plan": "business",
120+
>> "version": "16"
121+
>> }
122+
>> ```
123+
>>
124+
125+
### Validate the deployment
126+
127+
After your new 3-AZ database service has been successfully provisioned, it's crucial to validate its deployment and ensure your applications can connect to it.
128+
129+
1\. Test the connection to your new service:
130+
131+
- Use a database client (e.g., psql for PostgreSQL, mysql for MySQL) or a simple script to verify that you can connect to the new 3-AZ service's endpoint using its credentials.
132+
- Confirm that your data has been successfully migrated and is accessible.
133+
134+
2\. Configure your application to use the new service:
135+
136+
- Update your application's configuration files or environment variables to point to the new 3-AZ database service's connection string (host, port, username, password).
137+
- Restart your application to apply the changes.
138+
- Thoroughly test your application's functionality to ensure it operates correctly with the new database endpoint.
139+
140+
### Clean up
141+
142+
Once you've fully validated that your application is working correctly with the new 3-AZ database service, and you're confident all data has been transferred and is accessible, you can proceed with deleting the old 1-AZ service.
143+
144+
This step is crucial to avoid unnecessary costs and maintain a clean infrastructure.
145+
146+
Follow these instructions to delete the old 1-AZ service:
147+
148+
> [!tabs]
149+
> Via the OVHcloud Control Panel
150+
>> Navigate to your list of engine instances, click on the `...`{.action} button on the engine instance line and click on the `Delete`{.action} button to permanently delete the service.
151+
>>
152+
>> ![databases - delete the 1-AZ engine instance](images/databases_delete_1-AZ.png)
153+
>>
154+
> Via the OVHcloud API
155+
>> To delete your engine instance, use the following API call:
156+
>>
157+
>> > [!api]
158+
>> >
159+
>> > @api {v1} /cloud DEL /cloud/project/{serviceName}/database/postgresql/{clusterId}
160+
>> >
161+
>>
162+
163+
164+
## We want your feedback!
165+
166+
We would love to help answer questions and appreciate any feedback you may have.
167+
168+
If you need training or technical assistance to implement our solutions, contact your sales representative or click on [this link](/links/professional-services) to get a quote and ask our Professional Services experts for a custom analysis of your project.
169+
170+
Are you on Discord? Connect to our channel at <https://discord.gg/PwPqWUpN8G> and interact directly with the team that builds our databases service!
Lines changed: 170 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,170 @@
1+
---
2+
title: "How to move a database service from a single AZ region to a 3-AZ region"
3+
excerpt: "Learn how to move your OVHcloud Public Cloud Database from a single AZ to a 3-AZ region and ensure high availability"
4+
updated: 2025-07-14
5+
---
6+
7+
## Objective
8+
9+
OVHcloud Public Cloud Databases can be deployed with different architectures to meet varied needs for availability and resilience. This guide is specifically designed to walk you through the migration of your existing database service from a single availability zone (1-AZ) configuration to a 3-AZ architecture (three availability zones). You'll discover the detailed steps to perform this transfer, ensuring high availability and improved fault tolerance for your critical applications.
10+
11+
## Requirements
12+
13+
- A [Public Cloud project](/links/public-cloud/public-cloud) in your OVHcloud account
14+
- Access to the [OVHcloud Control Panel](/links/manager) or to the [OVHcloud API](/links/api)
15+
- An existing database service deployed in a single availability zone (1-AZ)
16+
- A 3-AZ region activated within your Public Cloud project
17+
18+
## Why move to 3-AZ?
19+
20+
Migrating your database service to a 3-AZ deployment significantly enhances its resilience, high availability, and disaster recovery capabilities. In a 3-AZ setup, your data is synchronously replicated across three distinct availability zones within the same region. This architecture ensures that in the event of an outage in one zone, your database service can automatically failover to another operational zone with minimal downtime and no data loss.
21+
22+
For more detailed information on the deployment modes and their technical specifications, please refer to our dedicated guide: [Comparison of Public Cloud Databases Deployment Modes - Understanding 3-AZ / 1-AZ](/pages/public_cloud/public_cloud_databases/databases_18_regions_comparison).
23+
24+
## Instructions
25+
26+
### Move an engine instance to 3-AZ
27+
28+
> [!tabs]
29+
> Via the OVHcloud Control Panel
30+
>> To move a database service from a 1-AZ to a 3-AZ region, log in to the OVHcloud Control Panel and open your Public Cloud project. Click `Databases`{.action} in the left navigation bar, select your engine instance then click the `Backups`{.action} tab.
31+
>>
32+
>> ![databases - select engines instances and go to the backups section](images/databases_select_cluster.png)
33+
>>
34+
>> Choose the backup from which you wish to fork, click on the `...`{.action} button and click on the `Duplicate (fork)`{.action} button.
35+
>>
36+
>> ![databases - click on the duplicate button](images/databases_fork_backup.png)
37+
>>
38+
>> Select the Restore point named `Backup`{.action}.
39+
>>
40+
>> ![databases fork - select backup for the restore point part](images/databases_fork_restore_point.png)
41+
>>
42+
>> Select your `plan`{.action} for the engine instance.
43+
>>
44+
>> ![databases fork - select your plan](images/databases_fork_plan.png)
45+
>>
46+
>> Select a `3-AZ region`{.action}.
47+
>>
48+
>> ![databases fork - select your 3-AZ region](images/databases_fork_region.png)
49+
>>
50+
>> Select the `node type`{.action} for the engine instance.
51+
>>
52+
>> ![databases fork - select the node type](images/databases_fork_node_type.png)
53+
>>
54+
>> If needed, you can configure additional storage and connectivity settings, then verify the IP addresses to whitelist (the list is pre-filled by default with the origin service's configuration).
55+
>>
56+
>> ![databases fork - select optional fields](images/databases_fork_optional.png)
57+
>>
58+
>> When you have completed your configuration, click on the `Order`{.action} button.
59+
>>
60+
>> ![databases fork - select optional fields](images/databases_fork_order.png)
61+
>>
62+
> Via the OVHcloud API
63+
>> > [!primary]
64+
>> >
65+
>> > To interact with your Public Cloud Databases services via the OVHcloud API, make sure you've mastered the basics first by consulting our guide: [Public CLoud Databases - Getting started with APIs](/pages/public_cloud/public_cloud_databases/databases_02_order_api).
66+
>> >
67+
>>
68+
>> To find the backup ID of an engine instance, use this following API call:
69+
>>
70+
>> > [!api]
71+
>> >
72+
>> > @api {v1} /cloud GET /cloud/project/{serviceName}/database/postgresql/{clusterId}/backup
73+
>> >
74+
>>
75+
>> This call retrieves the backup list of the engine instance concerned. They are listed in order from the most recent backup to the oldest.
76+
>>
77+
>> If you want to check the information on a particular backup, you can use this API call:
78+
>>
79+
>> > [!api]
80+
>> >
81+
>> > @api {v1} /cloud GET /cloud/project/{serviceName}/database/postgresql/{clusterId}/backup/{backupId}
82+
>> >
83+
>>
84+
>> To create your engine instance from one backup, use the following API call:
85+
>>
86+
>> > [!api]
87+
>> >
88+
>> > @api {v1} /cloud POST /cloud/project/{serviceName}/database/postgresql
89+
>> >
90+
>>
91+
>> An example of a `body` for this API call:
92+
>>
93+
>> > [!warning]
94+
>> >
95+
>> > The field named `backup` is deprecated and replaced by `forkFrom`.
96+
>> >
97+
>>
98+
>> ```console
99+
>> body : {
100+
>> "backups": {
101+
>> "regions": [
102+
>> "EU-WEST-PAR" # Regions on which the backups are stored
103+
>> ],
104+
>> "time": "15:04:05" # Time on which backups start every day
105+
>> },
106+
>> "disk": {
107+
>> "size": 80 # Service disk size
108+
>> },
109+
>> "forkFrom": {
110+
>> "backupId": "********-****-****-****-3684de51065d", # the previously recovered ID of the backup
111+
>> "serviceId": "********-****-****-****-ce179babccf3" # the id of the engine instance to which this backup belongs
112+
>> },
113+
>> "maintenanceTime": "15:04:05", # Time on which maintenances can start every day
114+
>> "nodePattern": { # Pattern definition of the nodes in the cluster, not compatible with nodesList
115+
>> "flavor": "db1-4",
116+
>> "number": 2,
117+
>> "region": "EU-WEST-PAR"
118+
>> },
119+
>> "plan": "business",
120+
>> "version": "16"
121+
>> }
122+
>> ```
123+
>>
124+
125+
### Validate the deployment
126+
127+
After your new 3-AZ database service has been successfully provisioned, it's crucial to validate its deployment and ensure your applications can connect to it.
128+
129+
1\. Test the connection to your new service:
130+
131+
- Use a database client (e.g., psql for PostgreSQL, mysql for MySQL) or a simple script to verify that you can connect to the new 3-AZ service's endpoint using its credentials.
132+
- Confirm that your data has been successfully migrated and is accessible.
133+
134+
2\. Configure your application to use the new service:
135+
136+
- Update your application's configuration files or environment variables to point to the new 3-AZ database service's connection string (host, port, username, password).
137+
- Restart your application to apply the changes.
138+
- Thoroughly test your application's functionality to ensure it operates correctly with the new database endpoint.
139+
140+
### Clean up
141+
142+
Once you've fully validated that your application is working correctly with the new 3-AZ database service, and you're confident all data has been transferred and is accessible, you can proceed with deleting the old 1-AZ service.
143+
144+
This step is crucial to avoid unnecessary costs and maintain a clean infrastructure.
145+
146+
Follow these instructions to delete the old 1-AZ service:
147+
148+
> [!tabs]
149+
> Via the OVHcloud Control Panel
150+
>> Navigate to your list of engine instances, click on the `...`{.action} button on the engine instance line and click on the `Delete`{.action} button to permanently delete the service.
151+
>>
152+
>> ![databases - delete the 1-AZ engine instance](images/databases_delete_1-AZ.png)
153+
>>
154+
> Via the OVHcloud API
155+
>> To delete your engine instance, use the following API call:
156+
>>
157+
>> > [!api]
158+
>> >
159+
>> > @api {v1} /cloud DEL /cloud/project/{serviceName}/database/postgresql/{clusterId}
160+
>> >
161+
>>
162+
163+
164+
## We want your feedback!
165+
166+
We would love to help answer questions and appreciate any feedback you may have.
167+
168+
If you need training or technical assistance to implement our solutions, contact your sales representative or click on [this link](/links/professional-services) to get a quote and ask our Professional Services experts for a custom analysis of your project.
169+
170+
Are you on Discord? Connect to our channel at <https://discord.gg/PwPqWUpN8G> and interact directly with the team that builds our databases service!

0 commit comments

Comments
 (0)