103 lines
2.7 KiB
Nix
103 lines
2.7 KiB
Nix
{
|
|
# Ensure this is unique among all clans you want to use.
|
|
meta = {
|
|
name = "amarth-infra";
|
|
description = "Amarth cloud";
|
|
};
|
|
|
|
inventory.machines = {
|
|
m1 = {
|
|
name = "management-1";
|
|
description = "Management node 1";
|
|
machineClass = "nixos";
|
|
tags = [ "cloud:amarth" "region:oss" "nodeType:management" "criticallity:critical" "" ];
|
|
deploy.targetHost = "root@192.168.1.222";
|
|
};
|
|
c1 = {
|
|
name = "compute-1";
|
|
description = "Compute node 1";
|
|
machineClass = "nixos";
|
|
tags = [ "cloud:amarth" "region:oss" "nodeType:compute" "criticallity:medium" "" ];
|
|
};
|
|
c2 = {
|
|
name = "compute-2";
|
|
description = "Compute node 2";
|
|
machineClass = "nixos";
|
|
tags = [ "cloud:amarth" "region:oss" "nodeType:compute" "criticallity:medium" "" ];
|
|
};
|
|
c3 = {
|
|
name = "compute-3";
|
|
description = "Compute node 3";
|
|
machineClass = "nixos";
|
|
tags = [ "cloud:amarth" "region:oss" "nodeType:compute" "criticallity:medium" "" ];
|
|
};
|
|
};
|
|
|
|
# Docs: See https://docs.clan.lol/reference/clanServices
|
|
inventory.instances = {
|
|
admin = {
|
|
roles.default.tags.all = { };
|
|
roles.default.settings.allowedKeys = {
|
|
"chris" = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICE+TFkjJ8p8fMOddvg/waKAjKJ6DRvvouj1MdXc1Taj";
|
|
};
|
|
};
|
|
|
|
zerotier = {
|
|
roles.controller.machines."m1" = { };
|
|
roles.peer.tags.all = { };
|
|
};
|
|
|
|
zitadel = {
|
|
module = {
|
|
name = "zitadel";
|
|
input = "amarth-services";
|
|
};
|
|
|
|
roles.controller = {
|
|
machines."m1" = {};
|
|
settings = {
|
|
hostName = "auth.amarth.cloud";
|
|
displayName = "Amarth";
|
|
};
|
|
};
|
|
};
|
|
|
|
k3s = {
|
|
module = {
|
|
name = "k3s";
|
|
input = "amarth-services";
|
|
};
|
|
|
|
roles.server.machines."c1" = {};
|
|
roles.agent.machines."c2" = {};
|
|
roles.agent.machines."c3" = {};
|
|
};
|
|
};
|
|
|
|
# Additional NixOS configuration can be added here.
|
|
# machines/jon/configuration.nix will be automatically imported.
|
|
# See: https://docs.clan.lol/guides/more-machines/#automatic-registration
|
|
machines = {
|
|
# m1 = { config, pkgs, ... }: {
|
|
# environment.systemPackages = [ pkgs.asciinema ];
|
|
|
|
# nixpkgs.hostPlatform = "x86_64-linux";
|
|
# };
|
|
m1 = {
|
|
nixpkgs.hostPlatform = "x86_64-linux";
|
|
networking.domain = "amarth.local";
|
|
};
|
|
c1 = {
|
|
nixpkgs.hostPlatform = "x86_64-linux";
|
|
networking.domain = "amarth.local";
|
|
};
|
|
c2 = {
|
|
nixpkgs.hostPlatform = "x86_64-linux";
|
|
networking.domain = "amarth.local";
|
|
};
|
|
c3 = {
|
|
nixpkgs.hostPlatform = "x86_64-linux";
|
|
networking.domain = "amarth.local";
|
|
};
|
|
};
|
|
}
|