Skip to content

[BUG] Cannot get simple master-slave setup working #201

@RoanBrand

Description

@RoanBrand

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

I set up a master and a slave container, configured for each other.
1 probe target for the master, 1 probe target for the slave, set up in the master's Targets file.
When starting both, the slave confirms getting a config from the master and confirms probing 1 target.
The master however mentions no slaves in its log and is probing BOTH targets.
I can also see a data file for both the master probe and the slave's forwarded data:
master/data/Europe/Switzerland/CernIXP~boomer.rrd
master/data/Europe/Switzerland/CernIXP.rrd

The master seems to be probing the slave's target as well as receiving data for the slave probes at the same time.
Please advise, and thanks for your time.

Expected Behavior

I expect to see the master's log confirming it is only probing 1 target, the one that does not have a slaves = directive with it.
And also just a single data file master/data/Europe/Switzerland/CernIXP~boomer.rrd for that target

Steps To Reproduce

I have:
compose.yml:

---
services:
  smokeping-master:
    image: lscr.io/linuxserver/smokeping:latest
    container_name: smokeping-master
    hostname: smokeping-master #optional
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
    volumes:
      - ./master/config:/config
      - ./master/data:/data
    ports:
      - 8085:80
    restart: unless-stopped

  smokeping-slave:
    image: lscr.io/linuxserver/smokeping:latest
    container_name: smokeping-slave
    hostname: boomer #optional - (not for slave)
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - MASTER_URL=http://smokeping-master:80/smokeping/ #optional
      - SHARED_SECRET=lkasdf93uhhfdfddf #optional
      - CACHE_DIR=/tmp #optional
    volumes:
      - ./slave/config:/config
      - ./slave/data:/data
    ports:
      - 8086:80
    restart: unless-stopped

master/config/Targets:

*** Targets ***

probe = FPing

menu = Top
title = Network Latency Grapher
remark = Welcome to the SmokePing website of WORKS Company. \
         Here you will learn all about the latency of our network.

+ Europe

menu = Europe
title = European Connectivity

++ Germany

menu = Germany
title = The Fatherland

+++ TelefonicaDE

menu = Telefonica DE
title = Telefonica DE
host = www.telefonica.de

++ Switzerland

slaves = boomer
menu = Switzerland
title = Switzerland

+++ CernIXP

slaves = boomer
menu = CernIXP
title = Cern Internet eXchange Point
host = cixp.web.cern.ch

master/config/Slaves:

*** Slaves ***
secrets=/etc/smokeping/smokeping_secrets
+boomer
display_name=boomer
color=0000ff

#+slave2
#display_name=another
#color=00ff00

master/config/smokeping_secrets:

host1:mysecret
host2:yoursecret
boomer:lkasdf93uhhfdfddf

Then start with docker compose up and read the logs and check the folders

Environment

- OS: MacOS Version 15.5 (24F74) on a M4 Air (arm64)
- How docker service was installed:
Installed docker for mac silicon, created `compose.yml` example file and ran `docker compose up`

CPU architecture

arm64

Docker creation

docker compose up (in the same folder as compose.yml)
`compose.yml`:

---
services:
  smokeping-master:
    image: lscr.io/linuxserver/smokeping:latest
    container_name: smokeping-master
    hostname: smokeping-master #optional
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
    volumes:
      - ./master/config:/config
      - ./master/data:/data
    ports:
      - 8085:80
    restart: unless-stopped

  smokeping-slave:
    image: lscr.io/linuxserver/smokeping:latest
    container_name: smokeping-slave
    hostname: boomer #optional - (not for slave)
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - MASTER_URL=http://smokeping-master:80/smokeping/ #optional
      - SHARED_SECRET=lkasdf93uhhfdfddf #optional
      - CACHE_DIR=/tmp #optional
    volumes:
      - ./slave/config:/config
      - ./slave/data:/data
    ports:
      - 8086:80
    restart: unless-stopped

Container logs

roan@Roans-MacBook-Air smokeping-docker2 % docker compose up  
[+] Running 3/3
 ✔ Network smokeping-docker2_default  Created                                                                                                                            0.0s 
 ✔ Container smokeping-slave          Created                                                                                                                            0.0s 
 ✔ Container smokeping-master         Created                                                                                                                            0.0s 
