mirror of https://github.com/k3s-io/k3s
0647cff9ff
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Add azuredisk PV size grow feature **What this PR does / why we need it**: According to kubernetes/features#284, add size grow feature for azure disk **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes #56463 **Special notes for your reviewer**: - This feature is ony for azure managed disk, and if that disk is already attached to a running VM, disk resize will fail as following: ``` $ kubectl describe pvc pvc-azuredisk Events: Type Reason Age From Message ---- ------ ---- ---- ------- Warning VolumeResizeFailed 51s (x3 over 3m) volume_expand Error expanding volume "default/pvc-azuredisk" of plugin kubernetes.io/azure-disk : disk.DisksClient#CreateOrUpdate: Failure responding to request: StatusCode=409 -- Original Error: autorest/azure: Service returned an error. Status=409 Code="OperationNotAllowed" Message="Cannot resize disk andy-mg1102-dynamic-pvc-d2d00dd9-6185-11e8-a6c3-000d3a0643a8 while it is attached to running VM /subscriptions/.../resourceGroups/.../providers/Microsoft.Compute/virtualMachines/k8s-agentpool-17607330-0." ``` **How to use this feature** - `kubectl edit pvc pvc-azuredisk` to change azuredisk PVC size from 6GB to 10GB ``` # Please edit the object below. Lines beginning with a '#' will be ignored, # and an empty file will abort the edit. If an error occurs while saving this file will be # reopened with the relevant failures. # apiVersion: v1 kind: PersistentVolumeClaim metadata: annotations: ... volume.beta.kubernetes.io/storage-provisioner: kubernetes.io/azure-disk creationTimestamp: 2018-05-27T08:13:23Z finalizers: - kubernetes.io/pvc-protection name: pvc-azuredisk ... spec: accessModes: - ReadWriteOnce resources: requests: storage: 6Gi storageClassName: hdd volumeMode: Filesystem volumeName: pvc-d2d00dd9-6185-11e8-a6c3-000d3a0643a8 status: accessModes: - ReadWriteOnce capacity: storage: 6Gi conditions: - lastProbeTime: null lastTransitionTime: 2018-05-27T08:14:34Z message: Waiting for user to (re-)start a pod to finish file system resize of volume on node. status: "True" type: FileSystemResizePending phase: Bound ``` - After resized, `/mnt/disk` is still 6GB ``` $ kubectl exec -it nginx-azuredisk -- bash # df -h Filesystem Size Used Avail Use% Mounted on ... /dev/sdf 5.8G 15M 5.5G 1% /mnt/disk ... ``` - After user run `sudo resize2fs /dev/sdf` in agent node, `/mnt/disk` becomes 10GB now: ``` $ kubectl exec -it nginx-azuredisk -- bash # df -h Filesystem Size Used Avail Use% Mounted on ... /dev/sdf 9.8G 16M 9.3G 1% /mnt/disk ... ``` **Release note**: ``` Add azuredisk size grow feature ``` /sig azure /assign @feiskyer @karataliu @gnufied cc @khenidak |
||
---|---|---|
.. | ||
aws_ebs | ||
azure_dd | ||
azure_file | ||
cephfs | ||
cinder | ||
configmap | ||
csi | ||
downwardapi | ||
empty_dir | ||
fc | ||
flexvolume | ||
flocker | ||
gce_pd | ||
git_repo | ||
glusterfs | ||
host_path | ||
iscsi | ||
local | ||
nfs | ||
photon_pd | ||
portworx | ||
projected | ||
quobyte | ||
rbd | ||
scaleio | ||
secret | ||
storageos | ||
testing | ||
util | ||
validation | ||
vsphere_volume | ||
BUILD | ||
OWNERS | ||
doc.go | ||
metrics_cached.go | ||
metrics_du.go | ||
metrics_du_test.go | ||
metrics_errors.go | ||
metrics_nil.go | ||
metrics_nil_test.go | ||
metrics_statfs.go | ||
metrics_statfs_test.go | ||
plugins.go | ||
plugins_test.go | ||
volume.go | ||
volume_linux.go | ||
volume_unsupported.go |