Last June, we announced the NetBeez partnership with Cumulus Networks, one of the leading operating systems for open networking switches. If you have recently purchased a switch by Dell or HP, then it is probably running Cumulus Linux.
As Panickos, NetBeez CTO, mentioned in that press release, “together with Cumulus Networks, we enable joint customers that are implementing open networking to successfully adopt distributed network monitoring to improve economics in the data center”.
In fact, by having an open networking data center, our customers can, first of all, rely on a powerful Linux distribution, Cumulus Linux, to implement their own user space applications to get the most out of the hardware deployed in the data center including network monitoring with NetBeez. The following image does a good job of illustrating the benefits of implementing NetBeez’ distributed network monitoring on a leaf and spine infrastructure:
Here is the complete procedure you can follow to test your deployment in the lab before rolling it out to production.
Build your leaf and spine Cumulus Linux lab
I followed the procedure developed by David Sinn to create my virtual data center in a vBox environment with two leaves and two spines:
The procedure is very simple. Excluding the time required to download the Cumulus VX and the management server, it took me no more than 30 minutes to set it up. Pretty simple. I did deploy this on a 2009 MacBook Pro with 8GB of RAM and a dual-core 2.53 GHz processor. The following screenshot reports the prompt from the four Cumulus VX virtual machines.
Once you have successfully created your leaf and spine lab, you can now proceed with the installation of the NetBeez Cumulus Linux agent by following the following procedure.
Installing the NetBeez agent on Cumulus Linux
To monitor your Cumulus-based leaf and spine data center with NetBeez, you will need to install the software agents and request a NetBeez server instance. The NetBeez Cumulus Linux agent is nothing more than a Debian package that conforms to the Cumulus Linux distribution. The NetBeez server instance can be on-premises or cloud-based. This server is where every NetBeez agent will report to. On the server instance runs the agent’s controller, the performance analytics engine, the database and the user dashboard. If you want to request a server instance, request a trial.
Here is the procedure to install a NetBeez software agent on a Cumulus Linux switch:
- Log in to your Cumulus Linux switch
ssh spine1
- Get privileged access
sudo su
- Add the address of the repository to /etc/apt/source.list
echo “deb https://repo.netbeez.net wheezy main” >> /etc/apt/sources.list
- Add the NetBeez public key
wget -O - https://repo.netbeez.net/netbeez_pub.key | apt-key add -
- Update the repository cache
apt-get update
- Install the netbeez-agent package
apt-get install netbeez-agent
- Edit the /etc/netbeez/netbeez-agent.conf file to point the agent to your own NetBeez instance
{"host":"", "port":"20019", "secure_port":"20018", "interfaces":"eth0" }
- Specify the model and type of your netbeez-agent
echo “cumulus-model-amd64” > /etc/netbeez/netbeez-agent_model.conf
- Copy the SSL certificate netbeez.pem you will receive with your dedicated instance to the appropriate directory
cp netbeez.pem /etc/ssl/certs/
- Restart the agent process
/etc/init.d/netbeez-agent restart
Voila! You have now a working environment with open networking and distributed network monitoring. As you can see in the following screenshot, I have my two leaf and two spine switches reporting back to the NetBeez dashboard.
As you can see in this example, I pushed couple of targets to each agent: one full mesh of ping tests switch to switch and one set of ping, DNS, HTTP, and traceroute tests to the NetBeez website (netbeez.net) to verify connectivity to the Internet. The following screenshot reports the detailed view of a NetBeez agent running on a Cumulus VX system.
Some of the information that you can get from your switch:
- Alerts when the switch goes down
- Data on the switch, such as:
- Availability
- Uptime
- Local clock
- IP address of the management interface
What’s next?
There are many use cases where I see this integration and partnership going forward. In the following weeks, I will be continuing to play with my lab and see what issues I can proactively detect with distributed network monitoring in a data center environment.
Below are some of the things that I want to test in the future:
- Verify and monitor reachability and round-trip-time to other switches in the infrastructure
- Verify and monitor Path MTU
- Performance alerts based on ICMP round-trip-time and packet loss
- Application performance measurements (mostly with HTTP for now)
- Iperf speed tests
- QoS validation (NetBeez agents can set the DSCP on ping, traceroute, and iperf traffic)
If you are a Cumulus Linux user, I would like to get your feedback and see if you you would like to implement this in a lab or in production.