Skip to content

Commit 5200213

Browse files
committed
Continuing editing pass
1 parent 6592087 commit 5200213

File tree

1 file changed

+13
-15
lines changed

1 file changed

+13
-15
lines changed

articles/aks/csi-secrets-store-driver.md

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,15 @@ author: nickomang
55
ms.author: nickoman
66
ms.service: container-service
77
ms.topic: how-to
8-
ms.date: 01/24/2023
8+
ms.date: 01/25/2023
99
ms.custom: template-how-to, devx-track-azurecli
1010
---
1111

1212
# Use the Azure Key Vault Provider for Secrets Store CSI Driver in an AKS cluster
1313

14-
The Azure Key Vault Provider for Secrets Store CSI Driver allows for the integration of an Azure key vault as a secret store with an Azure Kubernetes Service (AKS) cluster via a [CSI volume][kube-csi] and has the following features:
14+
The Azure Key Vault Provider for Secrets Store CSI Driver allows for the integration of an Azure key vault as a secret store with an Azure Kubernetes Service (AKS) cluster via a [CSI volume][kube-csi].
15+
16+
## Features
1517

1618
* Mounts secrets, keys, and certificates to a pod by using a CSI volume
1719
* Supports CSI inline volumes
@@ -29,7 +31,7 @@ A container using subPath volume mount won't receive secret updates when it's ro
2931

3032
* If you don't have an Azure subscription, create a [free account](https://azure.microsoft.com/free/?WT.mc_id=A261C142F) before you begin.
3133
* Check that your version of the Azure CLI is 2.30.0 or later. If it's an earlier version, [install the latest version](/cli/azure/install-azure-cli).
32-
* If you're restricting Ingress to the cluster, check that ports **9808** and **8095** are open.
34+
* If you're restricting Ingress to the cluster, make sure ports **9808** and **8095** are open.
3335

3436
### Supported Kubernetes versions
3537

@@ -49,7 +51,7 @@ The minimum recommended Kubernetes version is based on the [rolling Kubernetes v
4951
az aks create -n myAKSCluster -g myResourceGroup --enable-addons azure-keyvault-secrets-provider --enable-managed-identity
5052
```
5153
52-
3. A user-assigned managed identity, named `azurekeyvaultsecretsprovider-*`, is created by the add-on to access Azure resources. The following example uses this identity to connect to the Azure key vault where the secrets will be stored, but you can also use other [identity access methods][identity-access-methods]. Take note of the identity's `clientId` in the output.
54+
3. A user-assigned managed identity, named `azureKeyvaultSecretsProvider`, is created by the add-on to access Azure resources. The following example uses this identity to connect to the Azure key vault where the secrets will be stored, but you can also use other [identity access methods][identity-access-methods]. Take note of the identity's `clientId` in the output.
5355
5456
```json
5557
...,
@@ -65,18 +67,14 @@ The minimum recommended Kubernetes version is based on the [rolling Kubernetes v
6567
6668
## Upgrade an existing AKS cluster with Azure Key Vault Provider for Secrets Store CSI Driver support
6769
68-
* Upgrade an existing AKS cluster with Azure Key Vault Provider for Secrets Store CSI Driver capability using the [`az aks enable-addons`][az-aks-enable-addons] command with the `azure-keyvault-secrets-provider` add-on.
70+
* Upgrade an existing AKS cluster with Azure Key Vault Provider for Secrets Store CSI Driver capability using the [`az aks enable-addons`][az-aks-enable-addons] command with the `azure-keyvault-secrets-provider` add-on. The add-on creates a user-assigned managed identity you can use to authenticate to your Azure key vault.
6971
7072
```azurecli-interactive
7173
az aks enable-addons --addons azure-keyvault-secrets-provider --name myAKSCluster --resource-group myResourceGroup
7274
```
7375
74-
As mentioned in the preceding section, the add-on creates a user-assigned managed identity that you can use to authenticate to your Azure key vault.
75-
7676
## Verify the Azure Key Vault Provider for Secrets Store CSI Driver installation
7777
78-
The preceding command installs the Secrets Store CSI Driver and the Azure Key Vault Provider on your nodes.
79-
8078
* Verify the installation is finished using the `kubectl get pods` command to list all pods that have the `secrets-store-csi-driver` and `secrets-store-provider-azure` labels in the kube-system namespace, and ensure that your output looks similar to the following output:
8179
8280
```bash
@@ -91,13 +89,13 @@ The preceding command installs the Secrets Store CSI Driver and the Azure Key Va
9189
aks-secrets-store-provider-azure-f5qlm 1/1 Running 0 4m25s
9290
```
9391
94-
Make sure there's a Secrets Store CSI Driver pod and a Secrets Store Provider Azure pod running on each node in your cluster's node pools.
92+
* Verify that each node in your cluster's node pool has a Secrets Store CSI Driver pod and a Secrets Store Provider Azure pod running.
9593
9694
## Create or use an existing Azure key vault
9795
98-
In addition to an AKS cluster, you'll need an Azure key vault resource that stores the secret content. Keep in mind that the key vault's name must be globally unique.
96+
In addition to an AKS cluster, you'll need an Azure key vault resource that stores the secret content.
9997
100-
1. Create an Azure key vault using the [`az keyvault create`][az-keyvault-create] command.
98+
1. Create an Azure key vault using the [`az keyvault create`][az-keyvault-create] command. The name of the key vault must be globally unique.
10199
102100
```azurecli
103101
az keyvault create -n <keyvault-name> -g myResourceGroup -l eastus2
@@ -229,7 +227,7 @@ You might want to create a Kubernetes secret to mirror the mounted content. When
229227
> [!NOTE]
230228
> The YAML examples here are incomplete. You'll need to modify them to support your chosen method of access to your key vault identity. For details, see [Provide an identity to access the Azure Key Vault Provider for Secrets Store CSI Driver][identity-access-methods].
231229
232-
The secrets will sync only after you start a pod to mount them. Relying only on syncing with the Kubernetes secrets feature doesn't work. When all the pods that consume the secret are deleted, the Kubernetes secret is also deleted.
230+
The secrets will sync only after you start a pod to mount them. Relying only on syncing with the Kubernetes secrets feature doesn't work. When the pods that consume the secret are deleted, the Kubernetes secret is also deleted.
233231
234232
```yml
235233
apiVersion: secrets-store.csi.x-k8s.io/v1
@@ -299,7 +297,7 @@ Metrics are served via Prometheus from port 8898, but this port isn't exposed ou
299297
kubectl port-forward -n kube-system ds/aks-secrets-store-provider-azure 8898:8898 & curl localhost:8898/metrics
300298
```
301299

302-
The following table lists the metrics that are provided by the Azure Key Vault Provider for Secrets Store CSI Driver:
300+
#### Metrics provided by the Azure Key Vault Provider for Secrets Store CSI Driver
303301

304302
|Metric|Description|Tags|
305303
|----|----|----|
@@ -317,7 +315,7 @@ Metrics are served from port 8095, but this port isn't exposed outside the pod b
317315
curl localhost:8095/metrics
318316
```
319317

320-
The following table lists the metrics provided by the Secrets Store CSI Driver:
318+
#### Metrics provided by the Secrets Store CSI Driver
321319

322320
|Metric|Description|Tags|
323321
|----|----|----|

0 commit comments

Comments
 (0)