K8s 1.16 deprecates extensions/v1beta1 for apiVersion, breaking the Helm charts
See original GitHub issueThe current Helm charts don’t work with Kubernetes 1.16, apparently because of the apiVersion
deprecation:
The v1.16 release will stop serving the following deprecated API versions in favor of newer and more stable API versions: …
- DaemonSet, Deployment, StatefulSet, and ReplicaSet (in the extensions/v1beta1 and apps/v1beta2 API groups)
- Migrate to use the apps/v1 API, available since v1.9. Existing persisted data can be retrieved/updated via the apps/v1 API.
The initial error I get is:
% microk8s.helm install jupyterhub/binderhub --version=0.2.0-c04966f --name=binder-test --namespace=binder-test -f secret.yaml -f config.yaml
Error: validation failed: [unable to recognize "": no matches for kind "DaemonSet" in version "extensions/v1beta1", unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1"]
I’m new to K8s, Helm and Binder. I tried replacing the versions with apps/v1
, after downloading the helm charts, but that gives another error:
% wget https://jupyterhub.github.io/helm-chart/binderhub-0.2.0-c04966f.tgz
% tar zxf binderhub-0.2.0-c04966f.tgz
% grep extensions/v1beta1 binderhub -RlZ | xargs -0 grep -lZ -e DaemonSet -e Deployment -e StatefulSet -e ReplicaSet | xargs -0 sed -i '/^apiVersion/s:extensions/v1beta1:apps/v1:'
% helm install --name=binder-test --namespace=binder-test -f secret.yaml -f config.yaml ./binderhub
Error: release binder-test failed: Deployment.apps "binder" is invalid: [spec.selector: Required value, spec.template.metadata.labels: Invalid value: map[string]string{"app":"binder", "component":"binder", "heritage":"Tiller", "name":"binder", "release":"binder-test"}: `selector` does not match template `labels`]
I’m new to K8s, Helm and Binder. Not sure what else to do except downgrade K8s. I’m using microk8s, so that should be relatively straightforward.
Issue Analytics
- State:
- Created 4 years ago
- Reactions:1
- Comments:10 (9 by maintainers)
Top Results From Across the Web
Deprecated Kubernetes APIs - Helm
Explains deprecated Kubernetes APIs in Helm. ... For example, here is a removed Deployment object API version in Kubernetes 1.16: apiVersion: apps/v1beta1 ......
Read more >Deprecated API Migration Guide - Kubernetes
The extensions/v1beta1 API version of NetworkPolicy is no longer served as of v1.16. Migrate manifests and API clients to use the networking.k8s ......
Read more >GitLab Helm chart is ready for Kubernetes 1.16 apiversion ...
However, when v1.16 come out, some of the older APIs will be full deprecated, resulting in the loss of automatic translation and resulting...
Read more >Gracefully handling Kubernetes API deprecations - OpenFaaS
We use Helm charts to distribute the various OpenFaaS projects and ... When networking.k8s.io/v1beta1 and extensions/v1beta1 were deprecated ...
Read more >Kubernetes Solved: Easily Find Deprecated API Versions with ...
This has led to many conversations around the Kubernetes 1.16 ... yaml apiVersion: extensions/v1beta1 kind: Deployment metadata: name: ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
ah, I didn’t realise that PR was related (too many things in too many repos with “1.16 compatibility” in the name 😉)
@betatim yepp this is backward compatible to 1.11 or so I think. (UPDATE: 1.9 is OK still.)