You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/azure-arc/data/includes/azure-arc-data-preview-release.md
+32-30Lines changed: 32 additions & 30 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,6 @@ ms.date: 08/02/2022
10
10
At this time, a test or preview build is not available for the next release.
11
11
-->
12
12
13
-
14
13
The current test release published on September 27, 2022.
15
14
16
15
|Component|Value|
@@ -30,7 +29,7 @@ New for this release:
30
29
-->
31
30
32
31
- Arc-enabled SQL managed instance
33
-
- New reprovision replica task provides users a way to rebuild a broken sql instance replica. More infromation [below](#reprovision-replica).
32
+
- New reprovision replica task lets you rebuild a broken sql instance replica. For more information, see [Reprovision replica](#reprovision-replica).
34
33
35
34
<!--
36
35
- Arc-enabled PostgreSQL server
@@ -40,51 +39,53 @@ New for this release:
40
39
- Columns for release information added to the following commands: `az sql mi-arc list` this makes it easy to see what instance may need to be updated.
41
40
- Alternately you can run `az arcdata dc list-upgrades'
42
41
42
+
### Reprovision replica
43
43
44
-
# Reprovision Replica
44
+
The reprovision replica task lets you rebuild a broken sql instance replica. It is intended to be used for a replica that is failing to synchronize, perhaps due to corruption of the data on the persistent volumes (PV) for that instance, or due to some recurring SQL issue, for example.
45
45
46
-
The reprovision replica task provides users a way to rebuild a broken sql instance replica. It is intended to be used for a replica that is failing to synchronize, perhaps due to corruption of the data on the PV(s) for that instance, or due to some recurring SQL issue, etc.
46
+
Support for reprovisioning of a replicais provided only via `az` CLI and kube-native. There is no portal support.
47
47
48
-
Support for reprovisioning of a replica is provided only via az cli and kube-native. There is no portal support.
48
+
#### Prerequisites
49
49
50
-
## Prerequisites
51
50
Reprovisioning can only be performed on a multi-replica instance.
52
51
53
-
##How to request a reprovision
52
+
#### Request a reprovision replica
54
53
55
-
### Via CLI
54
+
Request provisioning [via `az`CLI](#via-az-cli) or [via `kubectl`](#via-kubectl).
56
55
57
-
```
56
+
##### Via `az` CLI
57
+
58
+
```az
58
59
az sql mi-arc reprovision-replica -n <instance_name-replica_number> -k <namespace> --use-k8s
59
60
```
60
61
61
62
For example, for replica 2 of instance mySqlInstance in namespace arc, the command would be:
62
63
63
-
```
64
+
```az
64
65
az sql mi-arc reprovision-replica -n mySqlInstance-2 -k arc --use-k8s
65
66
```
66
67
67
-
This will run until completion at which point the message displayed by the cli will be:
68
+
This runs until completion at which point the console returns:
68
69
69
-
```
70
+
```az
70
71
sql-reprov-replica-mySqlInstance-2-1664217002.376132 is Ready
71
72
```
72
73
73
-
Note that the name of the thing that is ready, is the kubernetes task. At this point you can either examine the task:
74
+
The name of the thing that is ready, is the kubernetes task. At this point you can either examine the task:
There is an optional --no-wait parameter for the cli. If you send the request with --no-wait, the output will include the name of the task to be monitored. For example:
86
+
There is an optional `--no-wait` parameter for the command. If you send the request with `--no-wait`, the output will include the name of the task to be monitored. For example:
86
87
87
-
```
88
+
```az
88
89
az sql mi-arc reprovision-replica -n mySqlInstance-2 -k arc --use-k8s --no-wait
89
90
Reprovisioning replica mySqlInstance-2 in namespace `arc`. Please use
90
91
`kubectl get -n arc SqlManagedInstanceReprovisionReplicaTask sql-reprov-replica-mySqlInstance-2-1664217434.531035`
@@ -93,10 +94,11 @@ to check its status or
93
94
to view all reprovision tasks.
94
95
```
95
96
96
-
### Via kubectl
97
+
#### Via kubectl
98
+
97
99
The CRD for reprovision replica is fairly simple. You can create a yaml file with this structure:
* The task should reject attempts to reprovision the current primary replica. If the current primary is believed to be corrupted and in need of reprovisioning, the user should fail over to a different primary and then request the reprovisioning.
133
+
- The task should reject attempts to reprovision the current primary replica. If the current primary is believed to be corrupted and in need of reprovisioning, the user should fail over to a different primary and then request the reprovisioning.
131
134
132
-
* Reprovisioning of multiple replicas in the same instance will serialize; the tasks will accumulate and be held in "Creating" state until the currently active task finishes *and is deleted*. There is no auto-cleanup of a completed task, so this serialization will affect the user even if they run the az command synchronously and wait for it to complete before requesting another reprovision. In all cases they will have to remove the task via kubectl before another reprovision on the same instance can run. **There is no warning about this, either in the az cli or in kubectl.**
135
+
- Reprovisioning of multiple replicas in the same instance will serialize; the tasks will accumulate and be held in "Creating" state until the currently active task finishes *and is deleted*. There is no auto-cleanup of a completed task, so this serialization will affect the user even if they run the az command synchronously and wait for it to complete before requesting another reprovision. In all cases they will have to remove the task via kubectl before another reprovision on the same instance can run. **There is no warning about this, either in the az cli or in kubectl.**
133
136
134
137
135
-
More about that second limitation: If you have multiple requests to reprovision a replica in one instance, you may see something like this in the output from a kubectl get SqlManagedInstanceReprovisionReplicaTask:
136
-
```
138
+
More about that second limitation: If you have multiple requests to reprovision a replica in one instance, you may see something like this in the output from a `kubectl get SqlManagedInstanceReprovisionReplicaTask`:
139
+
140
+
```console
137
141
kubectl get SqlManagedInstanceReprovisionReplicaTask -n arc
That last entry for replica c-sql-kkncursza-1, ```sql-reprov-replica-c-sql-kkncursza-1-1664217434.531035```, will stay in state Creating until the completed one ```sql-reprov-replica-c-sql-kkncursza-1-1664217002.376132``` is removed.
145
-
146
-
148
+
That last entry for replica c-sql-kkncursza-1, `sql-reprov-replica-c-sql-kkncursza-1-1664217434.531035`, will stay in status `Creating` until the completed one `sql-reprov-replica-c-sql-kkncursza-1-1664217002.376132` is removed.
0 commit comments