aws / containers-roadmap

This is the public roadmap for AWS container services (ECS, ECR, Fargate, and EKS).
https://aws.amazon.com/about-aws/whats-new/containers/
Other
5.21k stars 320 forks source link

[ECS] [request]: Ability to send signals to containers #1049

Open raags opened 4 years ago

raags commented 4 years ago

Community Note

Tell us about your request What do you want us to build?

The docker cli allows sending arbitrary signals to containers with docker kill --signal=SIGHUP command. This has dual functionality. One is to stop running containers (by sending SIGTERM), or signalling the process to do a certain action, e.g. flush buffers, reload configuration, dump debug info, etc.

Can we have a API to do the same with ECS (EC2 and Fargate) ?

Which service(s) is this request for? Fargate, ECS

Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard? What outcome are you trying to achieve, ultimately, and why is it hard/impossible to do right now? What is the impact of not having this problem solved? The more details you can provide, the better we'll be able to understand and solve the problem.

Unix signals act as controls to send commands to a process. SIGTERM is the most common signal, asking the process to terminate. In addition, there are many others that can be used to send controls to a running process. Some use cases are, flush buffers, dump debug information to stdout, reload configuration (can be from a remote store), Reset active connect, etc. These are tremendously useful in many operational aspects, such as monitoring, debugging, profiling and so on.

Such functionality is also needed for containers. The only workaround I see for EC2 type containers, is to figure out the instance its running on and use docker cli directly which is cumbersome

Are you currently working around this issue? How are you currently solving this problem? No good solution as of now

Additional context Anything else we should know?

Attachments If you think you might have additional information that you'd like to include via an attachment, please do - we'll take a look. (Remember to remove any personally-identifiable information.)

antoniodesenvolvedor commented 1 year ago

This has also being requested in https://github.com/aws/containers-roadmap/issues/359

Perhaps ecs could just inherit from the dockerfile STOPSIGNAL directive, this was suggested in this article but with no ETA.

This feature is necessary to have graceful shutdowns with nginx.