106 lines
3.0 KiB
Nix
106 lines
3.0 KiB
Nix
{
|
|
description = "NixOS Hosts";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
|
|
disko.url = "github:nix-community/disko";
|
|
};
|
|
|
|
outputs = { self, nixpkgs, disko }: {
|
|
nixosConfigurations.lin-va-llama1 = nixpkgs.lib.nixosSystem {
|
|
# LLaMA C++ Server
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
disko.nixosModules.disko
|
|
./hosts/llama-server.nix
|
|
{
|
|
networking.hostName = "lin-va-llama1";
|
|
disko.devices.disk.main.device = "/dev/sda";
|
|
k8s.diskPoolID = "/dev/disk/by-id/unknown";
|
|
}
|
|
];
|
|
};
|
|
|
|
# K3s Server
|
|
nixosConfigurations.lin-va-k3s1 = nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
disko.nixosModules.disko
|
|
./hosts/k3s.nix
|
|
{
|
|
networking.hostName = "lin-va-k3s1";
|
|
disko.devices.disk.main.device = "/dev/sda";
|
|
}
|
|
];
|
|
};
|
|
|
|
# RKE2 Primary Server
|
|
nixosConfigurations.lin-va-rke1 = nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
disko.nixosModules.disko
|
|
./hosts/rke2.nix
|
|
{
|
|
networking.hostName = "lin-va-rke1";
|
|
|
|
# Partitions
|
|
disko.devices.disk.main.device = "/dev/disk/by-id/ata-VBOX_HARDDISK_VB0af7d668-04b70404";
|
|
k8s.diskPoolID = "/dev/disk/by-id/ata-VBOX_HARDDISK_VBcd9425b8-d666f9b8";
|
|
}
|
|
];
|
|
};
|
|
|
|
# RKE2 Second Server
|
|
nixosConfigurations.lin-va-rke2 = nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
disko.nixosModules.disko
|
|
./hosts/rke2.nix
|
|
{
|
|
networking.hostName = "lin-va-rke2";
|
|
|
|
# Partitions
|
|
disko.devices.disk.main.device = "/dev/disk/by-id/ata-VBOX_HARDDISK_VBf55aaccc-688cfd0d";
|
|
k8s.diskPoolID = "/dev/disk/by-id/ata-VBOX_HARDDISK_VBfd391256-6e368424";
|
|
|
|
# Set RKE2 Join
|
|
services.rke2.serverAddr = "https://10.0.20.147:9345";
|
|
services.rke2.tokenFile = "/etc/rancher/rke2/node-token";
|
|
environment.etc."rancher/rke2/node-token" = {
|
|
source = ./k8s/rke2-token;
|
|
mode = "0600";
|
|
user = "root";
|
|
group = "root";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
|
|
# RKE2 Third Server
|
|
nixosConfigurations.lin-va-rke3 = nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
disko.nixosModules.disko
|
|
./hosts/rke2.nix
|
|
{
|
|
networking.hostName = "lin-va-rke3";
|
|
|
|
# Partitions
|
|
disko.devices.disk.main.device = "/dev/disk/by-id/ata-VBOX_HARDDISK_VBe9edacd5-ac4ed4fa";
|
|
k8s.diskPoolID = "/dev/disk/by-id/ata-VBOX_HARDDISK_VBa1fc46d0-19380495";
|
|
|
|
# Set RKE2 Join
|
|
services.rke2.serverAddr = "https://10.0.20.147:9345";
|
|
services.rke2.tokenFile = "/etc/rancher/rke2/node-token";
|
|
environment.etc."rancher/rke2/node-token" = {
|
|
source = ./k8s/rke2-token;
|
|
mode = "0600";
|
|
user = "root";
|
|
group = "root";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
};
|
|
}
|