UST-MICO / mico

A Management System for Microservice Compositions
Apache License 2.0
8 stars 3 forks source link

Deployment files are incompatible with recent Kubernetes (1.16+) #877

Open s1mn opened 4 years ago

s1mn commented 4 years ago

As outlined in a blog post, deprecated API versions were removed in Kubernetes 1.16. For instance extensions/v1beta1, apps/v1beta1 and apps/v1beta2 are gone.

As a result, mico's Kubernetes YAML files can no longer be deployed on Kubernetes ≥ 1.16 without modification.

In some files, the new API names are noted as comments, in others they aren't. For instance: https://github.com/UST-MICO/mico/blob/637af25ae8d9cafb683586f512f135bda59014de/install/kubernetes/kube-state-metrics/kube-state-metrics-deployment.yaml#L1-L3 https://github.com/UST-MICO/mico/blob/637af25ae8d9cafb683586f512f135bda59014de/install/kubernetes/monitoring/node-directory-size-metrics.yaml#L2

Click to expand the list of files that would need to be changed install/kubernetes/kube-state-metrics/kube-state-metrics-deployment.yaml install/kubernetes/monitoring/alertmanager-dep.yaml install/kubernetes/monitoring/node-directory-size-metrics.yaml install/kubernetes/monitoring/prometheus-dep.yaml install/kubernetes/monitoring/prometheus-node-exporter.yaml install/kubernetes/neo4j.yaml install/kubernetes/openfaas/faas-idler-dep.yaml install/kubernetes/openfaas/gateway-dep.yaml install/kubernetes/redis.yaml

Changing the files to work out-of-the-box on kube ≥ 1.16 would be break compatibility with old kubernetes versions. I can prepare a pull request, but question to the maintainers is:

Would you accept a contribution that fixes this but breaks that compatibility by updating the referenced API versions?