docs.fermihdi.io — networking.md

/ › hd › 2.0.5 › md › install

Download networking.mdView raw

Networking

HD runs on a network you provide and operate. The installer places HD's containers on your hosts or in your Kubernetes cluster, but it does not authenticate your users, connect your nodes to each other or encrypt the traffic between them. Plan those three things before you install, and test them before you load data.

You provide Why HD needs it Where it is described
The two front doors and the identity and authorization system behind them Nothing in HD authenticates a person or decides who may use it The front doors, below
Connectivity between every node, and from clients to the Storage Nodes Nodes register, take instructions and move records over your network Connecting the nodes, below
Encryption for traffic HD does not encrypt, above all the data plane FHDWP, the protocol that carries records, is not encrypted Encryption on the wire, below

The front doors and user authorization

HD acts on the identity headers that reach it. Establishing who a caller is, and whether they should get in at all, is the job of your systems in front of it. You are responsible for:

The Traefik instances in the sandbox are stand-ins and are not a production configuration: its authenticator lets everyone in. The identity contract, service by service, is on the front doors page, and Two front doors covers what to settle before installing.

Connecting the nodes

Every HD node must be able to reach the others on the ports in the port table: DMS-Core at the address in its certificate's SAN, the SCC and Storage Nodes on the control and data planes, and the filter node from the SCC. Query clients also need the Storage Nodes themselves, on the data plane, because query results stream to the client directly from the SNs rather than through the Proxy. A network that lets clients reach only the Proxy returns empty results without an error.

How you provide that connectivity depends on where HD runs:

Encryption on the wire

HD's control plane uses mutual TLS. Node registration, configuration and the connections that dispatch and verify work carry certificates issued by the deployment's DMS-CA, as described in Identity, trust and licensing.

The data plane is not encrypted. FHDWP, the FermiHDI HD Wire Protocol on port 6987, carries records unencrypted between the Ingester, the SCC and the Storage Nodes, and from the Storage Nodes to SDK clients receiving query results. Anyone who can capture that traffic can read the records in it. The hash chain that verifies each ingested batch detects records that are lost or altered in transit, but it does not keep them confidential. The health and metrics endpoints on port 8080 are plain HTTP as well.

If your records must be encrypted in transit, add that encryption in the network:

Before you install

Download networking.mdView raw