Skip to content

Commit 696d5f7

Browse files
committed
Deploying to gh-pages from @ dstackai/dstack@cd07427 🚀
1 parent 7fd0747 commit 696d5f7

File tree

11 files changed

+222
-116
lines changed

11 files changed

+222
-116
lines changed

docs/concepts/backends/index.html

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -850,6 +850,19 @@
850850
</span>
851851
</a>
852852

853+
</li>
854+
855+
<li class="md-nav__item">
856+
<a href="#hot-aisle" class="md-nav__link">
857+
<span class="md-ellipsis">
858+
859+
<span class="md-typeset">
860+
Hot Aisle
861+
</span>
862+
863+
</span>
864+
</a>
865+
853866
</li>
854867

855868
<li class="md-nav__item">
@@ -3855,6 +3868,19 @@
38553868
</span>
38563869
</a>
38573870

3871+
</li>
3872+
3873+
<li class="md-nav__item">
3874+
<a href="#hot-aisle" class="md-nav__link">
3875+
<span class="md-ellipsis">
3876+
3877+
<span class="md-typeset">
3878+
Hot Aisle
3879+
</span>
3880+
3881+
</span>
3882+
</a>
3883+
38583884
</li>
38593885

38603886
<li class="md-nav__item">
@@ -4593,6 +4619,32 @@ <h2 id="gcp">GCP<a class="headerlink" href="#gcp" title="Permanent link">&para;<
45934619
<p>Using private subnets assumes that both the <code>dstack</code> server and users can access the configured VPC's private subnets.
45944620
Additionally, <a href="https://cloud.google.com/nat/docs/overview">Cloud NAT</a> must be configured to provide access to external resources for provisioned instances.</p>
45954621
</details>
4622+
<h2 id="hot-aisle">Hot Aisle<a class="headerlink" href="#hot-aisle" title="Permanent link">&para;</a></h2>
4623+
<p>Log in to the SSH TUI as described in the <a href="https://hotaisle.xyz/quick-start/">Hot Aisle Quick Start <span class="twemoji external"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m11.93 5 2.83 2.83L5 17.59 6.42 19l9.76-9.75L19 12.07V5z"/></svg></span></a>.
4624+
Create a new team and generate an API key for the member in the team.</p>
4625+
<p>Then, go ahead and configure the backend:</p>
4626+
<div editor-title="~/.dstack/server/config.yml">
4627+
4628+
<div class="highlight"><pre><span></span><code><span class="nt">projects</span><span class="p">:</span>
4629+
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">main</span>
4630+
<span class="w"> </span><span class="nt">backends</span><span class="p">:</span>
4631+
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">type</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">hotaisle</span>
4632+
<span class="w"> </span><span class="nt">team_handle</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">hotaisle-team-handle</span>
4633+
<span class="w"> </span><span class="nt">creds</span><span class="p">:</span>
4634+
<span class="w"> </span><span class="nt">type</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">api_key</span>
4635+
<span class="w"> </span><span class="nt">api_key</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">9c27a4bb7a8e472fae12ab34.3f2e3c1db75b9a0187fd2196c6b3e56d2b912e1c439ba08d89e7b6fcd4ef1d3f</span>
4636+
</code></pre></div>
4637+
4638+
</div>
4639+
4640+
<details class="info">
4641+
<summary>Required permissions</summary>
4642+
<p>The API key must have the following roles assigned:</p>
4643+
<ul>
4644+
<li><strong>Owner role for the user</strong> - Required for creating and managing SSH keys</li>
4645+
<li><strong>Operator role for the team</strong> - Required for managing virtual machines within the team</li>
4646+
</ul>
4647+
</details>
45964648
<h2 id="lambda">Lambda<a class="headerlink" href="#lambda" title="Permanent link">&para;</a></h2>
45974649
<p>Log into your <a href="https://lambdalabs.com/service/gpu-cloud">Lambda Cloud <span class="twemoji external"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m11.93 5 2.83 2.83L5 17.59 6.42 19l9.76-9.75L19 12.07V5z"/></svg></span></a> account, click API keys in the sidebar, and then click the <code>Generate API key</code>
45984650
button to create a new API key.</p>

