diff --git a/deploy/mvp-singlenode/docker-compose/agents-N1.yml b/deploy/mvp-singlenode/docker-compose/agents-N1.yml index fcfe6bb6..90ee3e6f 100644 --- a/deploy/mvp-singlenode/docker-compose/agents-N1.yml +++ b/deploy/mvp-singlenode/docker-compose/agents-N1.yml @@ -15,6 +15,16 @@ x-agent: &agent-base depends_on: - gateway - controller + # The opampextension's `remote_config_path` (ASAPCollector#391) + # writes the controller-pushed RemoteConfig back to + # `/etc/otel/config.yaml` and exits, expecting Docker to restart + # the container so the new config takes effect. Both of the + # following are required for that flow to work: + # - the mount must be RW (no `:ro`) so the on-disk write succeeds + # - `restart: unless-stopped` so Docker brings the agent back up + # See /mydata/mvp-smoke-test/compose/smoke-overlay.yml for the + # working reference that established this contract. + restart: unless-stopped # Agents are configured via the mounted sketch pipeline; overriding # the entrypoint isn't needed — the patched asap-otel binary # is the default. @@ -26,7 +36,7 @@ x-agent: &agent-base # paper baselines' compose overlays (baseline-b*.yml) set # it before `docker compose up`. Compose expands the # ${VAR:-default} syntax at container start. - - ../configs/${AGENT_CONFIG:-asap-otel-agent-b2-full.yaml}:/etc/otel/config.yaml:ro + - ../configs/${AGENT_CONFIG:-asap-otel-agent-b2-full.yaml}:/etc/otel/config.yaml environment: CONTROLLER_OPAMP_URL: "ws://controller:4320/v1/opamp" # Runtime-samples push endpoint — sketch-runtime sends diff --git a/deploy/mvp-singlenode/docker-compose/agents-N10.yml b/deploy/mvp-singlenode/docker-compose/agents-N10.yml index 4aeb1dfb..d05eb290 100644 --- a/deploy/mvp-singlenode/docker-compose/agents-N10.yml +++ b/deploy/mvp-singlenode/docker-compose/agents-N10.yml @@ -15,6 +15,16 @@ x-agent: &agent-base depends_on: - gateway - controller + # The opampextension's `remote_config_path` (ASAPCollector#391) + # writes the controller-pushed RemoteConfig back to + # `/etc/otel/config.yaml` and exits, expecting Docker to restart + # the container so the new config takes effect. Both of the + # following are required for that flow to work: + # - the mount must be RW (no `:ro`) so the on-disk write succeeds + # - `restart: unless-stopped` so Docker brings the agent back up + # See /mydata/mvp-smoke-test/compose/smoke-overlay.yml for the + # working reference that established this contract. + restart: unless-stopped command: - "--config=/etc/otel/config.yaml" volumes: @@ -23,7 +33,7 @@ x-agent: &agent-base # paper baselines' compose overlays (baseline-b*.yml) set # it before `docker compose up`. Compose expands the # ${VAR:-default} syntax at container start. - - ../configs/${AGENT_CONFIG:-asap-otel-agent-b2-full.yaml}:/etc/otel/config.yaml:ro + - ../configs/${AGENT_CONFIG:-asap-otel-agent-b2-full.yaml}:/etc/otel/config.yaml deploy: resources: limits: @@ -42,7 +52,7 @@ services: fake-exporter: environment: EXPORTER_TARGET: "agent-1:4317" - # Workload-sweep knobs. Defaults match the N=1 + # workload-sweep knobs. Defaults match the N=1 # smoke-test. Override at bring-up: # # EXPORTER_RATE=10000 EXPORTER_CARDINALITY=5000 \ diff --git a/deploy/mvp-singlenode/docker-compose/agents-N100.yml b/deploy/mvp-singlenode/docker-compose/agents-N100.yml index 23b7075f..19cb88bc 100644 --- a/deploy/mvp-singlenode/docker-compose/agents-N100.yml +++ b/deploy/mvp-singlenode/docker-compose/agents-N100.yml @@ -15,6 +15,16 @@ x-agent: &agent-base depends_on: - gateway - controller + # The opampextension's `remote_config_path` (ASAPCollector#391) + # writes the controller-pushed RemoteConfig back to + # `/etc/otel/config.yaml` and exits, expecting Docker to restart + # the container so the new config takes effect. Both of the + # following are required for that flow to work: + # - the mount must be RW (no `:ro`) so the on-disk write succeeds + # - `restart: unless-stopped` so Docker brings the agent back up + # See /mydata/mvp-smoke-test/compose/smoke-overlay.yml for the + # working reference that established this contract. + restart: unless-stopped command: - "--config=/etc/otel/config.yaml" volumes: @@ -23,7 +33,7 @@ x-agent: &agent-base # paper baselines' compose overlays (baseline-b*.yml) set # it before `docker compose up`. Compose expands the # ${VAR:-default} syntax at container start. - - ../configs/${AGENT_CONFIG:-asap-otel-agent-b2-full.yaml}:/etc/otel/config.yaml:ro + - ../configs/${AGENT_CONFIG:-asap-otel-agent-b2-full.yaml}:/etc/otel/config.yaml deploy: resources: limits: @@ -42,7 +52,7 @@ services: fake-exporter: environment: EXPORTER_TARGET: "agent-1:4317" - # Workload-sweep knobs. Defaults match the N=1 + # workload-sweep knobs. Defaults match the N=1 # smoke-test. Override at bring-up: # # EXPORTER_RATE=10000 EXPORTER_CARDINALITY=5000 \ diff --git a/deploy/mvp-singlenode/docker-compose/gen-agents.sh b/deploy/mvp-singlenode/docker-compose/gen-agents.sh index df40de09..1dc3bdb6 100755 --- a/deploy/mvp-singlenode/docker-compose/gen-agents.sh +++ b/deploy/mvp-singlenode/docker-compose/gen-agents.sh @@ -30,6 +30,16 @@ x-agent: &agent-base depends_on: - gateway - controller + # The opampextension's \`remote_config_path\` (ASAPCollector#391) + # writes the controller-pushed RemoteConfig back to + # \`/etc/otel/config.yaml\` and exits, expecting Docker to restart + # the container so the new config takes effect. Both of the + # following are required for that flow to work: + # - the mount must be RW (no \`:ro\`) so the on-disk write succeeds + # - \`restart: unless-stopped\` so Docker brings the agent back up + # See /mydata/mvp-smoke-test/compose/smoke-overlay.yml for the + # working reference that established this contract. + restart: unless-stopped command: - "--config=/etc/otel/config.yaml" volumes: @@ -38,7 +48,7 @@ x-agent: &agent-base # paper baselines' compose overlays (baseline-b*.yml) set # it before \`docker compose up\`. Compose expands the # \${VAR:-default} syntax at container start. - - ../configs/\${AGENT_CONFIG:-asap-otel-agent-b2-full.yaml}:/etc/otel/config.yaml:ro + - ../configs/\${AGENT_CONFIG:-asap-otel-agent-b2-full.yaml}:/etc/otel/config.yaml deploy: resources: limits: