"cluster.local" is hardcoded in chart templates
The default cluster name (clusterName
in kubeadm config) for a k8s cluster is "cluster.local", but it is useful for admins to set a unique descriptive name for each k8s cluster so they are distinguishable.
grep cluster.local -r eos-charts
"cluster.local" is hardcoded in multiple places in the chart, so this will only work on kubernetes clusters that happen to use the default name.
e.g. on our dev cluster:
bash-4.2$ host eos-qdb.eos.svc.cluster.local
Host eos-qdb.eos.svc.cluster.local not found: 3(NXDOMAIN)
bash-4.2$ host eos-qdb.eos.svc
eos-qdb.eos.svc.kermes-dev.local has address 10.233.114.212
eos-qdb.eos.svc.kermes-dev.local has address 10.233.114.14
eos-qdb.eos.svc.kermes-dev.local has address 10.233.114.216
bash-4.2$ host eos-qdb.eos.svc.kermes-dev.local
eos-qdb.eos.svc.kermes-dev.local has address 10.233.114.212
eos-qdb.eos.svc.kermes-dev.local has address 10.233.114.14
eos-qdb.eos.svc.kermes-dev.local has address 10.233.114.216
To work on any k8s cluster, the chart will need to either
- remove "cluster.local" altogether and use names like "app.namespace.svc" , or
- if the domain is required (I see
default_domain = cluster.local
in _krb5_conf.tpl but not sure of the purpose) then use a variable for the cluster domain.
Unfortunately it is not possible to detect the k8s cluster domain, so if the chart needs that info, the user has to set it as a variable.
I could make a MR for this as it is a show stopper on our clusters.