kubernetes resources and controllers

3/14/2020

Using kubectl api-resources you are able get a list of all resources inside kubernetes.

Nevertheless, I'd like to know witch controller handles which resources.

For example, I've just installed traefik and I see some unknown installed resources:

NAME                              SHORTNAMES   APIGROUP                       NAMESPACED   KIND
ingresses                         ing          extensions                     true         Ingress
ingresses                         ing          networking.k8s.io              true         Ingress
ingressroutes                                  traefik.containo.us            true         IngressRoute
ingressroutetcps                               traefik.containo.us            true         IngressRouteTCP

Why are there two resources with the same name and diferent APIGROUP?

-- Jordi
kubernetes

1 Answer

3/14/2020

As the Kubernetes API evolves, APIs are periodically reorganized or upgraded. When APIs evolve, the old API is deprecated and eventually removed.

networking.k8s.io apigroup was introduced in v1.14.Currently ingress exists in both extensions and networking.k8s.io for backward compatibility and to give enough time for ingress controller implementations transition to networking.k8s.io from extensions.Ingress will be moved out of extensions in v1.22.

-- Arghya Sadhu
Source: StackOverflow