Skip to content
Snippets Groups Projects
Commit e676d47d authored by Jan David Mol's avatar Jan David Mol
Browse files

Use an additional MTU=9000 network to receive UDP through, because our data...

Use an additional MTU=9000 network to receive UDP through, because our data packets are >1500. The new network needs a name alphabetically before NETWORK_MODE to force Docker to use that to expose our ports on.
parent 2af22e10
No related branches found
No related tags found
1 merge request!63L2SS-278: Fix UDP routing by adding a MTU=9000 network
Showing
with 74 additions and 24 deletions
......@@ -124,13 +124,15 @@ down: ## stop all services and tear down the system
$(DOCKER_COMPOSE_ARGS) docker-compose $(COMPOSE_FILE_ARGS) down
ifneq ($(NETWORK_MODE),host)
docker network inspect $(NETWORK_MODE) &> /dev/null && ([ $$? -eq 0 ] && docker network rm $(NETWORK_MODE)) || true
docker network inspect 9000-$(NETWORK_MODE) &> /dev/null && ([ $$? -eq 0 ] && docker network rm 9000-$(NETWORK_MODE)) || true
endif
minimal: ## start the base TANGO system
ifneq ($(NETWORK_MODE),host)
docker network inspect $(NETWORK_MODE) &> /dev/null || ([ $$? -ne 0 ] && docker network create $(NETWORK_MODE))
docker network inspect 9000-$(NETWORK_MODE) &> /dev/null || ([ $$? -ne 0 ] && docker network create 9000-$(NETWORK_MODE) -o com.docker.network.driver.mtu=9000)
endif
$(DOCKER_COMPOSE_ARGS) docker-compose -f tango.yml up -d
$(DOCKER_COMPOSE_ARGS) docker-compose -f tango.yml -f networks.yml up -d
start: up ## start a service (usage: make start <servicename>)
if [ $(UNAME_S) = Linux ]; then chmod a+r ~/.Xauthority; fi
......
......@@ -4,7 +4,8 @@ services:
archiver-maria-db:
image: ${LOCAL_DOCKER_REGISTRY_HOST}/${LOCAL_DOCKER_REGISTRY_USER}/mariadb_hdbpp:2021-05-28
container_name: archiver-maria-db
network_mode: ${NETWORK_MODE}
networks:
- control
depends_on:
- databaseds
environment:
......@@ -18,7 +19,8 @@ services:
hdbpp-es:
image: ${LOCAL_DOCKER_REGISTRY_HOST}/${LOCAL_DOCKER_REGISTRY_USER}/tango-archiver:2021-05-28
network_mode: ${NETWORK_MODE}
networks:
- control
container_name: hdbpp-es
depends_on:
- databaseds
......@@ -35,7 +37,8 @@ services:
hdbpp-cm:
image: ${LOCAL_DOCKER_REGISTRY_HOST}/${LOCAL_DOCKER_REGISTRY_USER}/tango-archiver:2021-05-28
network_mode: ${NETWORK_MODE}
networks:
- control
container_name: hdbpp-cm
depends_on:
- databaseds
......@@ -53,7 +56,8 @@ services:
dsconfig:
image: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-dsconfig:1.5.0.6
container_name: dsconfig
network_mode: ${NETWORK_MODE}
networks:
- control
depends_on:
- databaseds
environment:
......
......@@ -15,7 +15,8 @@ services:
astor:
image: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-java:9.3.3.2
container_name: ${CONTAINER_NAME_PREFIX}astor
network_mode: ${NETWORK_MODE}
networks:
- control
volumes:
- ${XAUTHORITY_MOUNT}
environment:
......@@ -33,7 +34,8 @@ services:
starter-example:
image: ${LOCAL_DOCKER_REGISTRY_HOST}/${LOCAL_DOCKER_REGISTRY_USER}/tango-starter:2021-05-28
container_name: ${CONTAINER_NAME_PREFIX}starter-example
network_mode: ${NETWORK_MODE}
networks:
- control
# set the hostname, otherwise duplicate device registrations result every
# time the hostname changes as the container is restarted.
hostname: starter-example
......
......@@ -22,7 +22,8 @@ services:
args:
SOURCE_IMAGE: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-itango:9.3.3.7
container_name: ${CONTAINER_NAME_PREFIX}device-pcc
network_mode: ${NETWORK_MODE}
networks:
- control
volumes:
- ${TANGO_LOFAR_CONTAINER_MOUNT}
environment:
......
......@@ -22,7 +22,8 @@ services:
args:
SOURCE_IMAGE: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-itango:9.3.3.7
container_name: ${CONTAINER_NAME_PREFIX}device-sdp
network_mode: ${NETWORK_MODE}
networks:
- control
volumes:
- ${TANGO_LOFAR_CONTAINER_MOUNT}
environment:
......
......@@ -22,7 +22,9 @@ services:
args:
SOURCE_IMAGE: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-itango:9.3.3.7
container_name: ${CONTAINER_NAME_PREFIX}device-statistics
network_mode: ${NETWORK_MODE}
networks:
- control
- data
volumes:
- ${TANGO_LOFAR_CONTAINER_MOUNT}
environment:
......
......@@ -17,7 +17,8 @@ services:
build:
context: elk-configure-host
container_name: ${CONTAINER_NAME_PREFIX}elk-configure-host
network_mode: ${NETWORK_MODE}
networks:
- control
privileged: true
elk:
......@@ -25,7 +26,8 @@ services:
build:
context: elk
container_name: ${CONTAINER_NAME_PREFIX}elk
network_mode: ${NETWORK_MODE}
networks:
- control
volumes:
- elk-data:/var/lib/elasticsearch
ports:
......
......@@ -12,7 +12,8 @@ services:
hdbpp-viewer:
image: ${LOCAL_DOCKER_REGISTRY_HOST}/${LOCAL_DOCKER_REGISTRY_USER}/hdbpp_viewer:2021-05-28
container_name: ${CONTAINER_NAME_PREFIX}hdbpp-viewer
network_mode: ${NETWORK_MODE}
networks:
- control
depends_on:
- databaseds
- dsconfig
......
......@@ -19,7 +19,8 @@ services:
args:
SOURCE_IMAGE: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-itango:9.3.3.7
container_name: ${CONTAINER_NAME_PREFIX}itango
network_mode: ${NETWORK_MODE}
networks:
- control
volumes:
- ${TANGO_LOFAR_CONTAINER_MOUNT}
- ${HOME}:/hosthome
......
......@@ -17,7 +17,8 @@ services:
CONTAINER_EXECUTION_UID: ${CONTAINER_EXECUTION_UID}
SOURCE_IMAGE: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-itango:9.3.3.7
container_name: ${CONTAINER_NAME_PREFIX}jupyter
network_mode: ${NETWORK_MODE}
networks:
- control
volumes:
- ${TANGO_LOFAR_CONTAINER_MOUNT}
- ${TANGO_LOFAR_LOCAL_DIR}/jupyter-notebooks:/jupyter-notebooks:rw
......
......@@ -20,4 +20,5 @@ services:
args:
SOURCE_IMAGE: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-itango:9.3.3.7
container_name: ${CONTAINER_NAME_PREFIX}lofar-device-base
network_mode: ${NETWORK_MODE}
networks:
- control
......@@ -14,7 +14,8 @@ services:
logviewer:
image: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-java:9.3.3.2
container_name: ${CONTAINER_NAME_PREFIX}logviewer
network_mode: ${NETWORK_MODE}
networks:
- control
volumes:
- ${XAUTHORITY_MOUNT}
environment:
......
#
# Docker compose file that describes our docker networks.
#
version: '3.5'
networks:
# Control network, with MTU=1500. Our default network.
control:
name: ${NETWORK_MODE}
# The networks are created and destroyed in the Makefile.
external: true
# Data network, with MTU=9000, to receive the Jumbo frames from SDP
data:
# This name needs to be alphabetically before the control network.
#
# As we add the data-receiving devices to both control and data
# network, we need to make sure the UDP data are forwarded to
# the data network, not the control network. The way Docker decides
# which network to actually expose ports on is by chosing the
# first one in alphabetical order.
name: 9000-${NETWORK_MODE}
external: true
......@@ -22,7 +22,8 @@ services:
pogo:
image: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-pogo:9.6.31.2
container_name: ${CONTAINER_NAME_PREFIX}pogo
network_mode: ${NETWORK_MODE}
networks:
- control
volumes:
- pogo:/home/tango
- ${XAUTHORITY_MOUNT}
......
......@@ -11,7 +11,8 @@ services:
build:
context: pypcc-sim
container_name: ${CONTAINER_NAME_PREFIX}pypcc-sim
network_mode: ${NETWORK_MODE}
networks:
- control
volumes:
- ${HOME}:/hosthome
ports:
......
......@@ -15,7 +15,8 @@ services:
rest:
image: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-rest:1.14.1.2
container_name: ${CONTAINER_NAME_PREFIX}tango-rest
network_mode: ${NETWORK_MODE}
networks:
- control
# set the hostname, otherwise duplicate device registrations result every
# time the hostname changes as the container is restarted.
hostname: tango-rest
......
......@@ -11,7 +11,8 @@ services:
build:
context: sdptr-sim
container_name: ${CONTAINER_NAME_PREFIX}sdptr-sim
network_mode: ${NETWORK_MODE}
networks:
- control
ports:
- "4840:4840"
restart: on-failure
......@@ -17,7 +17,8 @@ services:
tangodb:
image: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-db:10.4.10
container_name: ${CONTAINER_NAME_PREFIX}tangodb
network_mode: ${NETWORK_MODE}
networks:
- control
environment:
- MYSQL_ROOT_PASSWORD=secret
- MYSQL_DATABASE=tango
......@@ -32,7 +33,8 @@ services:
databaseds:
image: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-cpp:9.3.4.2
container_name: ${CONTAINER_NAME_PREFIX}databaseds
network_mode: ${NETWORK_MODE}
networks:
- control
ports:
- "10000:10000"
depends_on:
......
......@@ -13,7 +13,8 @@ services:
tangotest:
image: ${DOCKER_REGISTRY_HOST}/${DOCKER_REGISTRY_USER}/tango-java:9.3.3.2
container_name: ${CONTAINER_NAME_PREFIX}tangotest
network_mode: ${NETWORK_MODE}
networks:
- control
environment:
- TANGO_HOST=${TANGO_HOST}
entrypoint:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment