Skip to content
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

infrastructure: run an instance of RJC together with each workflow engine #105

Closed
diegodelemos opened this issue Dec 6, 2018 · 3 comments
Assignees

Comments

@diegodelemos
Copy link
Member

We could think about deploying a REANA-Job-Controller along with each independent workflow engine (as a sidecar container) so we would have something like follows:

face2

Pros:

  • Rather than having a central job controller, which handles many requests (n job status query every 5 seconds per workflow)
  • Crash on job controller would crash the whole REANA, but with this approach there is one per workflow.

Cons:

  • Number of DB connections increases per workflow
  • Number of open stream connections with Kubernetes API Server increases per workflow
@tiborsimko
Copy link
Member

Postponing for the next sprint; the pros/cons may be affected by the decision of how we go about HPC support, either for job layer only or also for workflow execution layer. #71 (comment)

@diegodelemos diegodelemos removed this from the Someday milestone Apr 26, 2019
@diegodelemos
Copy link
Member Author

diegodelemos commented May 8, 2019

Another consideration we have to take into account is how we supply secrets to our runtime pods.

  • In the optics of continuing RJC as it is right now, a server, we need to pass the secrets from the engines to the RJC API.
  • If we go for the side car, we would just add the needed secrets to the deployment as we will do with the engines and jobs.

The following diagram illustrates the rough differences:

mounting-secrets-to-RWE_-RJC-jobs

@roksys roksys self-assigned this Jun 17, 2019
roksys pushed a commit to roksys/reana-workflow-engine-serial that referenced this issue Jun 19, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-commons that referenced this issue Jun 19, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.

  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-controller that referenced this issue Jun 19, 2019
* Run RJC and RWE in the same pod.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-controller that referenced this issue Jun 20, 2019
* Run RJC and RWE in the same pod.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-commons that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.

  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-controller that referenced this issue Jun 20, 2019
* Run RJC and RWE in the same pod.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-commons that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.

  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-engine-cwl that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-engine-yadage that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-engine-yadage that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-controller that referenced this issue Jun 20, 2019
* Run RJC and RWE in the same pod.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-commons that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.

  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-commons that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.

  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-controller that referenced this issue Jun 20, 2019
* Run RJC and RWE in the same pod.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-engine-serial that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-engine-yadage that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-engine-cwl that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-engine-yadage that referenced this issue Jun 20, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-controller that referenced this issue Jun 21, 2019
* Run RJC and RWE in the same pod.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-engine-serial that referenced this issue Jun 21, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
roksys pushed a commit to roksys/reana-workflow-engine-serial that referenced this issue Jun 21, 2019
* When job controller and workflow engines run in the same pod,
  workflow engine has to ensure that job controller is ready to
  receive requests.
  Connects reanahub/reana-job-controller/issues/105

Signed-off-by: Rokas Maciulaitis <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants