Note

We have recently rebranded and changed our name from Dataloop.IO to Outlyer. Our agent is still called dataloop agent, and relevant code reflects the old name (Dataloop) as well. Thank you for your patience as we update everything.

Docker Agent and Pack installation

There are two steps to getting our Docker support up and running:

  1. Installing the Docker Agent.
  2. Installing the Docker Monitoring Pack in your account.

Installing the Agent container

The Docker Agent is itself just a Docker container. It runs alongside the other containers on your Docker host. How you deploy the container depends on your environment. Choose the option that matches your needs:

Deploying on Kubernetes

Download our sample daemonset file and customize as necessary for your installation. At minimum, you will want to set your DOCKER_AGENT_KEY:

env:
  - name: DATALOOP_AGENT_KEY
    value: <your dataloop agent key>

Then deploy it to Kubernetes with this command:

kubectl apply -f kubernetes_daemonset.yaml

Tip

If you used kubeadm to setup your cluster, or if you use RBAC, the default service account will not have some permissions. We use your cluster's configuration to talk to the API, which uses service accounts. Kubeadm sets up RBAC, which in turn by default grants no permissions outside of the "kube-system" namespace.

This problem will manifest itself as an HTTP 403 error when running plugins.
To give your default service account the necessary "view" permissions, run the following:

kubectl create rolebinding default-view --clusterrole=view --serviceaccount=default:default --namespace=default


Deploying on Swarm

Please follow the instructions detailed in a standard Docker deployment, making sure that you pass --net=host to the docker run command.

Why can't the Agent run as a swarm service?

Swarm does not yet support running containers with --net=host, which is needed for the Agent to communicate simply with all containers on the host.


Starting the container by hand

The Dataloop container can be manually started with a simple docker run command. Detailed instructions are here.

Configuration

No matter which method you choose, you will need to specify your agent key, which associates the agent with your account. You can also pass in any of these additional environment variables:

DATALOOP_AGENT_KEY
Your agent key.
DATALOOP_NAME
Assigns a name to the agent. If not provided, the host name will be used.
DATALOOP_TAGS
Comma-separated list of extra tags to apply to the agent.
DATALOOP_DEBUG
If set to true, the agent will enable extra verbose logging.

Installing the Docker monitoring pack

The Docker pack provides some default dashboards and alerts for Docker environments. To install it:

  1. Go to Setup Monitoring > Pack Library.
  2. Scroll down to the Docker pack.
  3. Click the green "Install" button on the right side of the screen.

Docker pack

Viewing the Docker dashboard

The dashboard in the Docker pack provides a snapshot of your environment's overall health, including service status, number of containers running, and container resource usage. To view it, go to Dashboards > Docker.

Customizing the standard alerts

The pack provides a simple alert rule that triggers whenever any of the monitored containers goes down. To customize the rule, go to Alerts > Docker.