Giter VIP home page Giter VIP logo

int-host-reporter's People

Contributors

ccascone avatar osinstom avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

int-host-reporter's Issues

Get rid of data interface configuration

We currently use dataInterface to define fabric network interface on the server. This solution requires the same interface name on each of the servers and that is not always the case (we should not introduce such a requirement).

The current idea to solve this is to provide “K8s cluster subnet” in the CIDR format and use it to determine data interface on each server.

Improve BPF logging

TODO:

  • add prefix to log messages from INT programs to help filtering logs
  • log messages lacks new line

[Calico] Enable loading BPF programs to container's virtual interfaces

Calico uses the following name format for containers' interfaces: caliXXXX. This is different from the naming convention used by Cilium (lxcXXXX) and possibly other CNIs.

We should come up with a way to configure naming scheme of CNI, so that INT Host Reporter will be able to load BPF programs to containers' interfaces.

Compile BPF program at startup

We currently compile INT-aware BPF program while the Docker image is built. However, the are some per-node metadata required to be a part of BPF program (e.g. Host IP, interface name, etc.). Therefore, we should compile BPF program at startup. This is also the approach that is taken by Cilium or Calico.

Listen to events from PERF_EVENT_ARRAY on all CPUs available

We currently have fixed configuration to listen only to the events on 2 CPUs, which may cause loosing some data plane reports. Once we'll have BPF programs compiled at load time, we should pass number of available CPUs as compiler flag and configure BPF_PERF_EVENT_ARRAY to listen on all CPUs.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.