docs/concepts/services/index.html

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4453,7 +4453,31 @@ <h3 id="probes">Probes<a class="headerlink" href="#probes" title="Permanent link
44534453
</ul>
44544454
<p>If multiple probes are configured for the service, their statuses are displayed in the order in which the probes appear in the configuration.</p>
44554455
</details>
4456-
<p>Probes are executed for each service replica while the replica is <code>running</code>. Probe statuses do not affect how <code>dstack</code> handles replicas, except during <a href="#rolling-deployment">rolling deployments</a>.</p>
4456+
<p>Probes are executed for each service replica while the replica is <code>running</code>. A probe execution is considered successful if the replica responds with a <code>2xx</code> status code. Probe statuses do not affect how <code>dstack</code> handles replicas, except during <a href="#rolling-deployment">rolling deployments</a>.</p>
4457+
<details class="info">
4458+
<summary>HTTP request configuration</summary>
4459+
<p>You can configure the HTTP request method, headers, and other properties. To include secret values in probe requests, use environment variable interpolation, which is enabled for the <code>url</code>, <code>headers[i].value</code>, and <code>body</code> properties.</p>
4460+
<div editor-title="service.dstack.yml">
4461+
<div class="highlight"><pre><span></span><code><span class="nt">type</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">service</span>
4462+
<span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">my-service</span>
4463+
<span class="nt">port</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">80</span>
4464+
<span class="nt">image</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">my-app:latest</span>
4465+
<span class="nt">env</span><span class="p">:</span>
4466+
<span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">PROBES_API_KEY</span>
4467+
<span class="nt">probes</span><span class="p">:</span>
4468+
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">type</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http</span>
4469+
<span class="w"> </span><span class="nt">method</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">post</span>
4470+
<span class="w"> </span><span class="nt">url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/check-health</span>
4471+
<span class="w"> </span><span class="nt">headers</span><span class="p">:</span>
4472+
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">X-API-Key</span>
4473+
<span class="w"> </span><span class="nt">value</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">${{ env.PROBES_API_KEY }}</span>
4474+
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Content-Type</span>
4475+
<span class="w"> </span><span class="nt">value</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">application/json</span>
4476+
<span class="w"> </span><span class="nt">body</span><span class="p">:</span><span class="w"> </span><span class="s">&#39;{&quot;level&quot;:</span><span class="nv"> </span><span class="s">2}&#39;</span>
4477+
<span class="w"> </span><span class="nt">timeout</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">20s</span>
4478+
</code></pre></div>
4479+
</div>
4480+
</details>
44574481
<p>See the <a href="../../reference/dstack.yml/service/#probes">reference</a> for more probe configuration options.</p>
44584482
<h3 id="path-prefix">Path prefix<a class="headerlink" href="#path-prefix" title="Permanent link">&para;</a></h3>
44594483
<p>If your <code>dstack</code> project doesn't have a <a href="../gateways/">gateway</a>, services are hosted with the

docs/reference/api/python/index.html

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6539,6 +6539,17 @@ <h3 id="dstack.api.BackendType"><code>dstack.api.BackendType</code><a class="hea
65396539
</div>
65406540
</td>
65416541
</tr>
6542+
<tr class="doc-section-item">
6543+
<td><code><span title="dstack.api.BackendType.HOTAISLE">HOTAISLE</span></code></td>
6544+
<td>
6545+
<code><span title="dstack._internal.core.models.backends.base.BackendType">BackendType</span></code>
6546+
</td>
6547+
<td>
6548+
<div class="doc-md-description">
6549+
<p>Hot Aisle</p>
6550+
</div>
6551+
</td>
6552+
</tr>
65426553
<tr class="doc-section-item">
65436554
<td><code><span title="dstack.api.BackendType.KUBERNETES">KUBERNETES</span></code></td>
65446555
<td>

docs/reference/api/rest/openapi.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

