Skip to content

Ingress controller failing in RKE1 with port conflict when using port 8443

Article Number: 000021261

Environment

RKE1

 

Situation

When deploying the ingress controller on RKE1 with custom configuration as below

ingress:
    extra_args:
      http-port: '8080'
      https-port: '8443'
    http_port: 8080
    https_port: 8443

Ingress controller deployment is failing with the following error

“2023/08/22 12:42:08 [emerg] 20#20: bind() to 0.0.0.0:8443 failed (98: Address in use)”

Cause

Port 8443 is configured with extra_args.https-port which conflicts with the internal port 8443 bound for the validating webhook also provided by the ingress-nginx pod

Resolution

Either keep the default port used by the ingress-nginx container by removing the extra_args.https-port, or use a different port like 7443 which will avoid the conflict

  ingress:
    http_port: 8080
    https_port: 8443

However, you may use any port for the ingress.https_port as it denotes the hostPorts field for the ingress pods, the port used for external access