Skip to content

Commit

Permalink
Bring PVC Protection Feature to Beta
Browse files Browse the repository at this point in the history
The PR: kubernetes/kubernetes#59052
brought PVC Protection feature to beta.

That's why the documentation is updated accordingly.
  • Loading branch information
pospispa committed Jan 31, 2018
1 parent ee7ae1d commit 622d578
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 10 deletions.
4 changes: 2 additions & 2 deletions docs/admin/admission-controllers.md
Original file line number Diff line number Diff line change
Expand Up @@ -414,8 +414,8 @@ This admission controller also protects the access to `metadata.ownerReferences[
of an object, so that only users with "update" permission to the `finalizers`
subresource of the referenced *owner* can change it.

### Persistent Volume Claim Protection (alpha)
{% assign for_k8s_version="v1.9" %}{% include feature-state-alpha.md %}
### Persistent Volume Claim Protection (beta)
{% assign for_k8s_version="v1.10" %}{% include feature-state-beta.md %}
The `PVCProtection` plugin adds the `kubernetes.io/pvc-protection` finalizer to newly created Persistent Volume Claims (PVCs). In case a user deletes a PVC the PVC is not removed until the finalizer is removed from the PVC by PVC Protection Controller. Refer to the [PVC Protection](/docs/concepts/storage/persistent-volumes/#persistent-volume-claim-protection) for more detailed information.

### PersistentVolumeLabel
Expand Down
4 changes: 2 additions & 2 deletions docs/concepts/storage/persistent-volumes.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,13 +71,13 @@ Pods use claims as volumes. The cluster inspects the claim to find the bound vol
Once a user has a claim and that claim is bound, the bound PV belongs to the user for as long as they need it. Users schedule Pods and access their claimed PVs by including a `persistentVolumeClaim` in their Pod's volumes block. [See below for syntax details](#claims-as-volumes).

### Persistent Volume Claim Protection
{% assign for_k8s_version="v1.9" %}{% include feature-state-alpha.md %}
{% assign for_k8s_version="v1.10" %}{% include feature-state-beta.md %}
The purpose of the PVC protection is to ensure that PVCs in active use by a pod are not removed from the system as this may result in data loss.

**Note:** PVC is in active use by a pod when the the pod status is `Pending` and the pod is assigned to a node or the pod status is `Running`.
{: .note}

When the [PVC protection alpha feature](/docs/tasks/administer-cluster/pvc-protection/) is enabled, if a user deletes a PVC in active use by a pod, the PVC is not removed immediately. PVC removal is postponed until the PVC is no longer actively used by any pods.
When the [PVC protection beta feature](/docs/tasks/administer-cluster/pvc-protection/) is enabled, if a user deletes a PVC in active use by a pod, the PVC is not removed immediately. PVC removal is postponed until the PVC is no longer actively used by any pods.

You can see that a PVC is protected when the PVC's status is `Terminating` and the `Finalizers` list includes `kubernetes.io/pvc-protection`:
```shell
Expand Down
10 changes: 4 additions & 6 deletions docs/tasks/administer-cluster/pvc-protection.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,18 +6,16 @@ title: Persistent Volume Claim Protection
---

{% capture overview %}
{% assign for_k8s_version="v1.9" %}{% include feature-state-alpha.md %}
{% assign for_k8s_version="v1.10" %}{% include feature-state-beta.md %}

As of Kubernetes 1.9, persistent volume claims (PVCs) that are in active use by a pod can be protected from pre-mature removal.
As of Kubernetes 1.10, persistent volume claims (PVCs) that are in active use by a pod can be protected from pre-mature removal.

{% endcapture %}

{% capture prerequisites %}

- A v1.9 or higher Kubernetes must be installed.
- As PVC Protection is a Kubernetes v1.9 alpha feature it must be enabled:
1. [Admission controller](/docs/admin/admission-controllers/) must be started with the [PVC Protection plugin](/docs/admin/admission-controllers/#persistent-volume-claim-protection-alpha).
2. All Kubernetes components must be started with the `PVCProtection` alpha features enabled.
- A v1.10 or higher Kubernetes must be installed.
- The PVC Protection feature is enabled by default in Kubernetes v1.10 so it does not have to be enabled manually.

{% endcapture %}

Expand Down

0 comments on commit 622d578

Please sign in to comment.