Asking for help? Comment out what you need so we can get more information to help you!
Cluster information:
Kubernetes version: 1.21
Cloud being used: bare-metal
Installation method: rancherD
Host OS: CentOS 7.9
CNI and version: whatever rancherd version v2.5.8 provides
CRI and version: whatever rancherd version v2.5.8 provides, containerd?
Hi
I have installed elasticsearch using helm and now I wonder how I can access my service. I do have a service defined:
kubectl get svc -n elasticfluent
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
elasticsearch-master ClusterIP 10.43.32.247 9200/TCP,9300/TCP 3d20h
elasticsearch-master-headless ClusterIP None 9200/TCP,9300/TCP 3d20h
I also note that I have some endpoints at that service:
kubectl get endpoints -n elasticfluent
NAME ENDPOINTS AGE
elasticsearch-master 10.42.3.32:9200,10.42.4.24:9200,10.42.5.5:9200 + 3 more… 3d20h
elasticsearch-master-headless 10.42.3.32:9200,10.42.4.24:9200,10.42.5.5:9200 + 3 more… 3d20h
But, if I try to curl one of those endpoints, I get connection refused:
curl 10.43.3.32:9200
curl: (7) Failed connect to 10.43.3.32:9200; Connection refused
I found a tutorial based on minicube that suggest I should use port-forward to expose a port. If I try that, it works. But, that clearly is not how it is supposed to work in production. At least I know that my service works, since then elasticsearch answers.
So, how are you really supposed to expose that service? I do note that I do not have an “External IP” on my service. Is that what I need?
Pointers appreciated.