diff --git a/mkdocs/blog/posts/nvidia-dynamo.md b/mkdocs/blog/posts/nvidia-dynamo.md index 1d2e63d66..58da5c346 100644 --- a/mkdocs/blog/posts/nvidia-dynamo.md +++ b/mkdocs/blog/posts/nvidia-dynamo.md @@ -94,10 +94,10 @@ replicas: - export NATS_SERVER="nats://$DSTACK_ROUTER_INTERNAL_IP:4222" # Set to enable /health endpoint required by dstack probes. - export DYN_SYSTEM_PORT="8000" - # Wait until the router's etcd and NATS ports are actually accepting connections. + # Wait until the router's etcd and NATS are healthy. - | - until (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/2379) 2>/dev/null \ - && (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/4222) 2>/dev/null; do + until curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:2379/health" \ + && curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:8222/healthz"; do echo "waiting for etcd/NATS on $DSTACK_ROUTER_INTERNAL_IP..."; sleep 3 done - pip install "ai-dynamo[sglang]==1.1.1" @@ -121,8 +121,8 @@ replicas: - export NATS_SERVER="nats://$DSTACK_ROUTER_INTERNAL_IP:4222" - export DYN_SYSTEM_PORT="8000" - | - until (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/2379) 2>/dev/null \ - && (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/4222) 2>/dev/null; do + until curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:2379/health" \ + && curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:8222/healthz"; do echo "waiting for etcd/NATS on $DSTACK_ROUTER_INTERNAL_IP..."; sleep 3 done - pip install "ai-dynamo[sglang]==1.1.1" diff --git a/mkdocs/docs/concepts/services.md b/mkdocs/docs/concepts/services.md index f9f260408..0f404c4cf 100644 --- a/mkdocs/docs/concepts/services.md +++ b/mkdocs/docs/concepts/services.md @@ -489,10 +489,10 @@ Below is an example for running `zai-org/GLM-4.5-Air-FP8` on `H200`: - export NATS_SERVER="nats://$DSTACK_ROUTER_INTERNAL_IP:4222" # Set to enable /health endpoint required by dstack probes. - export DYN_SYSTEM_PORT="8000" - # Wait until the router's etcd and NATS ports are actually accepting connections. + # Wait until the router's etcd and NATS are healthy. - | - until (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/2379) 2>/dev/null \ - && (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/4222) 2>/dev/null; do + until curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:2379/health" \ + && curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:8222/healthz"; do echo "waiting for etcd/NATS on $DSTACK_ROUTER_INTERNAL_IP..."; sleep 3 done - pip install "ai-dynamo[sglang]==1.1.1" @@ -516,8 +516,8 @@ Below is an example for running `zai-org/GLM-4.5-Air-FP8` on `H200`: - export NATS_SERVER="nats://$DSTACK_ROUTER_INTERNAL_IP:4222" - export DYN_SYSTEM_PORT="8000" - | - until (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/2379) 2>/dev/null \ - && (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/4222) 2>/dev/null; do + until curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:2379/health" \ + && curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:8222/healthz"; do echo "waiting for etcd/NATS on $DSTACK_ROUTER_INTERNAL_IP..."; sleep 3 done - pip install "ai-dynamo[sglang]==1.1.1" diff --git a/mkdocs/docs/examples/inference/dynamo.md b/mkdocs/docs/examples/inference/dynamo.md index b73cc809f..5c9fecc23 100644 --- a/mkdocs/docs/examples/inference/dynamo.md +++ b/mkdocs/docs/examples/inference/dynamo.md @@ -60,10 +60,10 @@ groups: - export NATS_SERVER="nats://$DSTACK_ROUTER_INTERNAL_IP:4222" # Set to enable /health endpoint required by dstack probes. - export DYN_SYSTEM_PORT="8000" - # Wait until the router's etcd and NATS ports are actually accepting connections. + # Wait until the router's etcd and NATS are healthy. - | - until (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/2379) 2>/dev/null \ - && (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/4222) 2>/dev/null; do + until curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:2379/health" \ + && curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:8222/healthz"; do echo "waiting for etcd/NATS on $DSTACK_ROUTER_INTERNAL_IP..."; sleep 3 done - pip install "ai-dynamo[sglang]==1.1.1" @@ -87,8 +87,8 @@ groups: - export NATS_SERVER="nats://$DSTACK_ROUTER_INTERNAL_IP:4222" - export DYN_SYSTEM_PORT="8000" - | - until (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/2379) 2>/dev/null \ - && (echo > /dev/tcp/$DSTACK_ROUTER_INTERNAL_IP/4222) 2>/dev/null; do + until curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:2379/health" \ + && curl -fsS "http://$DSTACK_ROUTER_INTERNAL_IP:8222/healthz"; do echo "waiting for etcd/NATS on $DSTACK_ROUTER_INTERNAL_IP..."; sleep 3 done - pip install "ai-dynamo[sglang]==1.1.1"