DockerBeez: A Container Agent for Distributed Network Monitoring

A Network Monitoring Container

A widely requested, new type of agent is here (in beta!) as of today! Meet DockerBeez, which encapsulates all of the tests that you are used to having with the rest of our FastE, Gige, Software and virtual agents (sorry no WiFi at this point), delivered using the Docker Hub system. This new agent enables you to perform distributed network monitoring on Docker.

Start Network Monitoring with Docker

The only requirement to test our new feature right now is to have a BeezKeeper server with available Software licenses and a system able to run Docker containers. Containers are now becoming more ubiquitous than Virtual Machines.

They can run on any of the popular cloud services (AWS ECS, Google Cloud Containers, Azure cloud, DigitalOcean, etc), a workstation or VM with the Docker Engine installed on Linux, Mac OS X, or Windows. So far, we have tested our container agents on Linux and Mac OS X but we’d love to hear your experiences from any other systems that you’ve tried our agents on.

Pulling DockerBeez Image

We have published our DockerBeez on Docker Hub: https://hub.docker.com/r/netbeez/nb-agent. Installing the agent is as easy as running one command:

docker pull netbeez/nb-agent

Configuring and Running DockerBeez

Once the nb-agent container image is pulled down to your system, you’ll have to run it with the right options to ensure that the container is going to connect to your server.

There are a few ways to do this. The easiest is by using the secret key displayed on the About page of your BeezKeeper dashboard (the same secret key used to configure the software agents).

docker run -e "NB_SECRET_KEY=xxx" netbeez/nb-agent

This will automatically configure your agent to connect to your BeezKeeper server through the encrypted channel. Seconds later, the agent will appear on your dashboard just as any other agent would, ready to be configured with tests and targets.

Now, you may want to bring the agent down and up again, and have the agent to appear as the same one that you ran earlier. To do this, you’ll need to run it with a docker volume attached in order to persist the configuration:

docker volume create dockerbeez_vol
docker run -e "NB_SECRET_KEY=xxx" -v dockerbeez_vol:/etc/netbeez/persistence/:rw netbeez/nb-agent

Finally, if you configure the agent with the volume for persistence but accidentally clean up the volume and lose the configurations, when you rerun this command the agent will appear as a new agent on the dashboard. Don’t worry though! We have a solution to bring the agent back to life without having to create a new entry on your dashboard.

Using the AGENT_UUID option you’ll be able to tell your BeezKeeper server which agent entry this new container corresponds to. You can find the agent’s UUID on your dashboard by clicking on the ‘i’ icon in the agent’s details view.

docker run -e "NB_SECRET_KEY=xxx" -e "AGENT_UUID=uuuu" -v containerbeez:/etc/netbeez/persistence/:rw netbeez/nb-agent

Manual Configuration

If for some reason you’d like to manually configure the agent by setting the hostname, port, and certificates to be used for encrypted communications, you can still do that using the multitude of options provided. More details on those can be found here: https://hub.docker.com/r/netbeez/nb-agent

Looking forward to hearing from you!

Acknowledgements: Thank you to Christian Ackman for implementing this sooner rather than later.

Note: The DockerBeez agent is released as a beta at the moment. By the end of this month we will have the production ready release along with version 2.0 of BeezKeeper. That doesn’t mean you can’t try it out and provide us with some feedback! The UUID tracking feature on the dashboard will be available in v.2.0. You can still find the UUID of the agent by clicking on the ‘{ }’ icon in the agent details.

decoration image

Get your free trial now

Monitor your network from the user perspective

You can share

Twitter Linkedin Facebook

Let's keep in touch

decoration image