In kubernetes I have deployed a statefulset called zookeeper:
apiVersion: apps/v1beta1
kind: StatefulSet
metadata:
name: zookeeper
spec:
serviceName: zookeeper-svc
replicas: 1
template:
metadata:
labels:
app: zookeeper
and a headless service:
apiVersion: v1
kind: Service
metadata:
name: zookeeper-svc
labels:
app: zookeeper
spec:
clusterIP: None
ports:
- port: 2888
name: server
- port: 3888
name: leader-election
Entering inside my zookeeper-0 pod I can see its IP:
zookeeper@zookeeper-0:/usr/bin$ cat /etc/hosts
# Kubernetes-managed hosts file.
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
fe00::0 ip6-mcastprefix
fe00::1 ip6-allnodes
fe00::2 ip6-allrouters
10.32.0.11 zookeeper-0.zookeeper-svc.default.svc.cluster.local zookeeper-0
But looking for the IP
kb exec dnsutils nslookup zookeeper-0
Server: 10.96.0.10 Address: 10.96.0.10#53
** server can't find zookeeper-0: NXDOMAIN
I cannot see it.
Where am I wrong? Any suggestion is appreciated.
have you tried accessing zookeeper-0.zookeeper-svc
service names are not added to search domain list in /etc/resolv.conf
so you need to add everything that preceeds the namespace name in the name.