-
Notifications
You must be signed in to change notification settings - Fork 59
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
Using Kubernetes service discovery for ES_SEEDS #243
Comments
I'm not sure I see the issue. Service names in Kubernetes will resolve to all IP addresses which have an endpoint is up. Can you not just set |
(And ES_PORT to whatever port your service defines). |
It also resolves the port as well, It duplicates the port that I could not disable in k8s. We solved the problem by defining internal dns but It's not a long term solution(because of caching problems and updating IPs). |
I'm not sure what you mean that the k8s DNS resolves to the port as well. Can you show me an error to make it clearer at which layer it breaks? |
We are using ClusterIP for our service definitions, It contains IP addresses and port as well. Such as: test-service: If I use "test-service.namespace" in my code I can directly access the application in that port, no need to define extra port definition. In our case Temporal servers are pods, and there is a service definition for them. Such as: When I tried to establish a connection by using "temporal-service.namespace" I'm getting error because Temporal server automatically add If we look at https://github.com/temporalio/docker-builds/blob/main/docker/auto-setup.sh#L330 |
What are you really trying to do?
Deploying highly available Temporal cluster.
Describe the bug
We are using Kubernetes for our Temporal clusters. We don't want to give only one ip for
ES_SEEDS
because it can be changed thus we want to give our Kubernetes service definition. But our services contain port as well. I can give emptyES_PORT
but still there is ":" character between seeds and port.We also tried to give all IPs of the cluster seperated by comma(which is we didn't want to), but in this case Temporal server got some errors from Elasticsearch, It tried to send a request like this
POST 10.10.10.1,10.10.10.2,10.10.10.3/mapping.
We can make
ES_PORT
totally optional in both auto-setup and Temporal server. What do you think about this? Do you have any different suggestions to us?Or we can set
ES_SERVER
directly that it can overwrite.The text was updated successfully, but these errors were encountered: