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/active-directory/reports-monitoring/overview-activity-logs-in-azure-monitor.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -121,7 +121,7 @@ This section answers frequently asked questions and discusses known issues with
121
121
122
122
**Q: How much will it cost to store my data?**
123
123
124
-
**A**: The storage costs depend on both the size of your logs and the retention period you choose. For a list of the estimated costs for tenants, which depend on the volume of logs generated, go to the [Storage size for activity logs](https://review.docs.microsoft.com/en-us/azure/active-directory/reporting-azure-monitor-diagnostics-overview?branch=pr-en-us-47660#storage-size-for-activity-logs) section.
124
+
**A**: The storage costs depend on both the size of your logs and the retention period you choose. For a list of the estimated costs for tenants, which depend on the volume of logs generated, see the [Storage size for activity logs](#storage-size-for-activity-logs) section.
Copy file name to clipboardExpand all lines: articles/active-directory/saas-apps/workfront-tutorial.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -114,7 +114,7 @@ In this section, you enable Azure AD single sign-on in the Azure portal and conf
114
114
b. In the **Identifier** textbox, type a URL using the following pattern: `https://<companyname>.attasksandbox.com/SAML2`
115
115
116
116
> [!NOTE]
117
-
> These values are not real. Update these values with the actual Sign-On URL and Identifier. Contact [Workfront Client support team](https://www.workfront.com/contact-us/) to get these values.
117
+
> These values are not real. Update these values with the actual Sign-On URL and Identifier. Contact [Workfront Client support team](https://www.workfront.com/services-and-support) to get these values.
118
118
119
119
1. On the **SAML Signing Certificate** section, click **Certificate(Base64)** and then save the Certificate file on your computer.
Copy file name to clipboardExpand all lines: articles/aks/azure-files-dynamic-pv.md
+99-36Lines changed: 99 additions & 36 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,13 +3,11 @@ title: Use Azure File with AKS
3
3
description: Use Azure Disks with AKS
4
4
services: container-service
5
5
author: iainfoulds
6
-
manager: jeconnoc
7
6
8
7
ms.service: container-service
9
8
ms.topic: article
10
-
ms.date: 05/21/2018
9
+
ms.date: 08/15/2018
11
10
ms.author: iainfou
12
-
ms.custom: mvc
13
11
---
14
12
15
13
# Persistent volumes with Azure files
@@ -18,33 +16,32 @@ A persistent volume is a piece of storage that has been created for use in a Kub
18
16
19
17
For more information on Kubernetes persistent volumes, including static creation, see [Kubernetes persistent volumes][kubernetes-volumes].
20
18
21
-
## Create storage account
19
+
## Create a storage account
22
20
23
-
When dynamically creating an Azure file share as a Kubernetes volume, any storage account can be used as long as it is in the AKS **node** resource group. This is the one with the `MC_` prefix that was created by the provisioning of the resources for the AKS cluster. Get the resource group name with the [az resource show][az-resource-show] command.
21
+
When dynamically creating an Azure file share as a Kubernetes volume, any storage account can be used as long as it is in the AKS **node** resource group. This group is the one with the *MC_* prefix that was created by the provisioning of the resources for the AKS cluster. Get the resource group name with the [az aks show][az-aks-show] command.
24
22
25
-
```azurecli-interactive
26
-
$ az resource show --resource-group myResourceGroup --name myAKSCluster --resource-type Microsoft.ContainerService/managedClusters --query properties.nodeResourceGroup -o tsv
23
+
```azurecli
24
+
$ az aks show --resource-group myResourceGroup --name myAKSCluster --query nodeResourceGroup -o tsv
27
25
28
26
MC_myResourceGroup_myAKSCluster_eastus
29
27
```
30
28
31
29
Use the [az storage account create][az-storage-account-create] command to create the storage account.
32
30
33
-
Update `--resource-group` with the name of the resource group gathered in the last step, and `--name` to a name of your choice.
31
+
Update `--resource-group` with the name of the resource group gathered in the last step, and `--name` to a name of your choice. Provide your own unique storage account name:
az storage account create --resource-group MC_myResourceGroup_myAKSCluster_eastus --name mystorageaccount --sku Standard_LRS
37
35
```
38
36
39
-
> Azure Files only currently work with standard storage. If you use premium storage, your volume will fail to provision.
37
+
> [!NOTE]
38
+
> Azure Files currently only work with Standard storage. If you use Premium storage, the volume fails to provision.
40
39
41
-
## Create storage class
40
+
## Create a storage class
42
41
43
-
A storage class is used to define how an Azure file share is created. A specific storage account can be specified in the class. If a storage account is not specified, a `skuName` and `location` must be specified, and all storage accounts in the associated resource group are evaluated for a match.
42
+
A storage class is used to define how an Azure file share is created. A storage account can be specified in the class. If a storage account is not specified, a *skuName* and *location* must be specified, and all storage accounts in the associated resource group are evaluated for a match. For more information on Kubernetes storage classes for Azure Files, see [Kubernetes Storage Classes][kubernetes-storage-classes].
44
43
45
-
For more information on Kubernetes storage classes for Azure files, see [Kubernetes Storage Classes][kubernetes-storage-classes].
46
-
47
-
Create a file named `azure-file-sc.yaml` and copy in the following manifest. Update the `storageAccount` with the name of your target storage account. See the [Mount options] section for more information on `mountOptions`.
44
+
Create a file named `azure-file-sc.yaml` and copy in the following example manifest. Update the *storageAccount* value with the name of your storage account created in the previous step. For more information on *mountOptions*, see the [Mount options][mount-options] section.
48
45
49
46
```yaml
50
47
kind: StorageClass
@@ -59,21 +56,57 @@ mountOptions:
59
56
- gid=1000
60
57
parameters:
61
58
skuName: Standard_LRS
59
+
storageAccount: mystorageaccount
62
60
```
63
61
64
-
Create the storage class with the [kubectl apply][kubectl-apply] command.
62
+
Create the storage class with the [kubectl apply][kubectl-apply] command:
65
63
66
-
```azurecli-interactive
64
+
```console
67
65
kubectl apply -f azure-file-sc.yaml
68
66
```
69
67
70
-
## Create persistent volume claim
68
+
## Create a cluster role and binding
69
+
70
+
AKS clusters use Kubernetes role-based access control (RBAC) to limit actions that can be performed. *Roles* define the permissions to grant, and *bindings* apply them to desired users. These assignments can be applied to a given namespace, or across the entire cluster. For more information, see [Using RBAC authorization][kubernetes-rbac].
71
+
72
+
To allow the Azure platform to create the required storage resources, create a *clusterrole* and *clusterrolebinding*. Create a file named `azure-pvc-roles.yaml` and copy in the following YAML:
73
+
74
+
```yaml
75
+
---
76
+
apiVersion: rbac.authorization.k8s.io/v1beta1
77
+
kind: ClusterRole
78
+
metadata:
79
+
name: system:azure-cloud-provider
80
+
rules:
81
+
- apiGroups: ['']
82
+
resources: ['secrets']
83
+
verbs: ['get','create']
84
+
---
85
+
apiVersion: rbac.authorization.k8s.io/v1beta1
86
+
kind: ClusterRoleBinding
87
+
metadata:
88
+
name: system:azure-cloud-provider
89
+
roleRef:
90
+
kind: ClusterRole
91
+
apiGroup: rbac.authorization.k8s.io
92
+
name: system:azure-cloud-provider
93
+
subjects:
94
+
- kind: ServiceAccount
95
+
name: persistent-volume-binder
96
+
namespace: kube-system
97
+
```
98
+
99
+
Assign the permissions with the [kubectl apply][kubectl-apply] command:
100
+
101
+
```console
102
+
kubectl apply -f azure-pvc-roles.yaml
103
+
```
71
104
72
-
A persistent volume claim (PVC) uses the storage class object to dynamically provision an Azure file share.
105
+
## Create a persistent volume claim
73
106
74
-
The following YAML can be used to create a persistent volume claim `5GB` in size with `ReadWriteMany` access. For more information on access modes, see the [Kubernetes persistent volume][access-modes] documentation.
107
+
A persistent volume claim (PVC) uses the storage class object to dynamically provision an Azure file share. The following YAML can be used to create a persistent volume claim *5GB* in size with *ReadWriteMany* access. For more information on access modes, see the [Kubernetes persistent volume][access-modes] documentation.
75
108
76
-
Create a file named `azure-file-pvc.yaml` and copy in the following YAML. Make sure that the `storageClassName` matches the storage class created in the last step.
109
+
Now create a file named `azure-file-pvc.yaml` and copy in the following YAML. Make sure that the *storageClassName* matches the storage class created in the last step:
77
110
78
111
```yaml
79
112
apiVersion: v1
@@ -89,19 +122,26 @@ spec:
89
122
storage: 5Gi
90
123
```
91
124
92
-
Create the persistent volume claim with the [kubectl apply][kubectl-apply] command.
125
+
Create the persistent volume claim with the [kubectl apply][kubectl-apply] command:
93
126
94
-
```azurecli-interactive
127
+
```console
95
128
kubectl apply -f azure-file-pvc.yaml
96
129
```
97
130
98
-
Once completed, the file share will be created. A Kubernetes secret is also created that includes connection information and credentials.
131
+
Once completed, the file share will be created. A Kubernetes secret is also created that includes connection information and credentials. You can use the [kubectl get][kubectl-get] command to view the status of the PVC:
132
+
133
+
```
134
+
$ kubectl get pvc azurefile
135
+
136
+
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
The following YAML creates a pod that uses the persistent volume claim `azurefile` to mount the Azure file share at the `/mnt/azure` path.
142
+
The following YAML creates a pod that uses the persistent volume claim *azurefile* to mount the Azure file share at the */mnt/azure* path.
103
143
104
-
Create a file named `azure-pvc-files.yaml`, and copy in the following YAML. Make sure that the `claimName` matches the PVC created in the last step.
144
+
Create a file named `azure-pvc-files.yaml`, and copy in the following YAML. Make sure that the *claimName* matches the PVC created in the last step.
105
145
106
146
```yaml
107
147
kind: Pod
@@ -123,15 +163,36 @@ spec:
123
163
124
164
Create the pod with the [kubectl apply][kubectl-apply] command.
125
165
126
-
```azurecli-interactive
166
+
```console
127
167
kubectl apply -f azure-pvc-files.yaml
128
168
```
129
169
130
-
You now have a running pod with your Azure disk mounted in the `/mnt/azure` directory. This configuration can be seen when inspecting your pod via `kubectl describe pod mypod`.
170
+
You now have a running pod with your Azure disk mounted in the */mnt/azure* directory. This configuration can be seen when inspecting your pod via `kubectl describe pod mypod`. The following condensed example output shows the volume mounted in the container:
/var/run/secrets/kubernetes.io/serviceaccount from default-token-8rv4z (ro)
184
+
[...]
185
+
Volumes:
186
+
volume:
187
+
Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
188
+
ClaimName: azurefile2
189
+
ReadOnly: false
190
+
[...]
191
+
```
131
192
132
193
## Mount options
133
194
134
-
Default fileMode and dirMode values differ between Kubernetes versions as described in the following table.
195
+
Default *fileMode* and *dirMode* values differ between Kubernetes versions as described in the following table.
135
196
136
197
| version | value |
137
198
| ---- | ---- |
@@ -141,7 +202,7 @@ Default fileMode and dirMode values differ between Kubernetes versions as descri
141
202
| v1.9.0 | 0700 |
142
203
| v1.9.1 or above | 0755 |
143
204
144
-
If using a cluster of version 1.8.5 or greater and dynamically creating the persistant volume with a storage class, mount options can be specified on the storage class object. The following example sets `0777`.
205
+
If using a cluster of version 1.8.5 or greater and dynamically creating the persistent volume with a storage class, mount options can be specified on the storage class object. The following example sets *0777*:
145
206
146
207
```yaml
147
208
kind: StorageClass
@@ -158,7 +219,7 @@ parameters:
158
219
skuName: Standard_LRS
159
220
```
160
221
161
-
If using a cluster of version 1.8.5 or greater and statically creating the persistant volume object, mount options need to be specified on the `PersistentVolume` object. for more information on statically creating a persistant volume, see [Static Persistent Volumes][pv-static].
222
+
If using a cluster of version 1.8.5 or greater and statically creating the persistent volume object, mount options need to be specified on the *PersistentVolume* object. for more information on statically creating a persistent volume, see [Static Persistent Volumes][pv-static].
162
223
163
224
```yaml
164
225
apiVersion: v1
@@ -181,7 +242,7 @@ spec:
181
242
- gid=1000
182
243
```
183
244
184
-
If using a cluster of version 1.8.0 - 1.8.4, a security context can be specified with the `runAsUser` value set to `0`. For more information on Pod security context, see [Configure a Security Context][kubernetes-security-context].
245
+
If using a cluster of version 1.8.0 - 1.8.4, a security context can be specified with the *runAsUser* value set to *0*. For more information on Pod security context, see [Configure a Security Context][kubernetes-security-context].
185
246
186
247
## Next steps
187
248
@@ -193,18 +254,20 @@ Learn more about Kubernetes persistent volumes using Azure Files.
0 commit comments