This how-to article outlines how to enable pod presets on your cluster. This is done by enabling the
PodPreset admission plugin and the
settings.k8s.io/v1alpha1 API for the kube-apiserver.
- Kubernetes version 1.10 and above
- Access to edit the cluster in yaml or the cluster.yaml file you used with RKE.
Get to the cluster yaml in Rancher by editing the cluster and selecting "edit as yaml" or by opening the RKE cluster.yml file. Modify the kube-api section to resemble the following and hit save or running
services: kube-api: extra_args: runtime-config: authorization.k8s.io/v1beta1=true,settings.k8s.io/v1alpha1=true enable-admission-plugins: PodPreset,NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota,NodeRestriction,Priority,TaintNodesByCondition,PersistentVolumeClaimResize
PodPreset is added to the runtime-config and admission plugins.
You can test the ability to use pod presets with this guide.
More details can be found in the kubernetes docs on pod presets.