All Projects → kinvolk → Cgnet

kinvolk / Cgnet

Licence: apache-2.0

Programming Languages

go
31211 projects - #10 most used programming language

Labels

Projects that are alternatives of or similar to Cgnet

pwru
Packet, where are you? -- Linux kernel networking debugger
Stars: ✭ 694 (+905.8%)
Mutual labels:  bpf
Bpftrace
High-level tracing language for Linux eBPF
Stars: ✭ 4,526 (+6459.42%)
Mutual labels:  bpf
Tracee
Linux Runtime Security and Forensics using eBPF
Stars: ✭ 788 (+1042.03%)
Mutual labels:  bpf
ocaml-bpf
OCaml embedded eBPF assembler
Stars: ✭ 18 (-73.91%)
Mutual labels:  bpf
Rbpf
Rust virtual machine and JIT compiler for eBPF programs
Stars: ✭ 306 (+343.48%)
Mutual labels:  bpf
Libseccomp
The main libseccomp repository
Stars: ✭ 489 (+608.7%)
Mutual labels:  bpf
tcpslice
tcpslice concatenates multiple pcap files together, or extracts time slices from one or more pcap files.
Stars: ✭ 48 (-30.43%)
Mutual labels:  bpf
Cilium
eBPF-based Networking, Security, and Observability
Stars: ✭ 10,256 (+14763.77%)
Mutual labels:  bpf
Libbpf
Automated upstream mirror for libbpf stand-alone build.
Stars: ✭ 353 (+411.59%)
Mutual labels:  bpf
Xdp Tutorial
XDP tutorial
Stars: ✭ 740 (+972.46%)
Mutual labels:  bpf
bpfjit
Just-in-Time compilation of bpf
Stars: ✭ 26 (-62.32%)
Mutual labels:  bpf
el7-bpf-specs
RPM specs for building bpf related tools on CentOS 7
Stars: ✭ 38 (-44.93%)
Mutual labels:  bpf
Capstone
Capstone disassembly/disassembler framework: Core (Arm, Arm64, BPF, EVM, M68K, M680X, MOS65xx, Mips, PPC, RISCV, Sparc, SystemZ, TMS320C64x, Web Assembly, X86, X86_64, XCore) + bindings.
Stars: ✭ 5,374 (+7688.41%)
Mutual labels:  bpf
oxdpus
A toy tool that leverages the super powers of XDP to bring in-kernel IP filtering
Stars: ✭ 59 (-14.49%)
Mutual labels:  bpf
Ebpf exporter
Prometheus exporter for custom eBPF metrics
Stars: ✭ 829 (+1101.45%)
Mutual labels:  bpf
bpflock
bpflock - eBPF driven security for locking and auditing Linux machines
Stars: ✭ 54 (-21.74%)
Mutual labels:  bpf
Bpfd
Framework for running BPF programs with rules on Linux as a daemon. Container aware.
Stars: ✭ 396 (+473.91%)
Mutual labels:  bpf
Awesome Ebpf
A curated list of awesome projects related to eBPF.
Stars: ✭ 1,102 (+1497.1%)
Mutual labels:  bpf
Bpf Map
Generic tool to inspect BPF maps
Stars: ✭ 38 (-44.93%)
Mutual labels:  bpf
Goebpf
Library to work with eBPF programs from Go
Stars: ✭ 666 (+865.22%)
Mutual labels:  bpf

cgnet

cgnet uses eBPF to gather network statistics from cgroups.

$ make

# to test the cli tool
$ ./cgnet top <path to cgroup>

# to run the exporter outside of k8s
$ ./cgnet export --kubeconfig <path to kubeconfig>

# to run the exporter as a DaemonSet in the cluster
$ kubectl apply -f manifests/deploy/all-in-one.yaml

cgnet top

Uses the BPF program to monitor the cgroup specified on the command line.

cgnet export

Interacts with the Kubernetes API to retrieve a list of running pods and installs the BPF program for their cgroups. It then exports the data for Prometheus.

We provide the following to deploy and test the exporter:

  • Dockerfile - builds a simple minimal container running cgnet export
  • manifests/deploy - has Kubernetes manifests to run the container with the exporter
  • manifests/example - has configuration files to set up a cluster for testing the exporter

Dependencies

This repository experiments with Daniel Mack's eBPF hooks for cgroups.

  • Linux v4.10-rc
  • CONFIG_CGROUP_BPF=y

Vendoring

We use dep.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].