Skip to content

dcos/dcos-net

Repository files navigation

CircleCI Coverage Jira License Erlang Versions

dcos-net

DC/OS Net (or dcos-net) is a networking layer of The Datacenter Operating System (or DC/OS).

Features

dcos-net is responsible for the following:

For more information please see DC/OS documentation.

Dependencies

  • Erlang/OTP 22.x
  • C compiler
  • GNU make
  • libsodium 1.0.16+

To run common tests you can run make test on any Linux-based system with the following list of additional dependencies:

  • dig (dnsutils or bind-utils)
  • iproute2
  • ipvsadm

To run dcos-net, Exhibitor, Apache ZooKeeper, Apache Mesos, and Mesos-DNS are required too.

Development

You can build, check, and test dcos-net in a development image using make docker-compile, make docker-check, and make docker-test respectively. All makefile targets with docker- prefix build development image with all dependencies and run rebar3 in that image on the host directory.

To check your dcos-net build on DC/OS you can use miniDC/OS. In order to do so please repeat the following steps:

  1. Download a DC/OS build:

    curl -O https://downloads.dcos.io/dcos/testing/master/dcos_generate_config.sh
  2. Create a DC/OS cluster with 3 agent nodes (the minimum for development would be 1 node):

    make minidcos-create MINIDCOS_AGENTS=3
  3. Build and run dcos-net off you local repository on a particular node, in this case it is master_0:

    make minidcos-dev MINIDCOS_NODE=master_0
  4. Open dcos-shell on a node (agent_0, agent_1, ... agent_n):

    make minidcos-shell MINIDCOS_NODE=agent_1
  5. Destroy the cluster:

    make minidcos-destroy

Alternatively, you may build and run all the components yourself. Please refer to the instructions on how to build, configure, and run dcos-net locally.