Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion guides/alb-as-httpd.mdx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "Use ALB as your HTTP proxy"
sidebarTitle: "ALB as httpd"

Check warning on line 3 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L3

Did you really mean 'httpd'?
description: "Replace the NGINX, Apache, Caddy, or Traefik container in front of your app with Datum's Application Load Balancer."

Check warning on line 4 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L4

Did you really mean 'Caddy'?

Check warning on line 4 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L4

Did you really mean 'Traefik'?
---

{/* Keep this page human readable and high level: a few chosen examples, then link to the
Expand Down Expand Up @@ -42,7 +42,7 @@
- [Verifying the migration](#verify-the-migration)

<Note>
Compute is in preview. The `v1alpha` APIs can change, and Datum reviews Compute access requests manually.
Compute is in preview, and its `v1alpha` APIs can change. Compute turns on for a project the first time you run a `datumctl compute` command there.
</Note>

## Before you begin
Expand Down Expand Up @@ -288,7 +288,7 @@
<CodeGroup>
```nginx nginx.conf
upstream web { server web:8080; }
upstream api { server api:8080; }

Check warning on line 291 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L291

Did you really mean 'api'?

server {
location / {
Expand Down Expand Up @@ -538,12 +538,12 @@
Datum issues and renews a certificate for each hostname on the ALB. These leave with the proxy container:

- Certificate files
- certbot

Check warning on line 541 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L541

Did you really mean 'certbot'?
- ACME settings

To check certificate status, run `datumctl alb describe web` and read the `Certificates` line. For more information, see [Serve traffic on your own domain](/alb/operations/custom-domains) and [Serve a wildcard hostname](/alb/configuration/wildcard-hostnames).

### Health checks and failover

Check warning on line 546 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L546

Did you really mean 'failover'?

The ALB has no active health checks. Its passive health checks watch real responses instead: once you turn them on, an Instance that returns a run of 5xx errors is taken out of rotation, separately on each edge node. For settings, see [Passive health checks](/alb/configuration/load-balancing#passive-health-checks). For how Instances are replaced during an update, see [How rollouts work](/compute/placement-and-scaling#how-rollouts-work). For test results, see [Load balancing and rollouts](https://github.com/datum-labs/shorts/blob/main/gists/alb/alb-as-httpd-reference.md#load-balancing-and-rollouts) in the reference.

Expand Down Expand Up @@ -600,7 +600,7 @@

### Access metrics

For the metrics Datum publishes for each ALB, see [Metrics](/alb/observability#metrics). To send them to Grafana Cloud or another Prometheus remote-write endpoint, see [Metrics export](/operations/metrics-export).

Check warning on line 603 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L603

Did you really mean 'Grafana'?

{/* STUB. Where to see request rate, error rate, and latency for the ALB. State how to reach them (datumctl and the portal), the retention window, and which metrics to alert on first. Link to telemetry metrics docs. */}

Expand Down Expand Up @@ -674,7 +674,7 @@

### Rollback plan

Keep the old proxy container deployable until the ALB has carried production traffic for a while. Lower your DNS TTL before cutover so you can point back quickly. See [Cut over](https://github.com/datum-labs/shorts/blob/main/gists/alb/alb-as-httpd-reference.md#cut-over) in the reference.

Check warning on line 677 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L677

Did you really mean 'cutover'?

{/* STUB. Keep the old proxy container deployable until verified, and how to cut back if the ALB behaves differently. */}

Expand All @@ -683,7 +683,7 @@
Some apps don't speak HTTP. They speak a gateway protocol, and the proxy in front of them translates:

- **FastCGI**: PHP-FPM and similar process managers. NGINX reaches them with `fastcgi_pass`.
- **uWSGI**: the uwsgi protocol used by many Python apps. NGINX reaches them with `uwsgi_pass`.

Check warning on line 686 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L686

Did you really mean 'uwsgi'?
- **CGI**: older scripts that the web server runs once per request.

The ALB forwards only HTTP, and an Instance runs one container, so a proxy sidecar can't do the translation. You have two options.
Expand All @@ -691,7 +691,7 @@
**Switch to an image that serves HTTP directly.** This is the simpler option. Examples:

- PHP: FrankenPHP, or Apache with `mod_php`
- Python: gunicorn or uvicorn

Check warning on line 694 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L694

Did you really mean 'gunicorn'?

Check warning on line 694 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L694

Did you really mean 'uvicorn'?

Then follow this guide from the start. For details, see [Before you begin](https://github.com/datum-labs/shorts/blob/main/gists/alb/alb-as-httpd-reference.md#before-you-begin) in the reference.

Expand Down Expand Up @@ -740,7 +740,7 @@

## Clean up

After cutover and your rollback window, retire:

Check warning on line 743 in guides/alb-as-httpd.mdx

View check run for this annotation

Mintlify / Mintlify Validation (datum-4926dda5) - vale-spellcheck

guides/alb-as-httpd.mdx#L743

Did you really mean 'cutover'?

- The old proxy container
- Its configuration
Expand Down
Loading