0.19.22
Warning
When updating, make sure to install 0.19.23, the latest bug-fix release.
Services
Probes
You can now configure HTTP probes to check the health of your service.
type: service
name: my-service
port: 80
image: my-app:latest
probes:
- type: http
url: /health
interval: 15sProbe statuses are displayed in dstack ps --verbose and are considered during rolling deployments. This enables you to deploy new versions of your service with zero downtime.
> dstack ps --verbose
NAME BACKEND STATUS PROBES SUBMITTED
my-service deployment=1 running 11 mins ago
replica=0 job=0 deployment=0 aws (us-west-2) running ✓ 11 mins ago
replica=1 job=0 deployment=1 aws (us-west-2) running × 1 min agoLearn more about probes in the docs.
Accelerators
NVIDIA GPU health checks
dstack now monitors NVIDIA GPU health using DCGM background health checks:
> dstack fleet
FLEET INSTANCE BACKEND RESOURCES PRICE STATUS CREATED
my-fleet 0 aws (us-east-1) T4:16GB:1 $0.526 idle 11 mins ago
1 aws (us-east-1) T4:16GB:1 $0.526 idle (warning) 11 mins ago
2 aws (us-east-1) T4:16GB:1 $0.526 idle (failure) 11 mins agoIn this example, the first instance is healthy, the second has a non-fatal issue and can still be used, and the last has a fatal error that makes it inoperable.
Note
GPU health checks are supported on AWS (except with custom os_images), Azure (except for A10 GPUs), GCP, and OCI, as well as SSH fleet instances with DCGM installed and configured for background health checks. To use GPU health checks, re-create the fleets that were created before 0.19.22.
Tenstorrent Galaxy
dstack now supports Tenstorrent Galaxy cards via SSH fleets.
Backends
Hot Aisle
This release features an integration with Hot Aisle, a cloud provider that offers on-demand access to AMD MI300x GPUs at competitive prices.
> dstack offer -b hotaisle
# BACKEND RESOURCES INSTANCE TYPE PRICE
1 hotaisle (us-michigan-1) cpu=13 mem=224GB disk=12288GB MI300X:192GB:1 1x MI300X 13x Xeon Platinum 8470 $1.99
2 hotaisle (us-michigan-1) cpu=8 mem=224GB disk=12288GB MI300X:192GB:1 1x MI300X 8x Xeon Platinum 8470 $1.99
Refer to the docs for instructions on configuring the hotaisle backend in your dstack project.
CLI
Reading configurations from stdin
dstack apply can now read configurations from stdin using the -y -f - flags. This allows configuration files to be parameterized in arbitrary ways:
> cat .dstack/volume.dstack.yml
type: volume
name: my-vol
backend: aws
region: us-east-1
size: $VOL_SIZE
> export VOL_SIZE=50
> envsubst '$VOL_SIZE' < .dstack/volume.dstack.yml | dstack apply -y -f -Debug logs
The dstack CLI now saves debug logs to the ~/.dstack/logs/cli/ directory. These logs can be useful for troubleshooting failed commands or submitting bug reports.
UI
Secrets
The project settings page now has a section to manage secrets.
Logs improvements
The UI can now optionally display timestamps in front of each message in run logs. This can be a lifesaver when debugging runs that write log messages without built-in timestamps.
Additionally, if the dstack server is configured to use external log storage, such as AWS CloudWatch or GCP Logging, a button will appear in the UI to view the logs in that storage system.
What's changed
- [Feature]: Add UI for managing Secrets #2882 by @olgenn in #2911
- [Blog]: Benchmarking AMD GPUs: bare-metal, VMs by @peterschmidt85 in #2924
- [Feature]: Implement reading apply configuration from stdin by @r4victor in #2938
- Fix precommit by @olgenn in #2936
- Fix gateway docs URL by @jspablo in #2941
- [Feature]: Service probes by @jvstme in #2927
- Return logs
external_urlfor AWS and GCP by @r4victor in #2944 - [Feature]: Default CLI log level is DEBUG; WARNING and above go to STDOUT, DEBUG logs to a file by @peterschmidt85 in #2940
- [Feature]: Support for Tenstorrent Galaxy by @peterschmidt85 in #2943
- Disallow duplicate project members by @r4victor in #2945
- [Feature]: If GCP logging or AWS Cloudwatch logging is configured, show link in the UI to the log stream by @olgenn in #2948
- Specify
sentry-sdk[fastapi]>=2.27.0to fix missingSamplingContextby @r4victor in #2950 - [Feature]: Showing timestamp for logs by @olgenn in #2937
- [Landing]: Highlight dstack Sky + CTA improvements by @peterschmidt85 in #2947
- Fix Lambda backend instance unreachable after dstack server restart by @Bihan in #2946
- Fix configuring CLI logging on Python 3.9/3.10 by @jvstme in #2953
- [Feature]: Add NVIDIA GPU passive health checks by @un-def in #2952
- Fix
_check_instancelog spam by @un-def in #2956 - Add more probe request configuration options by @jvstme in #2955
- [Feature]: Add Hot Aisle backend by @Bihan in #2935
- [Internal]: Fix release workflow by @jvstme in #2959
New Contributors
Full Changelog: 0.19.21...0.19.22