Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue with deployed rke2 second Ingress-Nginx Controller inside a Kubernetes cluster running on bare-metal. #12396

Open
Ganesh-hub-5 opened this issue Nov 21, 2024 · 5 comments
Labels
kind/support Categorizes issue or PR as a support question. needs-priority needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one.

Comments

@Ganesh-hub-5
Copy link

Ganesh-hub-5 commented Nov 21, 2024

What happened:

We have deployed two Nginx ingress controller in our cluster. The first ingress controller works fine but we are facing issue with second one. When accessing the service through second ingress controller (http://x3.abc.com/sample), we get This site can’t be reached x3.abc.com took too long to respond. error. We followed the same step as the first ingress controller including assigning different IP address using metallb and different ingress class in different namespace.

What you expected to happen:

For testing purpose we deployed a simple nginx image using standard yaml files. Everything is up and running, No error logs in pods, service mapped correct endpoints and ingress resource got external IP assigned by Second nginx ingress controller But when we try to access http://x3.abc.com/sample gives Site can't be reached error.

NGINX Ingress controller version:

NGINX Ingress controller
Release: v1.10.1-hardened1
Build: git-b48c66a2f
Repository: https://github.com/rancher/ingress-nginx
nginx version: nginx/1.25.3

Kubernetes version:

Client Version: v1.30.2
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.28.11+rke2r1
Environment:

  • Cloud provider or hardware configuration: Metallb

  • OS: Red Hat Enterprise Linux

  • Kernel (e.g. uname -a): Linux

  • RKE2 Version: v1.28.11

  • Metallb Version: v0.14.5

  • How was the ingress-nginx-controller installed:
    helm -n abcx3apps get values rke2-ingress-nginx-abcx3
    image

  • Current State of the controller:

    • kubectl describe ingressclasses
      Name: nginx-abcx3
      Labels: app.kubernetes.io/component=controller
      app.kubernetes.io/instance=rke2-ingress-nginx-abcx3
      app.kubernetes.io/managed-by=Helm
      app.kubernetes.io/name=rke2-ingress-nginx
      app.kubernetes.io/part-of=rke2-ingress-nginx
      app.kubernetes.io/version=1.10.1
      helm.sh/chart=rke2-ingress-nginx-4.10.101
      Annotations: meta.helm.sh/release-name: rke2-ingress-nginx-abcx3
      meta.helm.sh/release-namespace: abcx3apps
      Controller: k8s.io/ingress-nginx-abcx3
      Events:

    • kubectl -n <ingresscontrollernamespace> get all -A -o wide
      All pods are up and running

    • kubectl -n <ingresscontrollernamespace> describe svc <ingresscontrollerservicename>
      image

  • Current state of ingress object, if applicable:
    image

  • Others:
    image

How to reproduce this issue:
To reproduce the issue we just need to change the ingress controller to second nginx ingress controller

image

As minimally and precisely as possible. Keep in mind we do not have access to your cluster or application.
Help up us (if possible) reproducing the issue using minikube or kind.

Install minikube/kind

Install the ingress controller

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/main/deploy/static/provider/baremetal/deploy.yaml

Install an application that will act as default backend (is just an echo app)

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/main/docs/examples/http-svc.yaml

Create an ingress (please add any additional annotation required)

echo "
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: foo-bar
annotations:
kubernetes.io/ingress.class: nginx
spec:
ingressClassName: nginx # omit this if you're on controller version below 1.0.0
rules:
- host: foo.bar
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: http-svc
port:
number: 80
" | kubectl apply -f -

make a request

POD_NAME=$(k get pods -n ingress-nginx -l app.kubernetes.io/name=ingress-nginx -o NAME)
kubectl exec -it -n ingress-nginx $POD_NAME -- curl -H 'Host: foo.bar' localhost

--->

Anything else we need to know:

@Ganesh-hub-5 Ganesh-hub-5 added the kind/bug Categorizes issue or PR as related to a bug. label Nov 21, 2024
@k8s-ci-robot k8s-ci-robot added the needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. label Nov 21, 2024
@k8s-ci-robot
Copy link
Contributor

This issue is currently awaiting triage.

If Ingress contributors determines this is a relevant issue, they will accept it by applying the triage/accepted label and provide further guidance.

The triage/accepted label can be added by org members by writing /triage accepted in a comment.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@longwuyuan
Copy link
Contributor

  • remove the screenshots
  • look at the template of a new bug report
  • edit this issue description and answer the questions asked in the template of a new bug report in this issue description
  • make sure to format everything in markdown
  • without above, there is nothing to analyze or reproduce
  • follow these steps to make sure that both controllers are unique https://kubernetes.github.io/ingress-nginx/faq/#multiple-controller-in-one-cluster

/remove-kind bug
/ind support

@k8s-ci-robot k8s-ci-robot added needs-kind Indicates a PR lacks a `kind/foo` label and requires one. and removed kind/bug Categorizes issue or PR as related to a bug. labels Nov 21, 2024
@longwuyuan
Copy link
Contributor

/kind suppport

@k8s-ci-robot
Copy link
Contributor

@longwuyuan: The label(s) kind/suppport cannot be applied, because the repository doesn't have them.

In response to this:

/kind suppport

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@longwuyuan
Copy link
Contributor

/kind support

@k8s-ci-robot k8s-ci-robot added kind/support Categorizes issue or PR as a support question. and removed needs-kind Indicates a PR lacks a `kind/foo` label and requires one. labels Nov 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/support Categorizes issue or PR as a support question. needs-priority needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one.
Projects
Development

No branches or pull requests

3 participants