Overview

Deployment models

Compare the hybrid and air-gapped deployment models, and choose where the SQL Flow control plane runs.

SQL Flow runs as three components: a control plane, agents and log brokers. The two deployment models differ only in where the control plane runs. Agents and log brokers always run in your network, close to your databases, and connect to the control plane over outbound HTTPS only. The control plane never opens a connection to them, and never connects to a database. See How SQL Flow works for what each component does.

The agent and the log broker on the database host each open an outbound-only HTTPS connection to the control plane, which serves the web UI and keeps its store in PostgreSQL. The agent also connects to the source database, to the target, and to the log broker over pinned TLS.

Hybrid

In a hybrid deployment the control plane runs on the web and is operated for you. You sign in with a browser, install agents and log brokers in your own network, and approve them in the UI.

  • Row data stays in your network. It moves from your sources, through your agents, to your targets, and never reaches the hosted control plane.
  • Agents and brokers need outbound HTTPS to the control plane, and nothing inbound from the internet.
  • The Downloads page, and the Add agent and Add broker panels, offer the CLI, agent and broker executables directly.
  • Database passwords can stay on your agent hosts. See Database credentials and secret references.

See Hybrid deployment to get started.

Air-gapped

In an air-gapped deployment every component runs on your own servers, and nothing needs to reach the internet. You run the control plane with its PostgreSQL database, its TLS certificate and its Data Protection key ring, and you install agents and brokers from files you copy in.

See Air-gapped deployment to install the control plane.

Comparison

HybridAir-gapped
Control planeHosted on the webYour servers, with your PostgreSQL 12 or later
Who operates the control plane, its database, backups and upgradesOperated for youYou
Control-plane TLS certificateProvidedGenerated by the control plane, or your own
Network for agents and brokersOutbound HTTPS to the hosted control planeOutbound HTTPS to your control plane
CLI, agent and broker downloadsFrom Downloads, or the Add agent and Add broker panelsCopied in by you
Welcome and password-reset emailSentSent only if you configure a mail provider. Otherwise the UI shows a new user's one-time password.
Agents, brokers, capture modes and targetsIdenticalIdentical
High availability of the control planeOperated for youYour setup

The agent and broker binaries are the same in both models. The only install difference is the --control-plane flag, which the Add agent and Add broker panels add for a control plane that isn't the hosted one. Without the flag, agents and brokers connect to https://app.sqlflow.com.

Choosing a model

  1. May agents and brokers open outbound HTTPS connections to a service on the internet?
    • No: use the air-gapped model.
    • Yes: go to question 2.
  2. Do you want to run and upgrade the control plane, its PostgreSQL database and its certificates yourself?
    • Yes: use the air-gapped model. It also fits when policy requires every management component on your own servers.
    • No: use the hybrid model.

In both models the control plane holds pipeline definitions, connection details and operational metadata such as logs, alerts and metrics, never row data. It holds a database password only when you enter one, and then only encrypted.

See also

Previous
Architecture

If this was useful,
our newsletter will be too.

Get monthly insights on data engineering, AI, and building critical infrastructure - direct from the Spectral Core team and CEO Damir Bulic.