-
Notifications
You must be signed in to change notification settings - Fork 329
Description
Community Note
- Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
- Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
- If you are interested in working on this issue or have submitted a pull request, please leave a comment
Tell us about your request
Provide the ability to leverage ebpf for security and monitoring use cases on fargate
Which service(s) is this request for?
ECS or EKS running on fargate
Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
An eBPF program is "attached" to a designated code path in the kernel. When the code path is traversed, any attached eBPF programs are executed. Given its origin, eBPF is especially suited to writing network programs and it's possible to write programs that attach to a network socket to filter traffic, to classify traffic, and to run network classifier actions.
We'd want to attach eBPF programs to the following static tracepoints:
- System call entry path
- System call exit path
- Process context switch
- Process termination
- Minor and major page faults
- Process signal delivery
This allows the collection of -
- Data associated to a network connection (e.g. TCP/UDP IPv4/IPv6 tuple, UNIX socket names, …).
- Highly granular metrics about the process (memory counters, page faults, socket queue length, …).
- Container-specific data, such as the cgroups the process issuing the system call belongs to, as well as the namespaces that process lives in.
Are you currently working around this issue?
We are currently working around this issue by using ptrace which was exposed in fargate 1.4, but ebpf would be a more stable cross platform approach.
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.)
Metadata
Metadata
Assignees
Labels
Type
Projects
Status