docs/reference/dstack.yml/service/index.html

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4147,9 +4147,16 @@ <h6 class="reference-item" id="header"><code>header</code> - Name of the header
41474147
<h3 id="probes"><code>probes</code><a class="headerlink" href="#probes" title="Permanent link">&para;</a></h3>
41484148
<h4 id="probesn"><code>probes[n]</code><a class="headerlink" href="#probesn" title="Permanent link">&para;</a></h4>
41494149
<h6 class="reference-item" id="url"><code>url</code> - (Optional) The URL to request. Defaults to <code>/</code>.<a class="headerlink" href="#url" title="Permanent link">&para;</a></h6>
4150+
<h6 class="reference-item" id="method"><code>method</code> - (Optional) The HTTP method to use for the probe (e.g., <code>get</code>, <code>post</code>, etc.). Defaults to <code>get</code>.<a class="headerlink" href="#method" title="Permanent link">&para;</a></h6>
4151+
<h6 class="reference-item" id="headers"><code>headers</code> - (Optional) A list of HTTP headers to include in the request.<a class="headerlink" href="#headers" title="Permanent link">&para;</a></h6>
4152+
<h6 class="reference-item" id="body"><code>body</code> - (Optional) The HTTP request body to send with the probe.<a class="headerlink" href="#body" title="Permanent link">&para;</a></h6>
41504153
<h6 class="reference-item" id="timeout"><code>timeout</code> - (Optional) Maximum amount of time the HTTP request is allowed to take. Defaults to <code>10s</code>.<a class="headerlink" href="#timeout" title="Permanent link">&para;</a></h6>
41514154
<h6 class="reference-item" id="interval"><code>interval</code> - (Optional) Minimum amount of time between the end of one probe execution and the start of the next. Defaults to <code>15s</code>.<a class="headerlink" href="#interval" title="Permanent link">&para;</a></h6>
41524155
<h6 class="reference-item" id="ready_after"><code>ready_after</code> - (Optional) The number of consecutive successful probe executions required for the replica to be considered ready. Used during rolling deployments. Defaults to <code>1</code>.<a class="headerlink" href="#ready_after" title="Permanent link">&para;</a></h6>
4156+
<h5 id="probesnheaders"><code>probes[n].headers</code><a class="headerlink" href="#probesnheaders" title="Permanent link">&para;</a></h5>
4157+
<h6 id="probesnheadersm"><code>probes[n].headers[m]</code><a class="headerlink" href="#probesnheadersm" title="Permanent link">&para;</a></h6>
4158+
<h6 class="reference-item" id="name"><code>name</code> - The name of the HTTP header.<a class="headerlink" href="#name" title="Permanent link">&para;</a></h6>
4159+
<h6 class="reference-item" id="value"><code>value</code> - The value of the HTTP header.<a class="headerlink" href="#value" title="Permanent link">&para;</a></h6>
41534160
<h3 id="retry"><code>retry</code><a class="headerlink" href="#retry" title="Permanent link">&para;</a></h3>
41544161
<h6 class="reference-item" id="on_events"><code>on_events</code> - (Optional) The list of events that should be handled with retry. Supported events are <code>no-capacity</code>, <code>interruption</code>, <code>error</code>. Omit to retry on all events.<a class="headerlink" href="#on_events" title="Permanent link">&para;</a></h6>
41554162
<h6 class="reference-item" id="duration"><code>duration</code> - (Optional) The maximum period of retrying the run, e.g., <code>4h</code> or <code>1d</code>.<a class="headerlink" href="#duration" title="Permanent link">&para;</a></h6>

