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
@@ -28,14 +27,14 @@ If you don't want to store your backups in Azure Blob Storage, you can use MinIO
28
27
29
28
## Prerequisites
30
29
31
-
Complete these prerequisites before you begin your Velero deployment:
30
+
Before you begin, make sure you have the following prerequisites:
32
31
33
32
-[Install the Azure CLI](/cli/azure/install-azure-cli).
34
33
-[Install `Chocolatey`](https://chocolatey.org/install). You can use `Chocolatey` to [install the Velero client](https://community.chocolatey.org/packages/velero), which includes the Velero CLI, on a Windows machine.
35
34
36
35
## Install Velero with Azure Blob Storage
37
36
38
-
The procedures in this section describe how to install Velero and use Azure Blob Storage for backups. If you don't want to store your backups in Azure, go to[Install Velero with MiniO storage](#install-velero-with-minio-storage).
37
+
The procedures in this section describe how to install Velero and use Azure Blob Storage for backups. If you don't want to store your backups in Azure, see[Install Velero with MiniO storage](#install-velero-with-minio-storage).
39
38
40
39
1. Open PowerShell as an administrator.
41
40
@@ -56,7 +55,7 @@ The procedures in this section describe how to install Velero and use Azure Blob
56
55
57
56
1. If needed, change to the Azure subscription you want to use for the backups.
58
57
59
-
By default, Velero stores backups in the same Azure subscription as your VMs and disks and won't allow you to restore backups to a resource group in a different subscription. To enable backup and restore operations across subscriptions, specify a subscription to use for your backups. You can skip this step if you're already in the subscription you want to use for your backups.
58
+
By default, Velero stores backups in the same Azure subscription as your VMs and disks and doesn't allow you to restore backups to a resource group in a different subscription. To enable backup and restore operations across subscriptions, specify a subscription to use for your backups. You can skip this step if you're already in the subscription you want to use for your backups.
60
59
61
60
Switch to the subscription you want to use for your backups:
62
61
@@ -67,7 +66,7 @@ The procedures in this section describe how to install Velero and use Azure Blob
67
66
$AZURE_BACKUP_SUBSCRIPTION_ID=$(az account list --query="[?name=='$AZURE_BACKUP_SUBSCRIPTION_NAME'].id | [0]" -o tsv)
68
67
```
69
68
70
-
1. Then change the subscription:
69
+
1. Then, change the subscription:
71
70
72
71
```azurecli
73
72
az account set -s $AZURE_BACKUP_SUBSCRIPTION_ID
@@ -118,16 +117,16 @@ The procedures in this section describe how to install Velero and use Azure Blob
118
117
119
118
1. Create a service principal that has Contributor privileges.
120
119
121
-
You can create a service principal with the Contributor role or use a custom role:
120
+
You can create a service principal with the **Contributor** role, or use a custom role:
122
121
123
122
- **Contributor role:** The Contributor role grants subscription-wide access, so be sure protect this credential if you assign that role.
124
123
- **Custom role:** If you need a more restrictive role, use a custom role.
125
124
126
125
Assign the Contributor role:
127
126
128
-
If you'll be using Velero to back up multiple clusters with multiple blob containers, you may want to create a unique username for each cluster instead of using the name `velero`.
127
+
If you're using Velero to back up multiple clusters with multiple blob containers, you might want to create a unique username for each cluster instead of using the name `velero`.
129
128
130
-
To create a service principal with the Contributor role, use the following command. Substitute your own subscription ID and, optionally, your own service principal name. Microsoft Entra ID will generate a secret for you.
129
+
To create a service principal with the Contributor role, run the following command. Substitute your own subscription ID and optionally, your own service principal name. Microsoft Entra ID generates a secret for you:
- If you don't want to use `velero` as your service principal name, make sure the `--name` you choose is unique in Microsoft Entra ID and doesn't conflict with other service principals or app registrations.
143
+
- If you don't want to use `velero` as your service principal name, make sure the `--name` value you choose is unique in Microsoft Entra ID and doesn't conflict with other service principals or app registrations.
145
144
146
145
> [!IMPORTANT]
147
-
> The secret is shown only during this step, when the service principal is created. Be sure to make a note of the secret for use in future steps.
148
-
149
-
Use a custom role:
146
+
> The secret is only shown during this step, when the service principal is created. Be sure to make a note of the secret for use in future steps.
150
147
151
148
If you want to enable the minimum resource provider actions, create a custom role, and assign that role to the service principal.
152
149
@@ -208,17 +205,15 @@ The procedures in this section describe how to install Velero and use Azure Blob
208
205
```
209
206
210
207
> [!IMPORTANT]
211
-
> Delete this file after you install Velero. The client secret is in plaintext, which can pose a security risk.
208
+
> Delete this file after you install Velero. The client secret is in plain text, which can pose a security risk.
212
209
213
210
Before proceeding, verify that the file is properly formatted. The file name extension doesn't matter.
214
211
- Remove any extra spaces or tabs.
215
212
- Make sure the variable names are correct.
216
213
217
-
1. Install and start Velero.
218
-
219
-
Install Velero on the cluster, and start the deployment. This procedure creates a namespace called `velero` and adds a deployment named `velero` to the namespace.
214
+
1. Install Velero on the cluster, and start the deployment. This procedure creates a namespace called `velero` and adds a deployment named `velero` to the namespace.
220
215
221
-
1. Install Velero using the following command. You'll need to customize the example command.
216
+
1. Install Velero using the following command. Make sure to replace the placeholders in the example command with your own values:
@@ -230,7 +225,7 @@ The procedures in this section describe how to install Velero and use Azure Blob
230
225
231
226
- Be sure to include the `--use-restic` parameter to enable backup of Kubernetes volumes at the file system level using `Restic`. `Restic` can be used to back up any type of Kubernetes volume. By default, Velero supports taking snapshots of persistent volumes for Amazon EBS Volumes, Azure Managed Disks, and Google Persistent Disks. In AKS Arc, Kubernetes volumes use Cluster Shared Volumes (CSVs) to store data. Hence, `Restic` is needed to enable persistent volume snapshots. AKS Arc currently doesn't support volume snapshots.
232
227
233
-
- `subscriptionId=$AZURE_BACKUP_SUBSCRIPTION_ID` is optional. You only need to include it if Velero and the workload cluster have different subscription IDs. If they use the same Azure subscription, you can remove the `subscriptionId` parameter, and the **credentials-velero.txt** file will provide that information.
228
+
- `subscriptionId=$AZURE_BACKUP_SUBSCRIPTION_ID` is optional. You only need to include it if Velero and the workload cluster have different subscription IDs. If they use the same Azure subscription, you can remove the `subscriptionId` parameter, and the **credentials-velero.txt** file provides that information.
234
229
235
230
The Velero service starts automatically on installation.
236
231
@@ -249,7 +244,7 @@ The procedures in this section describe how to install Velero and use [MinIO](ht
249
244
250
245
If you don't want to store your backups in MinIO, go to [Set up Velero to use Azure Blob Storage](#install-velero-with-azure-blob-storage).
251
246
252
-
1. Install the Velero CLI by running the following command. [Install `Chocolately`](https://chocolatey.org/install) if you haven't already.
247
+
1. Install the Velero CLI by running the following command. [Install `Chocolately`](https://chocolatey.org/install) if you haven't already:
253
248
254
249
```powershell
255
250
choco install velero
@@ -322,7 +317,7 @@ If you don't want to store your backups in MinIO, go to [Set up Velero to use Az
322
317
mountPath: "/storage"
323
318
```
324
319
325
-
Then create the deployment:
320
+
Then, create the deployment:
326
321
327
322
```shell
328
323
kubectl create -f minio-deployment.yaml
@@ -347,21 +342,19 @@ If you don't want to store your backups in MinIO, go to [Set up Velero to use Az
347
342
app: minio
348
343
```
349
344
350
-
Then create the service:
345
+
Then, create the service:
351
346
352
347
```shell
353
348
kubectl create -f mino-service.yaml
354
349
```
355
350
356
-
1. Get the MinIO pod's external IP address by running the following command. You'll use that address to install Velero.
351
+
1. Get the MinIO pod's external IP address by running the following command. You use that address to install Velero:
357
352
358
-
```shell
353
+
```bash
359
354
kubectl get svc
360
355
```
361
356
362
-
1. To check whether MinIO is up and running, log in to the IP address in a browser, or use the MinIO client, as described below.
363
-
364
-
Install the MinIO client, and browse through the MinIO files.
357
+
1. To check whether MinIO is up and running, sign in to the IP address in a browser, or use the MinIO client, as described in this section. Install the MinIO client, and browse through the MinIO files.
365
358
366
359
Download the MinIO client:
367
360
@@ -387,7 +380,7 @@ If you don't want to store your backups in MinIO, go to [Set up Velero to use Az
387
380
mc mb minio/velero-backup
388
381
```
389
382
390
-
1. Create a MinIO credentials file **minio.credentials** with the following information:
383
+
1. Create a MinIO credentials file **minio.credentials** with the following contents:
391
384
392
385
```yaml
393
386
[default]
@@ -454,7 +447,7 @@ To restore a cluster, you must create a new cluster to restore the old cluster t
454
447
455
448
The `restore` command lets you restore all objects and persistent volumes from a previously created backup. You can also restore only a filtered subset of objects and persistent volumes. For more backup options, see [Resource filtering](https://velero.io/docs/v1.9/resource-filtering/).
456
449
457
-
On the cluster that you want to restore the backup to (the *destination cluster*):
450
+
On the cluster to which you want to restore the backup (the *destination cluster*):
458
451
459
452
1. Deploy Velero by using the instructions above. Use the same Azure credentials that you used for the source cluster.
460
453
@@ -477,13 +470,13 @@ To see all options associated with a specific Velero command, use the `--help` f
477
470
For example, to list all options of `velero restore`, run `velero restore --help`, which returns the following information:
The Kubernetes Secrets Store CSI Driver integrates secrets stores with Kubernetes through a [Container Storage Interface (CSI) volume](https://kubernetes-csi.github.io/docs/). If you integrate the Secrets Store CSI Driver with AKS on Windows Server, you can mount secrets, keys, and certificates as a volume. The data is then mounted in the container's file system.
18
+
The *Kubernetes Secrets Store CSI driver* integrates secrets stores with Kubernetes using a [Container Storage Interface (CSI) volume](https://kubernetes-csi.github.io/docs/). If you integrate the Secrets Store CSI driver with AKS on Windows Server, you can mount secrets, keys, and certificates as a volume. The data is then mounted in the container's file system.
19
19
20
20
With the Secrets Store CSI driver, you can also integrate a key vault with one of the supported providers, such as [Azure Key Vault](/azure/key-vault/general/overview).
21
21
@@ -105,7 +105,7 @@ az keyvault secret set --vault-name <keyvault-name> -n ExampleSecret --value MyA
105
105
106
106
## Create an identity in Azure
107
107
108
-
Use a service principal to access the Azure Key Vault instance that you created in the previous step. You should record the outputs when running the following commands. You use both the client secret and client ID in the next steps.
108
+
Use a service principal to access the Azure Key Vault instance that you created in the previous step. You should record the output when running the following commands. You use both the client secret and client ID in the next steps.
109
109
110
110
Provide the client secret by running the following command:
## Create and apply your own SecretProviderClass object
145
145
146
-
To use and configure the Secrets Store CSI driver for your Kubernetes cluster, create a `SecretProviderClass` custom resource. Ensure the `objects` array matches the objects you've stored in the Azure Key Vault instance:
146
+
To use and configure the Secrets Store CSI driver for your Kubernetes cluster, create a `SecretProviderClass` custom resource. Ensure the `objects` array matches the objects you stored in the Azure Key Vault instance:
147
147
148
148
```yaml
149
149
apiVersion: secrets-store.csi.x-k8s.io/v1alpha1
150
150
kind: SecretProviderClass
151
151
metadata:
152
-
name: <keyvault-name> # The name of the Azure Key Vault
152
+
name: <keyvault-name> # The name of the Azure key vault
153
153
namespace: kube-system
154
154
spec:
155
155
provider: azure
156
156
parameters:
157
-
keyvaultName: "<keyvault-name>"# The name of the Azure Key Vault
157
+
keyvaultName: "<keyvault-name>"# The name of the Azure key vault
158
158
useVMManagedIdentity: "false"
159
159
userAssignedIdentityID: "false"
160
-
cloudName: ""# [OPTIONAL for Azure] if not provided, Azure environment defaults to AzurePublicCloud
160
+
cloudName: ""# [OPTIONAL for Azure] if not provided, the Azure environment defaults to AzurePublicCloud
161
161
objects: |
162
162
array:
163
163
- |
164
164
objectName: <secret-name> # In this example, 'ExampleSecret'
165
165
objectType: secret # Object types: secret, key or cert
166
166
objectVersion: "" # [OPTIONAL] object versions, default to latest if empty
167
-
tenantId: "<tenant-id>"#the tenant ID containing the Azure Key Vault instance
167
+
tenantId: "<tenant-id>"#The tenant ID containing the Azure Key Vault instance
0 commit comments