-
Notifications
You must be signed in to change notification settings - Fork 11
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
It is assumed that configured cluster domain is always "cluster.local" #402
Comments
Currently, endpoints are selected by default, one would have to apply 'use_service_proxy' annotation to the ingress in order to enable that mode. We may probably have another annotation 'service_proxy_domain', that would default to 'svc.cluster.local'. |
In fact I found this error because endpoint selection was not working (#400). Endpoints will be used also if protocol is https, right?
|
yes |
Sorry, I meant that the URL with
|
As endpoints are just IP addresses, we need figure out TLS server name, thus it's another place where we try to guess FQDN of a service. Do you want to update your PR and add an (optional) annotation to customize the service FQDN suffix to be something different from 'cluster.local' (the default) ? |
What about removing it completely and relaying in the search of resolv.conf? |
although this is true for Kubspray and GKE, there is no assurance from the spec this is a guaranteed. To be on the safe side and avoiding breaking someone's installation and do an emergency release, I'd prefer it to be a config option instead. we may also put it into the global CRD, so that it would become a global option, but that would be more involved as it would require a CRD version bump. |
What happened?
Under some circumstances, Pomerium could configure the destination endpoint with the format
BACKEND.NAMESPACE.svc.cluster.local
.This is assuming the cluster domain is always
cluster.local
, that could be not the case. In Kubspray, for example, you can change that value with cluster_name.What did you expect to happen?
cluster.local
should be a parametrizable value, or, maybe, it could be removed.If it is removed,
BACKEND.NAMESPACE.svc
will be tried to be resolved, appending the values in the search domains of the/etc/resolv.conf
. But I am not sure if all k8s installs set the needed search values (at least it will needsearch DOMAIN
, likesearch cluster.local
).The official doc shows an example of the possible
/etc/resolv.conf
configuration, but in the spec there is no reference about if somesearch
values should be always be present.I have checked in a Kubespray install and GKE cluster they are present.
Additional context
Related with PR #401
The text was updated successfully, but these errors were encountered: