nixos-configs/devices/cluster/modules/pacemaker/default.nix

74 lines
1.3 KiB
Nix
Raw Normal View History

{pkgs, ...}: {
2024-01-22 22:47:31 -05:00
imports = [
./options.nix
../corosync.nix
../blocky.nix
2024-01-22 22:47:31 -05:00
../caddy.nix
../headscale
../unbound.nix
2024-01-22 22:47:31 -05:00
];
# TODO: update script
services.pacemaker = {
enable = true;
resources = {
"blocky" = {
enable = true;
dependsOn = ["unbound"];
};
"caddy" = {
enable = true;
virtualIps = [
{
id = "main";
interface = "eno1";
ip = "10.0.0.130";
}
];
2024-01-22 22:47:31 -05:00
};
"headscale" = {
enable = true;
dependsOn = ["caddy"];
};
"unbound" = {
enable = true;
dependsOn = ["caddy"];
};
};
};
# NFS client setup
services.rpcbind.enable = true;
2024-01-23 17:58:48 -05:00
boot.supportedFilesystems = ["nfs"];
environment.systemPackages = with pkgs; [nfs-utils];
systemd.mounts = let
host = "10.0.0.249";
in [
{
type = "nfs";
mountConfig = {
Options = "noatime";
};
what = "${host}:/caddy";
where = "/var/lib/caddy";
requiredBy = ["caddy.service"];
}
{
type = "nfs";
mountConfig = {
Options = "noatime";
};
what = "${host}:/headscale";
where = "/var/lib/headscale";
requiredBy = ["headscale.service"];
}
];
}