Welcome to the Linux Foundation Forum!

Lab 11.2 step 10. Curl respond 404!

Hi! I have a status error 404 when I try to curl -H "Host: www.external.com" http://10.104.227.79
I've created two deployments with these files
web-one.yaml

  1. apiVersion: apps/v1
  2. kind: Deployment
  3. metadata:
  4. name: web-one
  5. labels:
  6. system: first
  7. spec:
  8. selector:
  9. matchLabels:
  10. system: first
  11. replicas: 1
  12. template:
  13. metadata:
  14. labels:
  15. system: first
  16. spec:
  17. containers:
  18. - image: nginx:1.20.1
  19. imagePullPolicy: Always
  20. name: nginx
  21. ports:
  22. - containerPort: 80
  23. protocol: TCP

web-two.yaml

  1. apiVersion: apps/v1
  2. kind: Deployment
  3. metadata:
  4. name: web-two
  5. labels:
  6. system: secondary
  7. spec:
  8. selector:
  9. matchLabels:
  10. system: secondary
  11. replicas: 1
  12. template:
  13. metadata:
  14. labels:
  15. system: secondary
  16. spec:
  17. containers:
  18. - image: nginx:1.20.1
  19. imagePullPolicy: Always
  20. name: nginx
  21. ports:
  22. - containerPort: 80
  23. protocol: TCP
  1. ubuntu@cp:~/lab11$ kubectl get pod --all-namespaces |grep nginx
  2. accounting nginx-one-88766d69b-cmcnx 2/2 Running 2 (6h30m ago) 6h55m
  3. accounting nginx-one-88766d69b-g7lqz 2/2 Running 2 (6h30m ago) 7h4m
  4. accounting nginx-one-88766d69b-hs26l 2/2 Running 2 (6h30m ago) 6h58m
  5. accounting nginx-one-88766d69b-m7tbs 2/2 Running 2 (6h30m ago) 6h55m
  6. accounting nginx-one-88766d69b-xjcll 2/2 Running 2 (6h30m ago) 6h55m
  7. default myingress-ingress-nginx-controller-qnhf6 1/1 Running 0 39m
  8. default myingress-ingress-nginx-controller-v259c 1/1 Running 0 39m
  9. default nginx-6799fc88d8-fwtjn 1/1 Running 2 (6h30m ago) 26h
  10. ubuntu@cp:~/lab11$ kubectl get ingress
  11. NAME CLASS HOSTS ADDRESS PORTS AGE
  12. ingress-test <none> www.external.com 80 11m
  13. ubuntu@cp:~/lab11$ kubectl get pod -o wide |grep myingress
  14. myingress-ingress-nginx-controller-qnhf6 1/1 Running 0 40m 192.168.27.189 ip-172-31-20-148 <none> <none>
  15. myingress-ingress-nginx-controller-v259c 1/1 Running 0 40m 192.168.242.72 cp <none> <none>
  16. ubuntu@cp:~/lab11$ kubectl get svc |grep ingress
  17. myingress-ingress-nginx-controller LoadBalancer 10.111.54.172 <pending> 80:30145/TCP,443:30334/TCP 40m
  18. myingress-ingress-nginx-controller-admission ClusterIP 10.104.163.233 <none> 443/TCP 40m

Please, help me solve this problem!

Comments

  • Sorry I've made a mistake in description. I've been doing:
    curl -H "Host: www.external.com" http://10.111.54.172
    and the respond is 404 error

  • There is answer:

    @micahel71 said:
    Hi,

    I ran into the same issue

    I found out that the newest version of the ingress-nginx controller (4.0.x) requires some additional infos in the yaml file of the Ingress resource!

    According to the lab documenation the yaml should look like this:

    1. apiVersion: networking.k8s.io/v1
    2. kind: Ingress
    3. metadata:
    4. name: ingress-test
    5. namespace: default
    6. spec:
    7. rules:
    8. - host: www.external.com
    9. (...)

    That it is not enough anymore!
    With 4.0.x you need to declare the "ingress.class" !!
    So you need to add the following annotation ;-)

    1. apiVersion: networking.k8s.io/v1
    2. kind: Ingress
    3. metadata:
    4. annotations:
    5. kubernetes.io/ingress.class: nginx
    6. name: ingress-test
    7. namespace: default
    8. spec:
    9. rules:
    10. (...)

    does the trick even with 4.0.x

    Hope this helps others and the author of the lab documentation incoperates this update.

    Cheers, Michael

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