Deploying Fluss Gateway
Fluss Gateway is introduced as a preview in Fluss 1.0. Its API and configuration may change in later releases.
Fluss Gateway is a stateless REST service distributed as a Linux binary and a multi-architecture container image.
For the REST API itself, see Fluss Gateway.
Requirements
Platforms
The convenience binary and the container image target Linux on amd64
(x86-64) and arm64 (aarch64). The binary requires a glibc 2.36 baseline or
newer (Debian Bookworm or equivalent). The container image is based on
debian:bookworm-slim.
Fluss cluster
Every Gateway instance needs network access to the
gateway.cluster.<id>.bootstrap.servers of each configured Fluss cluster and
to the CoordinatorServer and TabletServer addresses the clients receive from
metadata.
Ports
| Port | Protocol | Purpose |
|---|---|---|
| 8080 | HTTP | REST API (default bind 127.0.0.1 in the binary distribution, 0.0.0.0 in the container image) |
| 9095 | HTTP | Prometheus metrics endpoint |
Get the Gateway
Starting with Fluss 1.0, Gateway release artifacts are published alongside the Fluss release:
| Artifact | Location | Identifier |
|---|---|---|
| Binary distribution | Apache downloads | fluss-gateway-<version>-bin-linux-amd64.tgz / ...-arm64.tgz |
| Container image | Docker Hub | apache/fluss-gateway:<version> (multi-arch amd64/arm64) |
Replace <version> in the examples below with the Fluss release version.
Verify the archive checksum (.sha512) and signature (.asc) published
alongside the release before extracting it.
For an unreleased development version, build the distribution or image from
source as described in the
fluss-gateway README:
tools/releasing/create_gateway_release.sh produces the binary archive and
just image (or docker/fluss-gateway/build.sh) builds the container image.
Binary distribution layout
fluss-gateway-<version>-bin-linux-<arch>/
├── bin/
│ ├── fluss-gateway # the gateway executable
│ └── fluss-gateway.sh # wrapper: resolves FLUSS_HOME and default config path
├── conf/
│ └── gateway.yaml # default configuration
├── openapi.yaml # OpenAPI 3.1 specification
├── DEPENDENCIES.rust.tsv
├── LICENSE
└── NOTICE