Skip to content

A set of tools and examples to run a flow-pipeline

Notifications You must be signed in to change notification settings

gl/flow-pipeline

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

flow-pipeline

This repository contains a set of tools and examples for GoFlow, a NetFlow/IPFIX/sFlow collector by Cloudflare.

Start a flow pipeline

The demo directory contains a startup file for an example pipeline including:

  • GoFlow: an sFlow collector
  • Kafka/Zookeeper
  • A database
  • An inserter: to insert the flows in a database

It will listen on port 6343/UDP for sFlow and 2055/UDP for NetFlow.




                   +------+         +-----+
     sFlow/NetFlow |goflow+--------->Kafka|
                   +------+         +-----+
                                       |
                                       +--------------+
                      Topic: flows     |              |
                                       |              |
                                 +-----v----+       +-v---------+
                                 | inserter |       |new service|
                                 +----------+       +-----------+
                                      |
                                      |
                                   +--v--+
                                   |  DB |
                                   +-----+

Clone the repository, then run the following:

cd compose
docker-compose -f docker-compose-mock.yaml

Wait a minute for all the components to start.

You can connect on the local Grafana http://localhost:3000 to look at the flows being collected.

About

A set of tools and examples to run a flow-pipeline

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 84.0%
  • Dockerfile 9.9%
  • Shell 6.1%