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

Sidecars terminated using step signalling system #8543

Open
sellitforcache opened this issue Jan 30, 2025 · 2 comments
Open

Sidecars terminated using step signalling system #8543

sellitforcache opened this issue Jan 30, 2025 · 2 comments
Labels
kind/feature Categorizes issue or PR as related to a new feature.

Comments

@sellitforcache
Copy link
Contributor

sellitforcache commented Jan 30, 2025

Feature request

Remove the use of nop container to terminate sidecars. If the entrypoint script was used to override sidecar containers in general, sidecars could use the same filesystem signalling system used to sequence step containers. The entrypoint script would have to be modified to to also accept a stop signal in addition to a start/wait signal.

Use case

Removing the nop container has multiple benefits

  1. Sidecar container logs persist - this means that sidecars can be more useful in e.g. the Dashboard since they can be used to monitor task processes.
  2. Better supports parallelism. Having container-level parallelism avoids scheduling issues still present in pod-level parallelism sharing writeable PVCs.
  3. Exit codes are consistent (4889 also resolved by this change)
@sellitforcache sellitforcache added the kind/feature Categorizes issue or PR as related to a new feature. label Jan 30, 2025
@vdemeester
Copy link
Member

@sellitforcache thanks for this issue. I think that's a valid point, I am not sure I remember why we didn't go the entrypoint hack way for sidecars, but I think it would definitely have some benefits.

I am not sure what you mean on 2. sidecars are not like steps (or shouldn't really be used that way), so I am a bit curious.

@sellitforcache
Copy link
Contributor Author

sellitforcache commented Jan 30, 2025

@vdemeester Thanks! Would some additional design be needed, or could I raise a PR for this myself now?

2 - I want to use a sidecar to run an api monitor that prints logs reporting current status, then print results when the task steps complete. Is this still a misuse of a sidecar? My point is that often it is better to have container level parallelism since they can natively mount writable shared filesystems without inter-node issues that you get when you run parallel tasks as separate pods.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature.
Projects
Status: Todo
Development

No branches or pull requests

2 participants