Use DHCP across the board
This commit is contained in:
@@ -37,6 +37,7 @@
|
|||||||
kubernetes = {
|
kubernetes = {
|
||||||
enable = true;
|
enable = true;
|
||||||
vipInterface = "enp38s0";
|
vipInterface = "enp38s0";
|
||||||
|
vip = "10.42.1.6";
|
||||||
priority = 255;
|
priority = 255;
|
||||||
};
|
};
|
||||||
tailscale = {
|
tailscale = {
|
||||||
@@ -59,27 +60,13 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
defaultGateway = {
|
|
||||||
address = " 10.42.1.1";
|
|
||||||
interface = "enp38s0";
|
|
||||||
};
|
|
||||||
firewall = {
|
firewall = {
|
||||||
enable = true;
|
enable = true;
|
||||||
allowedTCPPorts = [ 80 ];
|
allowedTCPPorts = [ 80 ];
|
||||||
checkReversePath = lib.mkForce false;
|
checkReversePath = lib.mkForce false;
|
||||||
};
|
};
|
||||||
hostName = "isaiah";
|
hostName = "isaiah";
|
||||||
interfaces = {
|
interfaces.enp38s0.useDHCP = true;
|
||||||
enp38s0 = {
|
|
||||||
ipv4.addresses = [
|
|
||||||
{
|
|
||||||
address = "10.42.1.6";
|
|
||||||
prefixLength = 16;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
nameservers = [ "10.42.1.5" ];
|
|
||||||
useDHCP = false;
|
useDHCP = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -22,8 +22,9 @@
|
|||||||
initrd.kernelModules = [
|
initrd.kernelModules = [
|
||||||
"amdgpu"
|
"amdgpu"
|
||||||
];
|
];
|
||||||
kernelParams = [
|
kernelParams =
|
||||||
];
|
[
|
||||||
|
];
|
||||||
loader = {
|
loader = {
|
||||||
systemd-boot.enable = true;
|
systemd-boot.enable = true;
|
||||||
efi.canTouchEfiVariables = true;
|
efi.canTouchEfiVariables = true;
|
||||||
@@ -73,6 +74,7 @@
|
|||||||
kubernetes = {
|
kubernetes = {
|
||||||
enable = true;
|
enable = true;
|
||||||
vipInterface = "br0";
|
vipInterface = "br0";
|
||||||
|
vip = "10.42.1.8";
|
||||||
priority = 254;
|
priority = 254;
|
||||||
};
|
};
|
||||||
tailscale = {
|
tailscale = {
|
||||||
@@ -103,17 +105,7 @@
|
|||||||
interface = "br0";
|
interface = "br0";
|
||||||
};
|
};
|
||||||
firewall.allowedTCPPorts = [ 3389 ];
|
firewall.allowedTCPPorts = [ 3389 ];
|
||||||
interfaces = {
|
interfaces.br0.useDHCP = true;
|
||||||
br0 = {
|
|
||||||
ipv4.addresses = [
|
|
||||||
{
|
|
||||||
address = "10.42.1.8";
|
|
||||||
prefixLength = 16;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
nameservers = [ "10.42.1.5" ];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.steam = {
|
programs.steam = {
|
||||||
|
|||||||
+5
-26
@@ -53,37 +53,16 @@
|
|||||||
networkmanager.enable = lib.mkForce true;
|
networkmanager.enable = lib.mkForce true;
|
||||||
enableIPv6 = false;
|
enableIPv6 = false;
|
||||||
useDHCP = false;
|
useDHCP = false;
|
||||||
interfaces = {
|
interfaces.enp12s0.useDHCP = true;
|
||||||
# This seems to be direct mother board interface
|
|
||||||
enp12s0.useDHCP = true;
|
|
||||||
enp12s0.ipv4.addresses = [
|
|
||||||
{
|
|
||||||
address = "10.42.1.13";
|
|
||||||
prefixLength = 16;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
defaultGateway = {
|
|
||||||
address = "10.42.1.1";
|
|
||||||
interface = "enp12s0";
|
|
||||||
};
|
|
||||||
nameservers = [
|
|
||||||
"10.42.1.5"
|
|
||||||
"10.42.1.1"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Let's do a sound thing
|
# Let's do a sound thing
|
||||||
services = {
|
services = {
|
||||||
k3s = {
|
k3s = {
|
||||||
extraFlags =
|
extraFlags = [
|
||||||
let
|
"--tls-san 10.42.1.13"
|
||||||
ip = (builtins.head config.networking.interfaces.enp12s0.ipv4.addresses).address;
|
#"--bind-address ${ip}"
|
||||||
in
|
];
|
||||||
[
|
|
||||||
"--tls-san ${ip}"
|
|
||||||
#"--bind-address ${ip}"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
xserver.videoDrivers = [ "nvidia" ];
|
xserver.videoDrivers = [ "nvidia" ];
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -29,6 +29,11 @@ in
|
|||||||
default = 1;
|
default = 1;
|
||||||
description = "VIP priority";
|
description = "VIP priority";
|
||||||
};
|
};
|
||||||
|
vip = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
default = null;
|
||||||
|
description = "The IP address of this host";
|
||||||
|
};
|
||||||
vipInterface = lib.mkOption {
|
vipInterface = lib.mkOption {
|
||||||
type = lib.types.str;
|
type = lib.types.str;
|
||||||
default = null;
|
default = null;
|
||||||
@@ -56,22 +61,22 @@ in
|
|||||||
];
|
];
|
||||||
|
|
||||||
networking.firewall = {
|
networking.firewall = {
|
||||||
allowedTCPPorts = [
|
allowedTCPPorts =
|
||||||
80
|
[
|
||||||
443
|
80
|
||||||
5432
|
443
|
||||||
6443
|
5432
|
||||||
10250
|
6443
|
||||||
]
|
]
|
||||||
++ (
|
++ (
|
||||||
if cfg.agentOnly then
|
if cfg.agentOnly then
|
||||||
[ ]
|
[ ]
|
||||||
else
|
else
|
||||||
[
|
[
|
||||||
2379
|
2379
|
||||||
2380
|
2380
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
allowedUDPPorts = [ 8472 ];
|
allowedUDPPorts = [ 8472 ];
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -137,35 +142,25 @@ in
|
|||||||
serverAddr = lib.mkIf (config.networking.hostName != "isaiah") "https://isaiah.home:6443";
|
serverAddr = lib.mkIf (config.networking.hostName != "isaiah") "https://isaiah.home:6443";
|
||||||
tokenFile = config.age.secrets.kubernetesToken.path;
|
tokenFile = config.age.secrets.kubernetesToken.path;
|
||||||
};
|
};
|
||||||
keepalived =
|
keepalived = {
|
||||||
let
|
enable = true;
|
||||||
ip = (builtins.head config.networking.interfaces."${cfg.vipInterface}".ipv4.addresses).address;
|
openFirewall = true;
|
||||||
in
|
vrrpInstances.kubernetes = {
|
||||||
{
|
interface = cfg.vipInterface;
|
||||||
enable = true;
|
priority = cfg.priority;
|
||||||
openFirewall = true;
|
state = if (config.networking.hostName == "isaiah") then "MASTER" else "BACKUP";
|
||||||
vrrpInstances.kubernetes = {
|
virtualIps = [
|
||||||
interface = cfg.vipInterface;
|
{
|
||||||
priority = cfg.priority;
|
addr = "10.42.5.1/16";
|
||||||
state = if (config.networking.hostName == "isaiah") then "MASTER" else "BACKUP";
|
dev = cfg.vipInterface;
|
||||||
virtualIps = [
|
}
|
||||||
{
|
];
|
||||||
addr = "10.42.5.1/16";
|
virtualRouterId = 77;
|
||||||
dev = cfg.vipInterface;
|
extraConfig = ''
|
||||||
}
|
advert_int 1
|
||||||
];
|
'';
|
||||||
virtualRouterId = 77;
|
|
||||||
unicastPeers = lib.filter (v: v != ip) [
|
|
||||||
"10.42.1.6"
|
|
||||||
"10.42.1.8"
|
|
||||||
"10.42.1.13"
|
|
||||||
];
|
|
||||||
unicastSrcIp = ip;
|
|
||||||
extraConfig = ''
|
|
||||||
advert_int 1
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
};
|
||||||
openiscsi = {
|
openiscsi = {
|
||||||
enable = true;
|
enable = true;
|
||||||
name = "${config.networking.hostName}-initiatorhost";
|
name = "${config.networking.hostName}-initiatorhost";
|
||||||
|
|||||||
Reference in New Issue
Block a user