Skip to main content

Installation overview

A Triton Cloud install turns a rack of bare machines into a working cloud in four phases. One operator CLI, tritonadm, drives all four. One document, the answers document, describes the result. This page names the phases and links to the page for each. It does not repeat the steps.

The model​

An install has two durable artifacts.

  • The answers document declares the data center, its networks and DNS, and every machine that will be part of the cluster. You write it once and keep it in version control. It describes the finished cluster, not the steps to build one.
  • The cluster intent is the answers document after the control plane commits it during genesis. From then on, the control plane converges the observed state toward the intent. tritonadm intent shows and revises it.

The phases run in this order.

PhaseCommandWhat it does
Genesistritonadm setup bootstrapTurns one prepared machine, the founder, into a working control plane. Commits the intent. Performs the founder pivot.
Convergencetritonadm setup convergeDrives the committed intent through the intent reconciler: ClickHouse, DNS and certificates, object storage, the in-cluster channel, and the booter.
EnrollmentNone. Machines network-boot.Every other declared machine boots from the cluster's own booter. The booter recognizes the machine by its declared identity and registers it. You approve each machine for setup.
Growthtritonadm fdb approvals standing open --operation growLets the control plane add FoundationDB seats on the enrolled machines. setup converge watches it.

Genesis builds a control plane on one node only. Genesis does not build a three-seat FoundationDB cluster. The seats grow on machines that enroll after genesis. seats: 3 in the answers document does not produce three seats on day one.

The sequence​

StageWhat you doPage
1. Prepare node zero and the networkBoot a platform image, create the zones pool, create the nic tags, delegate DNS.Requirements
2. Write the answers documentDeclare networks, DNS, and every node.Requirements
3. Install the CLI on the foundercurl -fsSL https://tritoncloud.nyc3.digitaloceanspaces.com/install.sh | TRITON_CHANNEL=edge shInstall the tritonadm CLI
4. Preview the plan, then run genesistritonadm setup bootstrap --answers <FILE> --channel edge --dry-run, then the same command without --dry-runGenesis on the founder
5. Sign intritonadm configure, then tritonadm api-key createGenesis on the founder
6. Converge, enroll compute nodes, and growtritonadm setup converge, network-boot each machine, tritonadm cn setup approve, then open a grow approval windowEnroll compute nodes and converge
7. Keep the cluster currenttritonadm update tritond agents, tritonadm update portal, then tritonadm self-updateApply an update

When a step fails, start at Troubleshooting an install.

Two paths, one supported​

tritonadm setup bootstrap --answers is the supported path for a cluster you intend to keep. These pages describe that path. The flag-driven path, tritonadm setup bootstrap or setup apply with --fdb-ip and related flags, exists for one-machine labs that you will discard. It commits no cluster intent, so convergence has nothing to build there. The tritonadm setup reference lists its flags.

What you end up with​

After genesis, the founder runs:

  • A FoundationDB zone and a tritond control-plane zone. After the founder pivot their names are triton-fdb1 and triton-tritond1. The founder pair no longer exists.
  • The tritond API on port 8080 and the operator console on port 8081, both in the tritond zone.
  • tritonagent in the founder's global zone, registered as the first compute node.
  • A DNS zone and a first certificate, when the answers document declares them.

An answers document with a host_private admin network describes a single-node datacenter. It runs no founder pivot, so the founder pair triton-fdb0 and triton-tritond stays.

After convergence the control plane also runs ClickHouse, object storage, and a booter zone that serves the enrollment platform image, as the intent declares them. After enrollment, each other declared machine runs the platform installed from the network, with the pool layout you confirmed. The control plane has the seats, storage, and metrics that the intent declares.

Next steps​