nixos-server/vms/kube-vm/kubernetes.nix
2026-01-26 21:39:43 +01:00

36 lines
914 B
Nix

{ config, pkgs, ... }:
let
kubeMasterIP = "176.23.63.215";
kubeMasterHostname = "clussy.deprived.dev";
kubeMasterAPIServerPort = 6443;
in
{
# resolve master hostname
networking.extraHosts = "${kubeMasterIP} ${kubeMasterHostname}";
networking.firewall.enable = false;
# packages for administration tasks
environment.systemPackages = with pkgs; [ kompose kubectl kubernetes ];
services.kubernetes =
let
api = "https://${kubeMasterHostname}:${toString kubeMasterAPIServerPort}";
in
{
roles = [ "node" ];
masterAddress = kubeMasterHostname;
easyCerts = true;
# point kubelet and other services to kube-apiserver
kubelet.kubeconfig.server = api;
apiserverAddress = api;
# use coredns
addons.dns.enable = true;
flannel.enable = true;
# needed if you use swap
kubelet.extraOpts = "--fail-swap-on=false";
};
}