try out kubernetes
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
{ pkgs, config, ...}:
|
||||
{
|
||||
imports = [
|
||||
|
||||
./kubernetes.nix
|
||||
];
|
||||
}
|
||||
|
||||
43
modules/services/kubernetes.nix
Normal file
43
modules/services/kubernetes.nix
Normal file
@@ -0,0 +1,43 @@
|
||||
{ pkgs, config, lib, ...}:
|
||||
# idk, dont need this
|
||||
with lib;
|
||||
let
|
||||
cfg = config.custom.services.kubernetes;
|
||||
in
|
||||
{
|
||||
options.custom.services.kubernetes = {
|
||||
enable = mkEnableOption "Enables kubernetes";
|
||||
};
|
||||
config = let
|
||||
kubeMasterIP = "localhost";
|
||||
kubeMasterHostname = "localhost";
|
||||
in lib.mkIf cfg.enable {
|
||||
|
||||
networking.firewall.allowedTCPPorts = [
|
||||
6443 # k3s: required so that pods can reach the API server (running on port 6443 by default)
|
||||
# 2379 # k3s, etcd clients: required if using a "High Availability Embedded etcd" configuration
|
||||
# 2380 # k3s, etcd peers: required if using a "High Availability Embedded etcd" configuration
|
||||
];
|
||||
networking.firewall.allowedUDPPorts = [
|
||||
# 8472 # k3s, flannel: required if using multi-node for inter-node networking
|
||||
];
|
||||
services.k3s.enable = true;
|
||||
services.k3s.role = "server";
|
||||
services.k3s.extraFlags = toString [
|
||||
# "--kubelet-arg=v=4" # Optionally add additional args to k3s
|
||||
];
|
||||
environment.systemPackages = with pkgs; [
|
||||
k3s
|
||||
];
|
||||
#services.kubernetes = {
|
||||
# roles = ["master" "node"];
|
||||
# masterAddress = "localhost";
|
||||
# apiserverAddress = "https://localhost:6443";
|
||||
# apiserver = {
|
||||
# advertiseAddress = "127.0.0.1";
|
||||
# securePort = 6443;
|
||||
# allowPrivileged = true;
|
||||
# };
|
||||
#};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user