Attaching to smokeping-master, smokeping-slave
smokeping-master  | [migrations] started
smokeping-master  | [migrations] no migrations found
smokeping-slave   | [migrations] started
smokeping-slave   | [migrations] no migrations found
smokeping-master  | ───────────────────────────────────────
smokeping-master  | 
smokeping-slave   | ───────────────────────────────────────
smokeping-master  |       ██╗     ███████╗██╗ ██████╗
smokeping-slave   | 
smokeping-master  |       ██║     ██╔════╝██║██╔═══██╗
smokeping-slave   |       ██╗     ███████╗██╗ ██████╗
smokeping-master  |       ██║     ███████╗██║██║   ██║
smokeping-slave   |       ██║     ██╔════╝██║██╔═══██╗
smokeping-master  |       ██║     ╚════██║██║██║   ██║
smokeping-slave   |       ██║     ███████╗██║██║   ██║
smokeping-master  |       ███████╗███████║██║╚██████╔╝
smokeping-slave   |       ██║     ╚════██║██║██║   ██║
smokeping-master  |       ╚══════╝╚══════╝╚═╝ ╚═════╝
smokeping-slave   |       ███████╗███████║██║╚██████╔╝
smokeping-master  | 
smokeping-slave   |       ╚══════╝╚══════╝╚═╝ ╚═════╝
smokeping-master  |    Brought to you by linuxserver.io
smokeping-slave   | 
smokeping-master  | ───────────────────────────────────────
smokeping-slave   |    Brought to you by linuxserver.io
smokeping-master  | 
smokeping-slave   | ───────────────────────────────────────
smokeping-master  | To support LSIO projects visit:
smokeping-slave   | 
smokeping-master  | https://www.linuxserver.io/donate/
smokeping-slave   | To support LSIO projects visit:
smokeping-master  | 
smokeping-slave   | https://www.linuxserver.io/donate/
smokeping-master  | ───────────────────────────────────────
smokeping-slave   | 
smokeping-master  | GID/UID
smokeping-slave   | ───────────────────────────────────────
smokeping-master  | ───────────────────────────────────────
smokeping-slave   | GID/UID
smokeping-master  | 
smokeping-slave   | ───────────────────────────────────────
smokeping-master  | User UID:    1000
smokeping-slave   | 
smokeping-master  | User GID:    1000
smokeping-slave   | User UID:    1000
smokeping-master  | ───────────────────────────────────────
smokeping-slave   | User GID:    1000
smokeping-master  | Linuxserver.io version: 2.9.0-r0-ls139
smokeping-slave   | ───────────────────────────────────────
smokeping-master  | Build-date: 2025-07-08T20:49:10+00:00
smokeping-slave   | Linuxserver.io version: 2.9.0-r0-ls139
smokeping-master  | ───────────────────────────────────────
smokeping-slave   | Build-date: 2025-07-08T20:49:10+00:00
smokeping-master  |     
smokeping-slave   | ───────────────────────────────────────
smokeping-slave   |     
smokeping-master  | [custom-init] No custom files found, skipping...
smokeping-slave   | [custom-init] No custom files found, skipping...
smokeping-slave   | AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.19.0.3. Set the 'ServerName' directive globally to suppress this message
smokeping-master  | AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.19.0.2. Set the 'ServerName' directive globally to suppress this message
smokeping-master  | Connection to localhost (::1) 80 port [tcp/http] succeeded!
smokeping-slave   | Connection to localhost (::1) 80 port [tcp/http] succeeded!
smokeping-master  | [ls.io-init] done.
smokeping-slave   | [ls.io-init] done.
smokeping-slave   | Sent data to Server and got new config in response.
smokeping-master  | ### parsing dig output...OK
smokeping-slave   | ### parsing dig output...OK
smokeping-master  | ### assuming you are using an tcpping copy reporting in milliseconds
smokeping-master  | Smokeping version 2.009000 successfully launched.
smokeping-master  | Entering multiprocess mode.
smokeping-master  | Child process 341 started for probe FPing.
smokeping-master  | No targets defined for probe TCPPing, skipping.
smokeping-master  | No targets defined for probe Curl, skipping.
smokeping-master  | No targets defined for probe FPing6, skipping.
smokeping-master  | No targets defined for probe DNS, skipping.
smokeping-master  | All probe processes started successfully.
smokeping-master  | FPing: probing 2 targets with step 300 s and offset 107 s.
smokeping-slave   | ### assuming you are using an tcpping copy reporting in milliseconds
smokeping-slave   | Smokeping version 2.009000 successfully launched.
smokeping-slave   | Entering multiprocess mode.
smokeping-slave   | No targets defined for probe DNS, skipping.
smokeping-slave   | No targets defined for probe Curl, skipping.
smokeping-slave   | No targets defined for probe TCPPing, skipping.
smokeping-slave   | No targets defined for probe FPing6, skipping.
smokeping-slave   | Child process 262 started for probe FPing.
smokeping-slave   | All probe processes started successfully.
smokeping-slave   | FPing: probing 1 targets with step 300 s and offset 197 s.

Sorry the logs are mixed between the master and slave here.
The important lines are:

smokeping-master  | FPing: probing 2 targets with step 300 s and offset 107 s.
smokeping-slave   | Sent data to Server and got new config in response.
smokeping-slave   | FPing: probing 1 targets with step 300 s and offset 197 s.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions