quantum-elixir/quantum-core

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

Ouverte

#605 ouverte le 5 mars 2024

 (2 commentaires) (0 réaction) (0 personne assignée)Elixir (153 forks)batch import
enhancementhelp wanted

Métriques du dépôt

Stars
 (2 408 étoiles)
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