docs/reference/environment-variables/index.html

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3916,6 +3916,10 @@ <h2 id="server">Server<a class="headerlink" href="#server" title="Permanent link
39163916
<li><code id="DSTACK_SERVER_BACKGROUND_PROCESSING_DISABLED">DSTACK_SERVER_BACKGROUND_PROCESSING_DISABLED</code> - Disables background processing if set to any value. Useful to run only web frontend and API server.</li>
39173917
<li><code id="DSTACK_SERVER_MAX_PROBES_PER_JOB">DSTACK_SERVER_MAX_PROBES_PER_JOB</code> - Maximum number of probes allowed in a run configuration. Validated at apply time.</li>
39183918
<li><code id="DSTACK_SERVER_MAX_PROBE_TIMEOUT">DSTACK_SERVER_MAX_PROBE_TIMEOUT</code> - Maximum allowed timeout for a probe. Validated at apply time.</li>
3919+
<li><code id="DSTACK_SERVER_METRICS_RUNNING_TTL_SECONDS">DSTACK_SERVER_METRICS_RUNNING_TTL_SECONDS</code> – Maximum age of metrics samples for running jobs.</li>
3920+
<li><code id="DSTACK_SERVER_METRICS_FINISHED_TTL_SECONDS">DSTACK_SERVER_METRICS_FINISHED_TTL_SECONDS</code> – Maximum age of metrics samples for finished jobs.</li>
3921+
<li><code id="DSTACK_SERVER_INSTANCE_HEALTH_TTL_SECONDS">DSTACK_SERVER_INSTANCE_HEALTH_TTL_SECONDS</code> – Maximum age of instance health checks.</li>
3922+
<li><code id="DSTACK_SERVER_INSTANCE_HEALTH_MIN_COLLECT_INTERVAL_SECONDS">DSTACK_SERVER_INSTANCE_HEALTH_MIN_COLLECT_INTERVAL_SECONDS</code> – Minimum time interval between consecutive health checks of the same instance.</li>
39193923
</ul>
39203924
<details class="info">
39213925
<summary>Internal environment variables</summary>

docs/reference/plugins/rest_plugin/rest_plugin_openapi.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

docs/reference/server/config.yml/index.html

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3921,6 +3921,14 @@ <h6 class="reference-item" id="data"><code>data</code> - (Optional) The contents
39213921
<div class="tabbed-block"></div>
39223922
</div>
39233923
</div>
3924+
<h5 id="hotaisle"><code>projects[n].backends[type=hotaisle]</code><a class="headerlink" href="#hotaisle" title="Permanent link">&para;</a></h5>
3925+
<h6 class="reference-item" id="type"><code>type</code> - The type of backend. Must be <code>hotaisle</code>.<a class="headerlink" href="#type" title="Permanent link">&para;</a></h6>
3926+
<h6 class="reference-item" id="team_handle"><code>team_handle</code> - The Hot Aisle team handle.<a class="headerlink" href="#team_handle" title="Permanent link">&para;</a></h6>
3927+
<h6 class="reference-item" id="regions"><code>regions</code> - (Optional) The list of Hot Aisle regions. Omit to use all regions.<a class="headerlink" href="#regions" title="Permanent link">&para;</a></h6>
3928+
<h6 class="reference-item" id="_creds"><a href="#hotaisle-creds"><code>creds</code></a> - The credentials.<a class="headerlink" href="#_creds" title="Permanent link">&para;</a></h6>
3929+
<h6 id="hotaisle-creds"><code>projects[n].backends[type=hotaisle].creds</code><a class="headerlink" href="#hotaisle-creds" title="Permanent link">&para;</a></h6>
3930+
<h6 class="reference-item" id="type"><code>type</code> - The type of credentials. Must be <code>api_key</code>.<a class="headerlink" href="#type" title="Permanent link">&para;</a></h6>
3931+
<h6 class="reference-item" id="api_key"><code>api_key</code> - The Hot Aisle API key.<a class="headerlink" href="#api_key" title="Permanent link">&para;</a></h6>
39243932
<h5 id="lambda"><code>projects[n].backends[type=lambda]</code><a class="headerlink" href="#lambda" title="Permanent link">&para;</a></h5>
39253933
<h6 class="reference-item" id="type"><code>type</code> - The type of backend. Must be <code>lambda</code>.<a class="headerlink" href="#type" title="Permanent link">&para;</a></h6>
39263934
<h6 class="reference-item" id="regions"><code>regions</code> - (Optional) The list of Lambda regions. Omit to use all regions.<a class="headerlink" href="#regions" title="Permanent link">&para;</a></h6>

search/search_index.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)