diff --git a/components/backends/sglang/launch/agg.sh b/components/backends/sglang/launch/agg.sh index 2a94117b22..df2d29de70 100755 --- a/components/backends/sglang/launch/agg.sh +++ b/components/backends/sglang/launch/agg.sh @@ -11,8 +11,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 -m dynamo.sglang.clear_namespace --namespace dynamo # run ingress python3 -m dynamo.frontend --http-port=8000 & diff --git a/components/backends/sglang/launch/agg_embed.sh b/components/backends/sglang/launch/agg_embed.sh index 87f1e2e1d1..aa22a8c6e8 100755 --- a/components/backends/sglang/launch/agg_embed.sh +++ b/components/backends/sglang/launch/agg_embed.sh @@ -11,8 +11,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 -m dynamo.sglang.utils.clear_namespace --namespace dynamo # run ingress python3 -m dynamo.frontend --http-port=8000 & diff --git a/components/backends/sglang/launch/agg_router.sh b/components/backends/sglang/launch/agg_router.sh index 290a382f89..60dcc770c0 100755 --- a/components/backends/sglang/launch/agg_router.sh +++ b/components/backends/sglang/launch/agg_router.sh @@ -11,8 +11,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 -m dynamo.sglang.clear_namespace --namespace dynamo # run ingress python -m dynamo.frontend --router-mode kv --http-port=8000 & diff --git a/components/backends/sglang/launch/disagg.sh b/components/backends/sglang/launch/disagg.sh index bcd895c526..0f1a0da0e9 100755 --- a/components/backends/sglang/launch/disagg.sh +++ b/components/backends/sglang/launch/disagg.sh @@ -11,8 +11,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 -m dynamo.sglang.clear_namespace --namespace dynamo # run ingress python3 -m dynamo.frontend --http-port=8000 & diff --git a/components/backends/sglang/launch/disagg_dp_attn.sh b/components/backends/sglang/launch/disagg_dp_attn.sh index 337c5c8ccc..b5d8ba1bc5 100755 --- a/components/backends/sglang/launch/disagg_dp_attn.sh +++ b/components/backends/sglang/launch/disagg_dp_attn.sh @@ -11,8 +11,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 -m dynamo.sglang.clear_namespace --namespace dynamo # run ingress python3 -m dynamo.frontend --http-port=8000 & diff --git a/components/backends/sglang/launch/multimodal_agg.sh b/components/backends/sglang/launch/multimodal_agg.sh index 8216c75e7b..31336a826a 100755 --- a/components/backends/sglang/launch/multimodal_agg.sh +++ b/components/backends/sglang/launch/multimodal_agg.sh @@ -52,8 +52,6 @@ fi SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" SGLANG_BACKEND_DIR="$SCRIPT_DIR/src" -# run clear_namespace -python3 -m dynamo.sglang.clear_namespace --namespace dynamo # run ingress python3 -m dynamo.frontend --http-port=8000 & diff --git a/components/backends/sglang/launch/multimodal_disagg.sh b/components/backends/sglang/launch/multimodal_disagg.sh index 0b24fd33cc..f24f24f708 100755 --- a/components/backends/sglang/launch/multimodal_disagg.sh +++ b/components/backends/sglang/launch/multimodal_disagg.sh @@ -52,8 +52,6 @@ fi SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" SGLANG_BACKEND_DIR="$SCRIPT_DIR/src" -# run clear_namespace -python3 -m dynamo.sglang.clear_namespace --namespace dynamo # run ingress python3 -m dynamo.frontend --http-port=8000 & diff --git a/components/backends/trtllm/gpt-oss.md b/components/backends/trtllm/gpt-oss.md index e3d784cd36..5950fff66a 100644 --- a/components/backends/trtllm/gpt-oss.md +++ b/components/backends/trtllm/gpt-oss.md @@ -134,13 +134,10 @@ cd /workspace/components/backends/trtllm #### Option B: Manual Launch -1. **Clear namespace and start frontend**: +1. **Start frontend**: ```bash cd /workspace/dynamo/components/backends/trtllm -# Clear any existing deployments -python3 utils/clear_namespace.py --namespace dynamo - # Start frontend with round-robin routing python3 -m dynamo.frontend --router-mode round-robin --http-port 8000 & ``` diff --git a/components/backends/trtllm/launch/agg.sh b/components/backends/trtllm/launch/agg.sh index c07e6dc204..5c7021c59c 100755 --- a/components/backends/trtllm/launch/agg.sh +++ b/components/backends/trtllm/launch/agg.sh @@ -19,8 +19,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 utils/clear_namespace.py --namespace dynamo # run frontend python3 -m dynamo.frontend --http-port 8000 & diff --git a/components/backends/trtllm/launch/agg_metrics.sh b/components/backends/trtllm/launch/agg_metrics.sh index b8201ca332..3232576d76 100755 --- a/components/backends/trtllm/launch/agg_metrics.sh +++ b/components/backends/trtllm/launch/agg_metrics.sh @@ -17,9 +17,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# Run clear_namespace -python3 utils/clear_namespace.py --namespace dynamo - # Run frontend python3 -m dynamo.frontend --http-port 8000 & DYNAMO_PID=$! diff --git a/components/backends/trtllm/launch/agg_router.sh b/components/backends/trtllm/launch/agg_router.sh index 54d61a9299..ca6d439e63 100755 --- a/components/backends/trtllm/launch/agg_router.sh +++ b/components/backends/trtllm/launch/agg_router.sh @@ -16,8 +16,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 utils/clear_namespace.py --namespace dynamo # run frontend python3 -m dynamo.frontend --router-mode kv --http-port 8000 & diff --git a/components/backends/trtllm/launch/disagg.sh b/components/backends/trtllm/launch/disagg.sh index 16c3ac3fe2..f89eba5c9e 100755 --- a/components/backends/trtllm/launch/disagg.sh +++ b/components/backends/trtllm/launch/disagg.sh @@ -23,8 +23,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 utils/clear_namespace.py --namespace dynamo # run frontend python3 -m dynamo.frontend --http-port 8000 & diff --git a/components/backends/trtllm/launch/disagg_router.sh b/components/backends/trtllm/launch/disagg_router.sh index 934bee1708..e29c851a56 100755 --- a/components/backends/trtllm/launch/disagg_router.sh +++ b/components/backends/trtllm/launch/disagg_router.sh @@ -20,8 +20,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 utils/clear_namespace.py --namespace dynamo # run frontend python3 -m dynamo.frontend --router-mode kv --http-port 8000 & diff --git a/components/backends/trtllm/launch/epd_disagg.sh b/components/backends/trtllm/launch/epd_disagg.sh index 3fa15e5fdf..60cfa1c249 100755 --- a/components/backends/trtllm/launch/epd_disagg.sh +++ b/components/backends/trtllm/launch/epd_disagg.sh @@ -26,8 +26,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 utils/clear_namespace.py --namespace dynamo # run frontend python3 -m dynamo.frontend --http-port 8000 & diff --git a/components/backends/trtllm/launch/gpt_oss_disagg.sh b/components/backends/trtllm/launch/gpt_oss_disagg.sh index 8c3d5fbbd7..db42c01771 100755 --- a/components/backends/trtllm/launch/gpt_oss_disagg.sh +++ b/components/backends/trtllm/launch/gpt_oss_disagg.sh @@ -12,8 +12,6 @@ export DECODE_ENGINE_ARGS=${DECODE_ENGINE_ARGS:-"engine_configs/gpt_oss/decode.y set -e trap 'echo Cleaning up...; kill 0' EXIT -# run clear_namespace -python3 utils/clear_namespace.py --namespace dynamo # run frontend python3 -m dynamo.frontend --router-mode round-robin --http-port 8000 & diff --git a/components/backends/trtllm/utils/clear_namespace.py b/components/backends/trtllm/utils/clear_namespace.py deleted file mode 100644 index 62c7ff39b1..0000000000 --- a/components/backends/trtllm/utils/clear_namespace.py +++ /dev/null @@ -1,25 +0,0 @@ -# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - -import argparse -import asyncio -import logging - -from dynamo.runtime import DistributedRuntime, dynamo_worker -from dynamo.runtime.logging import configure_dynamo_logging - -configure_dynamo_logging() -logger = logging.getLogger(__name__) - - -@dynamo_worker() -async def clear_namespace(runtime: DistributedRuntime, namespace: str): - await runtime.temp_clear_namespace(f"/{namespace}/") - logger.info(f"Cleared /{namespace}") - - -if __name__ == "__main__": - parser = argparse.ArgumentParser() - parser.add_argument("--namespace", type=str, required=True) - args = parser.parse_args() - asyncio.run(clear_namespace(args.namespace)) diff --git a/components/src/dynamo/sglang/clear_namespace.py b/components/src/dynamo/sglang/clear_namespace.py deleted file mode 100644 index 416c52ab8f..0000000000 --- a/components/src/dynamo/sglang/clear_namespace.py +++ /dev/null @@ -1,27 +0,0 @@ -# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - -import argparse -import asyncio -import logging - -from dynamo.runtime import DistributedRuntime, dynamo_worker -from dynamo.runtime.logging import configure_dynamo_logging - -configure_dynamo_logging() - - -@dynamo_worker() -async def clear_namespace(runtime: DistributedRuntime, namespace: str): - await runtime.temp_clear_namespace(f"/{namespace}/") - logging.info(f"Cleared /{namespace}") - - -if __name__ == "__main__": - parser = argparse.ArgumentParser() - parser.add_argument("--namespace", type=str, required=True) - args = parser.parse_args() - assert ( - args.namespace - ), "Missing namespace, either pass --namespace or set DYN_NAMESPACE" - asyncio.run(clear_namespace(args.namespace)) diff --git a/lib/bindings/python/rust/lib.rs b/lib/bindings/python/rust/lib.rs index 3af5f5eddc..f479897a26 100644 --- a/lib/bindings/python/rust/lib.rs +++ b/lib/bindings/python/rust/lib.rs @@ -424,15 +424,6 @@ impl DistributedRuntime { }) } - /// Remove everything in an etcd namespace. - /// Will be removed once we can clear the MDC automatically. - fn temp_clear_namespace<'p>(&self, py: Python<'p>, name: String) -> PyResult> { - let inner = self.inner.clone(); - pyo3_async_runtimes::tokio::future_into_py(py, async move { - inner.temp_clear_namespace(&name).await.map_err(to_pyerr) - }) - } - fn namespace(&self, name: String) -> PyResult { Ok(Namespace { inner: self.inner.namespace(name).map_err(to_pyerr)?, diff --git a/lib/runtime/src/distributed.rs b/lib/runtime/src/distributed.rs index 27f139c4c8..85b0964f35 100644 --- a/lib/runtime/src/distributed.rs +++ b/lib/runtime/src/distributed.rs @@ -329,19 +329,6 @@ impl DistributedRuntime { } } - /// Clear everything in etcd under a key. - /// todo: Remove as soon as we auto-delete the MDC. - pub async fn temp_clear_namespace(&self, name: &str) -> anyhow::Result<()> { - let Some(etcd_client) = self.etcd_client() else { - return Ok(()); // no etcd, nothing to clear - }; - let kvs = etcd_client.kv_get_prefix(name).await?; - for kv in kvs { - etcd_client.kv_delete(kv.key(), None).await?; - } - Ok(()) - } - /// Get all registered hierarchy keys. Private because it is only used for testing. fn get_registered_hierarchies(&self) -> Vec { let registries = self.hierarchy_to_metricsregistry.read().unwrap(); diff --git a/tests/serve/launch/sglang_agg.sh b/tests/serve/launch/sglang_agg.sh index 6f674bf7c2..23d4127bdf 100755 --- a/tests/serve/launch/sglang_agg.sh +++ b/tests/serve/launch/sglang_agg.sh @@ -11,9 +11,6 @@ cleanup() { } trap cleanup EXIT INT TERM -# run clear_namespace -python3 -m dynamo.sglang.clear_namespace --namespace dynamo - # run ingress python3 -m dynamo.frontend --http-port=8000 & DYNAMO_PID=$!