eBPF will help solve service mesh by getting rid of sidecars

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • proposal

    A repository for gRFCs (by grpc)

  • Not convinced that this a better solution then just implementing most of these features as part of the protocol. Most languages already support grpc load balancing.

    https://github.com/grpc/proposal/blob/master/A27-xds-global-...

  • HTTP Parser

    Discontinued http request/response parser for c

  • It looks not too different from the majority of HTTP parsers out there written in C. Here is an example of NodeJS [0].

    [0] https://github.com/nodejs/http-parser/blob/main/http_parser....

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • pixie

    Instant Kubernetes-Native Application Observability

  • Bounded loop plus 1M instruction limits in the 5.4 kernel (no record at hands about the exact version), gives a large range of supported headers. Also note that these BPF code are on the network level, which is subject to the MTU limit as well, which usually is 1500 and now can be 10s of KBs (65,525 bytes maxmial in theory accroding to https://www.lifewire.com/definition-of-mtu-817948, but my networking knownledge is poor). These makes it possible to effectively handle all possible headers.

    HTTP is actually fine.

    HTTP2 will be a bigger issue as it has HPACK, and Huffman coding, that would be very complicated to maintain inside BPF runtime. I haven't thought about it closely yet. But based on our experience at http://px.dev, I am not aware of any glaring technical obstacles.

  • metallb

    A network load-balancer implementation for Kubernetes using standard routing protocols

  • We reused the LB as much as possible to avoid the BGP thing. There's a thing called MetalLB designed around that though.

    https://metallb.universe.tf/

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts