diff --git a/roles/kubernetes-apps/ansible/templates/coredns-deployment.yml.j2 b/roles/kubernetes-apps/ansible/templates/coredns-deployment.yml.j2
index e2e10ebd5f36f67d47005e95907ef2407534cf15..270fbf18d42d6acdca58ae87718e1b8829c07d47 100644
--- a/roles/kubernetes-apps/ansible/templates/coredns-deployment.yml.j2
+++ b/roles/kubernetes-apps/ansible/templates/coredns-deployment.yml.j2
@@ -49,11 +49,7 @@ spec:
           - weight: 100
             preference:
               matchExpressions:
-{% if kube_version is version('v1.20.0', '<') %}
-              - key: node-role.kubernetes.io/master
-{% else %}
               - key: node-role.kubernetes.io/control-plane
-{% endif %}
                 operator: In
                 values:
                 - ""
diff --git a/roles/kubernetes-apps/ansible/templates/dns-autoscaler.yml.j2 b/roles/kubernetes-apps/ansible/templates/dns-autoscaler.yml.j2
index e09a87341e16f813a2d47685f1fa74ac194627f3..d6cba1dd7b1e8ba988980683336ee9ff875b7a93 100644
--- a/roles/kubernetes-apps/ansible/templates/dns-autoscaler.yml.j2
+++ b/roles/kubernetes-apps/ansible/templates/dns-autoscaler.yml.j2
@@ -57,11 +57,7 @@ spec:
           - weight: 100
             preference:
               matchExpressions:
-{% if kube_version is version('v1.20.0', '<') %}
-              - key: node-role.kubernetes.io/master
-{% else %}
               - key: node-role.kubernetes.io/control-plane
-{% endif %}
                 operator: In
                 values:
                 - ""
diff --git a/roles/kubernetes-apps/cloud_controller/oci/templates/oci-cloud-provider.yml.j2 b/roles/kubernetes-apps/cloud_controller/oci/templates/oci-cloud-provider.yml.j2
index 071432401fb641e6c7277f4395b0b1ea2fee4a33..bacd1e95c6c760efbc9c9c13ce277c019722ed20 100644
--- a/roles/kubernetes-apps/cloud_controller/oci/templates/oci-cloud-provider.yml.j2
+++ b/roles/kubernetes-apps/cloud_controller/oci/templates/oci-cloud-provider.yml.j2
@@ -36,11 +36,7 @@ spec:
       hostNetwork: true
       dnsPolicy: ClusterFirstWithHostNet
       nodeSelector:
-{% if kube_version is version('v1.20.0', '<') %}
-        node-role.kubernetes.io/master: ""
-{% else %}
         node-role.kubernetes.io/control-plane: ""
-{% endif %}
       tolerations:
       - key: node.cloudprovider.kubernetes.io/uninitialized
         value: "true"
diff --git a/roles/kubernetes-apps/container_runtimes/crun/templates/runtimeclass-crun.yml b/roles/kubernetes-apps/container_runtimes/crun/templates/runtimeclass-crun.yml
index c162731054926322ae13d1b0dbcab1f08b5682bf..99d97e677d5f6b1153487114078da39d10dbdffe 100644
--- a/roles/kubernetes-apps/container_runtimes/crun/templates/runtimeclass-crun.yml
+++ b/roles/kubernetes-apps/container_runtimes/crun/templates/runtimeclass-crun.yml
@@ -1,6 +1,6 @@
 ---
 kind: RuntimeClass
-apiVersion: node.k8s.io/v1{{ 'beta1' if kube_version is version('v1.20.0', '<') else '' }}
+apiVersion: node.k8s.io/v1
 metadata:
   name: crun
 handler: crun
diff --git a/roles/kubernetes-apps/container_runtimes/gvisor/templates/runtimeclass-gvisor.yml.j2 b/roles/kubernetes-apps/container_runtimes/gvisor/templates/runtimeclass-gvisor.yml.j2
index 92b20b4c6e23e7863750014901fbb5f2461549dd..64465fa33623378f2075786957a1dc4c7a9adc0c 100644
--- a/roles/kubernetes-apps/container_runtimes/gvisor/templates/runtimeclass-gvisor.yml.j2
+++ b/roles/kubernetes-apps/container_runtimes/gvisor/templates/runtimeclass-gvisor.yml.j2
@@ -1,6 +1,6 @@
 ---
 kind: RuntimeClass
-apiVersion: node.k8s.io/v1{{ 'beta1' if kube_version is version('v1.20.0', '<') else '' }}
+apiVersion: node.k8s.io/v1
 metadata:
   name: gvisor
 handler: runsc
