Welcome to the Linux Foundation Forum!

Lab 4.3 - unable to recognize "complete-demo.yaml": no matches for kind "Deployment"

I've pulled down the config for the sock shop, but cannot run it:

  1. kubectl apply -n sock-shop -f complete-demo.yaml
  1. unable to recognize "complete-demo.yaml": no matches for kind "Deployment" in version "extensions/v1beta1"

I've tried changing the apiVersion to apps/v1beta1 and apps/v1 but that just gives me other errors.

Something I'm doing wrong? Perhaps because I'm running v1.16.0 rather than the course suggested 15.x?

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Comments

  • Posts: 32

    Also, on this, what is the difference between extensions and apps apis, I don't think I've spotted an explanation of this so far?

  • Posts: 32

    Managed to get this working, I changed the apiVersion to apps/v1 and then added the now required 'selector' elements to the deploySpec.

  • Posts: 2,454

    Hi @dnx,

    You experienced first hand how fast things change in Kubernetes, and how some features no longer work as expected as a result of these changes. This is one of the reasons why the lab exercises are written and tested on a particular Kubernetes release - in this case v1.15.1.

    However, good troubleshooting work! I am glad you found a workaround for the two API groups issue. As a feature matures in Kubernetes, it transitions between various API groups, which are representative of the feature's level of maturity.
    The API resource "Deployment" started as part of the extensions/ API group, but in recent Kubernetes releases, it transitioned into the newer apps/ API group, with the extensions/ group being marked to be deprecated. For a while, both API groups were supported. But it looks like we finally reached the point where the extensions/ group is no longer being supported.
    Thanks for reporting the issues. It will be corrected in a future course update release.

    Regards,
    -Chris

  • Posts: 1
    edited October 2019

    You cannot start sock-shop in Kubernetes 1.16 version because of deprecated APIs , but you can convert it :smile:

    1. cd microservices-demo/deploy/kubernetes
    2. kubectl create namespace sock-shop
    3. kubectl convert -f . | kubectl create -f -
    4. watch kubectl get pods -n sock-shop
    5. # wait for all in status Running
    6. kubectl describe svc front-end -n sock-shop
  • Posts: 1
    edited October 2019

    You have to modify each deployment section as this

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training