Colony Prerequisites
Summary
Before getting started with a production Colony deployment we recommend reviewing the following.
Common Terms
-
Laptop: A machine used to bootstrap a Colony installation. The use of this term does not represent an actual laptop. It could be a physical machine or virtual machine.
-
Asset: A machine to be discovered and turned into a cluster using Colony.
Hardware Requirements
A machine running Colony requires a minimum of the following:
- 8 GB of Ram
- 4 or more recent x86-64 CPU cores. Arm processors are not currently supported.
- 64Gb for root volume. We highly recommend a high throughput drive for the boot drive.
Networking Requirements
A good rule of thumb regarding network requirements for Colony is to put it on the same subnet as the machines you would like it to manage. Colony relies on (Layer 2 DHCP protocol) and the DHCP Discover packet to identify and create a record for a machine.
At present, Colony doesn't include a DHCP server. If your have separate networks for interacting with out-of-band management inside the assets and reaching out to the internet, the Colony interface connected to the network should be untagged. It currently only supports IPV4.
The private VLAN should have access to the following addresses to pull manifest, container images, and ISO file.
- GitHub
- GitHub Container registry
- Docker Hub
- Talos Factory
- Ubuntu mirrors
To summarize:
- Interface connected to out-of-band network and private network should be untagged
- DHCP server running inside network boot
- Internet Access
Operating Systems
Colony has been tested with the following operating systems. Theoretically any operating system supported by Docker should work.
- Ubuntu 22.04
- Debian 12
Packages
docker
git
wget
kubectl
Other Requirements
Root privileges are required for the host machine used to run Colony.