quantum-elixir/quantum-core

multiple apps in libcluster, quantum does not identifies which node to select

Open

#605 ouverte le 5 mars 2024

Voir sur GitHub
 (2 commentaires) (0 réactions) (0 assignés)Elixir (153 forks)batch import
enhancementhelp wanted

Métriques du dépôt

Stars
 (2 408 stars)
Métriques de merge PR
 (Merge moyen 1j 9h) (11 PRs mergées en 30 j)

Description

Hi there, I have few applications running in cluster which able to call each other Assume I have apps api-server, intergation-server I have quantum used in app intergation-server I have few nodes of api-server and few nodes intergation-server in intergation-server config, I have settings in config

config :intergation-server, IntergationServer.Scheduler,
timeout: :infinity,
  overlap: false,
  global: true,
  jobs: [
  {"1 * * * *", ... } <- Every hour 
  ...
 ]

Nodes visible in :intergation-server:

Node.self
:"app@**.**.**.**1"
iex(app@10.21.73.141)7> Node.list
[
:"app@**.**.**.**2"  # <- node of :intergation-server
:"app@**-**-**-***.api.pod.cluster.local", # <- node of :api-server
 :"app@**-**-**-***.api.pod.cluster.local", # <- node of :api-server
 :"app@**-**-**-***.api.pod.cluster.local" # <- node of :api-server
 ]

I can see job (for application intergation-server) is triggering once in few hours, I assume nodes of another application (api-server) included in when Quantum.RunStrategy.Random select node to run

Node list gets all nodes available: https://github.com/quantum-elixir/quantum-core/blob/main/lib/quantum/run_strategy/random.ex#L46

Guide contributeur