Skip to content

Commit 1c81ca6

Browse files
authored
Merge pull request #198262 from mayurigupta13/main
Update tutorial AKV secrets provider for GA
2 parents dfaaca4 + 870f17a commit 1c81ca6

File tree

3 files changed

+28
-20
lines changed

3 files changed

+28
-20
lines changed
50.5 KB
Loading
51.6 KB
Loading

articles/azure-arc/kubernetes/tutorial-akv-secrets-provider.md

Lines changed: 28 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
---
2-
title: Azure Key Vault Secrets Provider extension (Preview)
2+
title: Azure Key Vault Secrets Provider extension
33
description: Tutorial for setting up Azure Key Vault provider for Secrets Store CSI Driver interface as an extension on Azure Arc enabled Kubernetes cluster
44
services: azure-arc
55
ms.service: azure-arc
6-
ms.date: 11/15/2021
6+
ms.date: 5/13/2022
77
ms.topic: article
88
author: mayurigupta13
99
ms.author: mayg
1010
---
1111

12-
# Using Azure Key Vault Secrets Provider extension to fetch secrets into Arc clusters (Preview)
12+
# Using Azure Key Vault Secrets Provider extension to fetch secrets into Arc clusters
1313

1414
The Azure Key Vault Provider for Secrets Store CSI Driver allows for the integration of Azure Key Vault as a secrets store with a Kubernetes cluster via a [CSI volume](https://kubernetes-csi.github.io/docs/).
1515

@@ -25,10 +25,9 @@ The Azure Key Vault Provider for Secrets Store CSI Driver allows for the integra
2525
- OpenShift Kubernetes Distribution
2626
- Canonical Kubernetes Distribution
2727
- Elastic Kubernetes Service
28+
- Tanzu Kubernetes Grid
2829

2930

30-
[!INCLUDE [preview features note](./includes/preview/preview-callout.md)]
31-
3231
## Features
3332

3433
- Mounts secrets/keys/certs to pod using a CSI Inline volume
@@ -42,15 +41,24 @@ The Azure Key Vault Provider for Secrets Store CSI Driver allows for the integra
4241

4342
The following steps assume that you already have a cluster with supported Kubernetes distribution connected to Azure Arc.
4443

44+
To deploy using Azure portal, go to the cluster's **Extensions** blade under **Settings**. Click on **+Add** button.
45+
46+
[![Extensions located under Settings for Arc enabled Kubernetes cluster](media/tutorial-akv-secrets-provider/extension-install-add-button.jpg)](media/tutorial-akv-secrets-provider/extension-install-add-button.jpg#lightbox)
47+
48+
From the list of available extensions, select the **Azure Key Vault Secrets Provider** to deploy the latest version of the extension. You can also choose to customize the installation through the portal by changing the defaults on **Configuration** tab.
49+
50+
[![AKV Secrets Provider available as an extension by clicking on Add button on Extensions blade](media/tutorial-akv-secrets-provider/extension-install-new-resource.jpg)](media/tutorial-akv-secrets-provider/extension-install-new-resource.jpg#lightbox)
51+
52+
Alternatively, you can use the CLI experience captured below.
53+
4554
Set the environment variables:
4655
```azurecli-interactive
4756
export CLUSTER_NAME=<arc-cluster-name>
4857
export RESOURCE_GROUP=<resource-group-name>
4958
```
50-
While AKV secrets provider extension is in preview, the `az k8s-extension create` command only accepts `preview` for the `--release-train` flag.
5159

5260
```azurecli-interactive
53-
az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.AzureKeyVaultSecretsProvider --release-train preview --name akvsecretsprovider
61+
az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.AzureKeyVaultSecretsProvider --name akvsecretsprovider
5462
```
5563

5664
The above will install the Secrets Store CSI Driver and the Azure Key Vault Provider on your cluster nodes. You should see output similar to the output shown below. It may take 3-5 minutes for the actual AKV secrets provider helm chart to get deployed to the cluster.
@@ -73,10 +81,10 @@ Note that only one instance of AKV secrets provider extension can be deployed on
7381
"type": "SystemAssigned"
7482
},
7583
"location": null,
76-
"name": "sscsi",
84+
"name": "akvsecretsprovider",
7785
"packageUri": null,
7886
"provisioningState": "Succeeded",
79-
"releaseTrain": "preview",
87+
"releaseTrain": "Stable",
8088
"resourceGroup": "$RESOURCE_GROUP",
8189
"scope": {
8290
"cluster": {
@@ -86,15 +94,15 @@ Note that only one instance of AKV secrets provider extension can be deployed on
8694
},
8795
"statuses": [],
8896
"systemData": {
89-
"createdAt": "2021-11-15T18:55:33.952130+00:00",
97+
"createdAt": "2022-05-12T18:35:56.552889+00:00",
9098
"createdBy": null,
9199
"createdByType": null,
92-
"lastModifiedAt": "2021-11-15T18:55:33.952130+00:00",
100+
"lastModifiedAt": "2022-05-12T18:35:56.552889+00:00",
93101
"lastModifiedBy": null,
94102
"lastModifiedByType": null
95103
},
96104
"type": "Microsoft.KubernetesConfiguration/extensions",
97-
"version": "1.0.0"
105+
"version": "1.1.3"
98106
}
99107
```
100108

@@ -135,7 +143,7 @@ After connecting your cluster to Azure Arc, create a json file with the followin
135143
}
136144
},
137145
"ReleaseTrain": {
138-
"defaultValue": "preview",
146+
"defaultValue": "stable",
139147
"type": "String",
140148
"metadata": {
141149
"description": "The release train."
@@ -199,7 +207,7 @@ You should see a JSON output similar to the output below:
199207
"name": "akvsecretsprovider",
200208
"packageUri": null,
201209
"provisioningState": "Succeeded",
202-
"releaseTrain": "preview",
210+
"releaseTrain": "Stable",
203211
"resourceGroup": "$RESOURCE_GROUP",
204212
"scope": {
205213
"cluster": {
@@ -209,15 +217,15 @@ You should see a JSON output similar to the output below:
209217
},
210218
"statuses": [],
211219
"systemData": {
212-
"createdAt": "2021-11-15T21:17:52.751916+00:00",
220+
"createdAt": "2022-05-12T18:35:56.552889+00:00",
213221
"createdBy": null,
214222
"createdByType": null,
215-
"lastModifiedAt": "2021-11-15T21:17:52.751916+00:00",
223+
"lastModifiedAt": "2022-05-12T18:35:56.552889+00:00",
216224
"lastModifiedBy": null,
217225
"lastModifiedByType": null
218226
},
219227
"type": "Microsoft.KubernetesConfiguration/extensions",
220-
"version": "1.0.0"
228+
"version": "1.1.3"
221229
}
222230
```
223231

@@ -307,11 +315,11 @@ spec:
307315
- "/bin/sleep"
308316
- "10000"
309317
volumeMounts:
310-
- name: secrets-store01-inline
318+
- name: secrets-store-inline
311319
mountPath: "/mnt/secrets-store"
312320
readOnly: true
313321
volumes:
314-
- name: secrets-store01-inline
322+
- name: secrets-store-inline
315323
csi:
316324
driver: secrets-store.csi.k8s.io
317325
readOnly: true
@@ -349,7 +357,7 @@ These settings can be changed either at the time of extension installation using
349357

350358
Use following command to add configuration settings while creating extension instance:
351359
```azurecli-interactive
352-
az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.AzureKeyVaultSecretsProvider --release-train preview --name akvsecretsprovider --configuration-settings secrets-store-csi-driver.enableSecretRotation=true secrets-store-csi-driver.rotationPollInterval=3m secrets-store-csi-driver.syncSecret.enabled=true
360+
az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.AzureKeyVaultSecretsProvider --name akvsecretsprovider --configuration-settings secrets-store-csi-driver.enableSecretRotation=true secrets-store-csi-driver.rotationPollInterval=3m secrets-store-csi-driver.syncSecret.enabled=true
353361
```
354362

355363
Use following command to update configuration settings of existing extension instance:

0 commit comments

Comments
 (0)