Your own servers
Clusters of your own machines, attached with one command, and choosing where each app runs.
Your apps run on CloudJod's servers unless you say otherwise. You can also bring machines of your own: a VPS from any provider (Hetzner, DigitalOcean, AWS, Google Cloud, Azure, Vultr, Linode, OVHcloud, Oracle Cloud, Scaleway, Contabo, UpCloud) or hardware in your own building. They join over encrypted WireGuard tunnels that the machine opens itself, so there are no keys to copy and no ports to open, and they work behind NAT.
Clusters
A cluster is a named group of your servers, such as production or office-rack. A server can be in several clusters, and a cluster can serve several projects. Add servers to a cluster to scale out; resize them to scale up.
- Open Clusters and create one under New cluster. An owner or an admin can.
- In the cluster, under Add a server, optionally name it and say who provides it, and press Get the install command. Adding servers is for owners, because what you attach is capacity your organization runs on.
- On the machine, as root, run the command you are shown. It needs Linux with systemd. It installs the CloudJod agent, which makes its own keys, opens its tunnel and joins the cluster. The command works once and expires; it is not shown again.
- Press Refresh. The server appears within a minute of the command finishing, with its processor, memory and disk.
A server you attached earlier can be added to another cluster from the same page, under Or add a server you already attached.
Choosing where an app runs
From the most general to the most specific:
- A project's clusters. On the cluster's page, under Projects using it, point a project at it. Every app in that project then runs only there. A project with no clusters runs on CloudJod's servers.
- An app's own cluster. On the app's Scaling tab, under Where it runs, choose a cluster. It replaces the project's choice for that app. A cluster grows, so a server added to it later is somewhere the app can scale to.
- Specific servers. The same place: tick the exact servers. It replaces both of the above.
The same form can spread an app's copies across the servers, with at most a given number on each: at most 1 puts every copy on a different server, so losing one machine never takes the app down. A new app can be placed when it is created, too.
What to expect
- Your apps are reached at their usual addresses. Requests come in through CloudJod and travel to your server over its tunnel.
- When a server stops answering, its apps' copies are started on the other servers they may use, and the server cleans up after itself when it returns.
- A cluster that is full does not overflow onto other machines, and an app pointed at a cluster with no servers waits for one rather than running somewhere you did not choose.
- Databases always run on CloudJod's servers, never on a machine you attached, and your apps reach them over the same encrypted network.
- An app with its own disk stays on the server that holds the disk.
- Apps on your own servers count against your plan as they would anywhere else.
- To retire a server, move its apps off it, then Detach it.
Next: Teams and access