diff --git a/flake.nix b/flake.nix index 2c89f55..7d18751 100644 --- a/flake.nix +++ b/flake.nix @@ -66,7 +66,7 @@ nixHosts = util.filter_nix_hosts flat_hosts; # Define args each module gets access to (access to hosts is useful for DNS/DHCP) - specialArgs = { inherit flat_hosts inputs; }; + specialArgs = { inherit hosts flat_hosts inputs; }; pkgs = import nixpkgs { inherit system; overlays = [ diff --git a/nixos/hosts/olympus/_template/configuration.nix b/nixos/hosts/olympus/_template/configuration.nix index e660f64..7b6c670 100644 --- a/nixos/hosts/olympus/_template/configuration.nix +++ b/nixos/hosts/olympus/_template/configuration.nix @@ -13,7 +13,7 @@ # this value at the release version of the first install of this system. # Before changing this value read the documentation for this option # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). - system.stateVersion = "22.11"; # Did you read the comment? + system.stateVersion = "23.05"; # Did you read the comment? # Additional packages environment.systemPackages = with pkgs; [ ]; diff --git a/nixos/hosts/olympus/default.nix b/nixos/hosts/olympus/default.nix index db19c10..129503c 100644 --- a/nixos/hosts/olympus/default.nix +++ b/nixos/hosts/olympus/default.nix @@ -43,13 +43,11 @@ mac = "6A:C2:89:85:CF:A6"; tags = [ "web" ]; }; - # { - # hostname = "k3s-node1"; - # profile = "k3s"; - # ip = "10.42.42.10"; - # mac = "2E:F8:55:23:D9:9B"; - # type = "vm"; - # } + "kubernetes" = { + ip = "10.42.42.10"; + mac = "6E:A5:25:99:FE:68"; + type = "vm"; + }; "WoolooTV" = { ip = "10.42.42.13"; mac = "74:40:be:48:85:a4"; diff --git a/nixos/hosts/olympus/k3s/configuration.nix b/nixos/hosts/olympus/k3s/configuration.nix deleted file mode 100644 index 4524c4b..0000000 --- a/nixos/hosts/olympus/k3s/configuration.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ config, pkgs, lib, ... }: { - imports = [ - # Include the results of the hardware scan. - ./hardware-configuration.nix - ]; - - # Use the GRUB 2 boot loader. - boot.loader.grub = { - enable = true; - version = 2; - device = "/dev/sda"; - }; - - boot.kernel.sysctl."fs.inotify.max_user_instances" = 2147483647; # INT_MAX, dynamically limited based on available memory - boot.kernel.sysctl."fs.inotify.max_user_watches" = 1048576; - - # This value determines the NixOS release from which the default - # settings for stateful data, like file locations and database versions - # on your system were taken. It‘s perfectly fine and recommended to leave - # this value at the release version of the first install of this system. - # Before changing this value read the documentation for this option - # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). - system.stateVersion = "21.05"; # Did you read the comment? - - # Additional packages - environment.systemPackages = with pkgs; [ iptables vim ]; - - # Disable the firewall as we need all the ports - networking.firewall.enable = false; - - # Force-enable Cgroupv2 - systemd.enableUnifiedCgroupHierarchy = lib.mkForce true; - - # Ensure `mount` and `grep` are available - systemd.services.k3s.path = [ pkgs.gnugrep pkgs.utillinux ]; - systemd.services.k3s.serviceConfig.TimeoutStartSec = 3000; - - # Enable k3s as a master node - services.k3s = { - enable = true; - role = "server"; - - extraFlags = builtins.toString [ - "--data-dir=/var/lib/k3s" # Set data dir to var lib - "--cluster-init" # Enable embedded etcd - "--disable=servicelb" # disable servicelb - "--no-deploy=traefik" # we want to configure traefik ourselves (or use nginx instead) - "--cluster-cidr=10.69.0.0/16" # the default of 10.42.0.0/16 clashes with my own network - ]; - }; -} diff --git a/nixos/hosts/olympus/k3s/hardware-configuration.nix b/nixos/hosts/olympus/k3s/hardware-configuration.nix deleted file mode 100644 index 9c6082b..0000000 --- a/nixos/hosts/olympus/k3s/hardware-configuration.nix +++ /dev/null @@ -1,21 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = [ (modulesPath + "/profiles/qemu-guest.nix") ]; - - boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = { - device = "/dev/disk/by-uuid/e8427097-8545-4924-b033-2659fcf9adca"; - fsType = "ext4"; - }; - - swapDevices = [{ device = "/dev/disk/by-uuid/63d90b92-cdde-4795-a3ab-9566ae88f43d"; }]; - -} diff --git a/nixos/hosts/olympus/kubernetes/configuration.nix b/nixos/hosts/olympus/kubernetes/configuration.nix new file mode 100644 index 0000000..7b6c670 --- /dev/null +++ b/nixos/hosts/olympus/kubernetes/configuration.nix @@ -0,0 +1,22 @@ +# Edit this configuration file to define what should be installed on +# your system. Help is available in the configuration.nix(5) man page +# and in the NixOS manual (accessible by running ‘nixos-help’). + +{ config, pkgs, ... }: + +{ + imports = [ ]; + + # This value determines the NixOS release from which the default + # settings for stateful data, like file locations and database versions + # on your system were taken. It‘s perfectly fine and recommended to leave + # this value at the release version of the first install of this system. + # Before changing this value read the documentation for this option + # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). + system.stateVersion = "23.05"; # Did you read the comment? + + # Additional packages + environment.systemPackages = with pkgs; [ ]; + + networking.firewall.allowedTCPPorts = [ ]; +}