kubernetes-ingress: Haproxy does not handle Services of the type ExternalName
Hi, when creating a service of the type “ExternalName” and an ingress pointing towards it, then the ingress controller keeps repeating:
2019/10/15 10:30:23 controller.go:194: Endpoint for service <service name> does not exists
This type of service will never have an endpoint. It would make sense to use the returned CNAME as the backend pool server that is returned by the service.
Tested with.
HAProxy Ingress Controller v1.2.3 7fc1cd6
See https://kubernetes.io/docs/concepts/services-networking/service/#externalname
This functionality does work with nginx-ingress controller.
About this issue
- Original URL
- State: open
- Created 5 years ago
- Reactions: 8
- Comments: 17 (5 by maintainers)
Hi, Do we have a workaround for supporting externalName?
@mecampbellsoup When using
ExternalName, the address of the backend server is a DNS name. If there is no resolvers configured in haproxy, it will only resolve it once at startup using system resolvers configured in your haproxy node. If this is not working for you, then maybe your config-snippet is messing with the setup, or it is just that there are no resolvers in you haproxy node. Anyway to go a step further and be able to resolve dns names at runtime in haproxy you will need to configure a resolvers section, which is a more robust solution cause the ip address of a DNS name may change at haproxy runtime.