diff --git a/roles/kubernetes-apps/container_runtimes/kata_containers/templates/runtimeclass-kata-qemu.yml.j2 b/roles/kubernetes-apps/container_runtimes/kata_containers/templates/runtimeclass-kata-qemu.yml.j2
index dfa734d176272368f1517ced174809b0c3d3b69d..2240cdb9b6503404694abd7cd0de2b28189f75c1 100644
--- a/roles/kubernetes-apps/container_runtimes/kata_containers/templates/runtimeclass-kata-qemu.yml.j2
+++ b/roles/kubernetes-apps/container_runtimes/kata_containers/templates/runtimeclass-kata-qemu.yml.j2
@@ -1,6 +1,6 @@
 ---
 kind: RuntimeClass
-apiVersion: node.k8s.io/v1{{ 'beta1' if kube_version is version('v1.20.0', '<') else '' }}
+apiVersion: node.k8s.io/v1
 metadata:
   name: kata-qemu
 handler: kata-qemu
diff --git a/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotclasses.yml.j2 b/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotclasses.yml.j2
index 1b0853d98164a70dccc8fc414c573a5a12a8e1d6..47e5fd3a60279a826105a2af261bf093ebabc633 100644
--- a/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotclasses.yml.j2
+++ b/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotclasses.yml.j2
@@ -58,11 +58,7 @@ spec:
         - driver
         type: object
     served: true
-{% if kube_version is version('v1.20.0', '<') %}
-    storage: false
-{% else %}
     storage: true
-{% endif %}
     subresources: {}
   - additionalPrinterColumns:
     - jsonPath: .driver
@@ -76,13 +72,11 @@ spec:
       name: Age
       type: date
     name: v1beta1
-{% if kube_version is version('v1.20.0', '>=') %}
     # This indicates the v1beta1 version of the custom resource is deprecated.
     # API requests to this version receive a warning in the server response.
     deprecated: true
     # This overrides the default warning returned to clients making v1beta1 API requests.
     deprecationWarning: "snapshot.storage.k8s.io/v1beta1 VolumeSnapshotClass is deprecated; use snapshot.storage.k8s.io/v1 VolumeSnapshotClass"
-{% endif %}
     schema:
       openAPIV3Schema:
         description: VolumeSnapshotClass specifies parameters that a underlying storage system uses when creating a volume snapshot. A specific VolumeSnapshotClass is used by specifying its name in a VolumeSnapshot object. VolumeSnapshotClasses are non-namespaced
@@ -112,11 +106,7 @@ spec:
         - driver
         type: object
     served: true
-{% if kube_version is version('v1.20.0', '<') %}
-    storage: true
-{% else %}
     storage: false
-{% endif %}
     subresources: {}
 status:
   acceptedNames:
diff --git a/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotcontents.yml.j2 b/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotcontents.yml.j2
index c1cd7ff4ae1e5493bf7f874f28f6376b05bc0954..c611221d0c91ce810d6d64d3c3e35b8be61d91e7 100644
--- a/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotcontents.yml.j2
+++ b/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshotcontents.yml.j2
@@ -42,12 +42,10 @@ spec:
       jsonPath: .spec.volumeSnapshotRef.name
       name: VolumeSnapshot
       type: string
-{% if kube_version is version('v1.20.0', '>=') %}
     - description: Namespace of the VolumeSnapshot object to which this VolumeSnapshotContent object is bound.
       jsonPath: .spec.volumeSnapshotRef.namespace
       name: VolumeSnapshotNamespace
       type: string
-{% endif %}
     - jsonPath: .metadata.creationTimestamp
       name: Age
       type: date
@@ -155,11 +153,7 @@ spec:
         - spec
         type: object
     served: true
-{% if kube_version is version('v1.20.0', '<') %}
-    storage: false
-{% else %}
     storage: true
-{% endif %}
     subresources:
       status: {}
   - additionalPrinterColumns:
@@ -187,12 +181,10 @@ spec:
       jsonPath: .spec.volumeSnapshotRef.name
       name: VolumeSnapshot
       type: string
-{% if kube_version is version('v1.20.0', '>=') %}
     - description: Namespace of the VolumeSnapshot object to which this VolumeSnapshotContent object is bound.
       jsonPath: .spec.volumeSnapshotRef.namespace
       name: VolumeSnapshotNamespace
       type: string
-{% endif %}
     - jsonPath: .metadata.creationTimestamp
       name: Age
       type: date
@@ -302,11 +294,7 @@ spec:
         - spec
         type: object
     served: true
-{% if kube_version is version('v1.20.0', '<') %}
-    storage: true
-{% else %}
     storage: false
-{% endif %}
     subresources:
       status: {}
 status:
diff --git a/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshots.yml.j2 b/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshots.yml.j2
index 33fa9f7da6b6cc9f05ccd40eb128001c22c39188..1b41ff8bcfff656e0e2b7ed5d15d641cca82e1c4 100644
--- a/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshots.yml.j2
+++ b/roles/kubernetes-apps/csi_driver/csi_crd/templates/volumesnapshots.yml.j2
@@ -116,11 +116,7 @@ spec:
         - spec
         type: object
     served: true
-{% if kube_version is version('v1.20.0','<') %}
-    storage: false
-{% else %}
     storage: true
-{% endif %}
     subresources:
       status: {}
   - additionalPrinterColumns:
@@ -156,13 +152,11 @@ spec:
       name: Age
       type: date
     name: v1beta1
-{% if kube_version is version('v1.20.0','>=') %}
     # This indicates the v1beta1 version of the custom resource is deprecated.
     # API requests to this version receive a warning in the server response.
     deprecated: true
     # This overrides the default warning returned to clients making v1beta1 API requests.
     deprecationWarning: "snapshot.storage.k8s.io/v1beta1 VolumeSnapshot is deprecated; use snapshot.storage.k8s.io/v1 VolumeSnapshot"
-{% endif %}
     schema:
       openAPIV3Schema:
         description: VolumeSnapshot is a user's request for either creating a point-in-time snapshot of a persistent volume, or binding to a pre-existing snapshot.
@@ -226,11 +220,7 @@ spec:
         - spec
         type: object
     served: true
-{% if kube_version is version('v1.20.0','<') %}
-    storage: true
-{% else %}
     storage: false
-{% endif %}
     subresources:
       status: {}
 status:
diff --git a/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-deployment.yml.j2 b/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-deployment.yml.j2
index cc1681d238753a3fd1a69732bade72ad70b86b5d..bef228922699be6a2745da0d5cd808571dca201c 100644
--- a/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-deployment.yml.j2
+++ b/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-deployment.yml.j2
@@ -16,11 +16,7 @@ spec:
     spec:
       serviceAccountName: vsphere-csi-controller
       nodeSelector:
-{% if kube_version is version('v1.20.0', '<') %}
-        node-role.kubernetes.io/master: ""
-{% else %}
         node-role.kubernetes.io/control-plane: ""
-{% endif %}
       tolerations:
         - operator: "Exists"
           key: node-role.kubernetes.io/master
diff --git a/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-ss.yml.j2 b/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-ss.yml.j2
index b762b496d3e163784c763446ae096302d0cc31b4..4a8a4b1782bbfdcdb92aa313def0df5c9b79b4f7 100644
--- a/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-ss.yml.j2
+++ b/roles/kubernetes-apps/csi_driver/vsphere/templates/vsphere-csi-controller-ss.yml.j2
@@ -19,11 +19,7 @@ spec:
     spec:
       serviceAccountName: vsphere-csi-controller
       nodeSelector:
-{% if kube_version is version('v1.20.0', '<') %}
-        node-role.kubernetes.io/master: ""
-{% else %}
         node-role.kubernetes.io/control-plane: ""
-{% endif %}
       tolerations:
         - operator: "Exists"
           key: node-role.kubernetes.io/master
diff --git a/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-ds.yml.j2 b/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-ds.yml.j2
index 36d17d805a72d5f6627128af2739c8603aae1b27..f191bbefaad29e2b143aea199f3ec8ae494d42b8 100644
--- a/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-ds.yml.j2
+++ b/roles/kubernetes-apps/external_cloud_controller/openstack/templates/external-openstack-cloud-controller-manager-ds.yml.j2
@@ -24,11 +24,7 @@ spec:
         k8s-app: openstack-cloud-controller-manager
     spec:
       nodeSelector:
-{% if kube_version is version('v1.20.0', '<') %}
-        node-role.kubernetes.io/master: ""
-{% else %}
         node-role.kubernetes.io/control-plane: ""
-{% endif %}
       securityContext:
         runAsUser: 999
       tolerations:
diff --git a/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-ds.yml.j2 b/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-ds.yml.j2
index dc1b7ffda581f817d615e6167738419913b7ecff..5f1068d81359d762b6ade7c217cc730c7c59482c 100644
--- a/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-ds.yml.j2
+++ b/roles/kubernetes-apps/external_cloud_controller/vsphere/templates/external-vsphere-cloud-controller-manager-ds.yml.j2
@@ -24,11 +24,7 @@ spec:
         k8s-app: vsphere-cloud-controller-manager
     spec:
       nodeSelector:
-{% if kube_version is version('v1.20.0', '<') %}
-        node-role.kubernetes.io/master: ""
-{% else %}
         node-role.kubernetes.io/control-plane: ""
-{% endif %}
       securityContext:
         runAsUser: 0
       tolerations:
diff --git a/roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2 b/roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2
index 8cb77fb7358c6a826aceb5fb2f3abd034c08b2c6..6a404c925439fccbbdcafdc92222d6aa3505138f 100644
--- a/roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2
+++ b/roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2
@@ -138,11 +138,7 @@ spec:
           - weight: 100
             preference:
               matchExpressions:
-{% if kube_version is version('v1.20.0', '<') %}
-              - key: node-role.kubernetes.io/master
-{% else %}
               - key: node-role.kubernetes.io/control-plane
-{% endif %}
                 operator: In
                 values:
                 - ""