summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorAlexandru Scvortov <code@scvalex.net>2021-06-28 20:33:17 +0100
committerAlexandru Scvortov <code@scvalex.net>2021-06-28 20:33:17 +0100
commitab1567e8121dfcdb4f7a395b39a3a345f41c7474 (patch)
treec55f080da9e56645b240531f61233694b521e661 /nixos
parente34f40b92b77ea8346d413e6a40639dde71c200d (diff)
downloadnixpkgs-ab1567e8121dfcdb4f7a395b39a3a345f41c7474.tar
nixpkgs-ab1567e8121dfcdb4f7a395b39a3a345f41c7474.tar.gz
nixpkgs-ab1567e8121dfcdb4f7a395b39a3a345f41c7474.tar.bz2
nixpkgs-ab1567e8121dfcdb4f7a395b39a3a345f41c7474.tar.lz
nixpkgs-ab1567e8121dfcdb4f7a395b39a3a345f41c7474.tar.xz
nixpkgs-ab1567e8121dfcdb4f7a395b39a3a345f41c7474.tar.zst
nixpkgs-ab1567e8121dfcdb4f7a395b39a3a345f41c7474.zip
kubernetes: fix conntrack-tools package name, missing dir, and tests
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/cluster/kubernetes/pki.nix1
-rw-r--r--nixos/modules/services/cluster/kubernetes/proxy.nix2
-rw-r--r--nixos/tests/kubernetes/base.nix9
3 files changed, 10 insertions, 2 deletions
diff --git a/nixos/modules/services/cluster/kubernetes/pki.nix b/nixos/modules/services/cluster/kubernetes/pki.nix
index 8de6a3ba0d8..d9311d3e3a0 100644
--- a/nixos/modules/services/cluster/kubernetes/pki.nix
+++ b/nixos/modules/services/cluster/kubernetes/pki.nix
@@ -189,6 +189,7 @@ in
         # manually paste it in place. Just symlink.
         # otherwise, create the target file, ready for users to insert the token
 
+        mkdir -p $(dirname ${certmgrAPITokenPath})
         if [ -f "${cfsslAPITokenPath}" ]; then
           ln -fs "${cfsslAPITokenPath}" "${certmgrAPITokenPath}"
         else
diff --git a/nixos/modules/services/cluster/kubernetes/proxy.nix b/nixos/modules/services/cluster/kubernetes/proxy.nix
index 7aa449f9aa2..42729f54643 100644
--- a/nixos/modules/services/cluster/kubernetes/proxy.nix
+++ b/nixos/modules/services/cluster/kubernetes/proxy.nix
@@ -59,7 +59,7 @@ in
       description = "Kubernetes Proxy Service";
       wantedBy = [ "kubernetes.target" ];
       after = [ "kube-apiserver.service" ];
-      path = with pkgs; [ iptables conntrack_tools ];
+      path = with pkgs; [ iptables conntrack-tools ];
       serviceConfig = {
         Slice = "kubernetes.slice";
         ExecStart = ''${top.package}/bin/kube-proxy \
diff --git a/nixos/tests/kubernetes/base.nix b/nixos/tests/kubernetes/base.nix
index 8cfac10b6dc..1f23ca55fb2 100644
--- a/nixos/tests/kubernetes/base.nix
+++ b/nixos/tests/kubernetes/base.nix
@@ -40,7 +40,7 @@ let
                   allowedTCPPorts = [
                     10250 # kubelet
                   ];
-                  trustedInterfaces = ["docker0"];
+                  trustedInterfaces = ["mynet"];
 
                   extraCommands = concatMapStrings  (node: ''
                     iptables -A INPUT -s ${node.config.networking.primaryIPAddress} -j ACCEPT
@@ -61,6 +61,13 @@ let
                   advertiseAddress = master.ip;
                 };
                 masterAddress = "${masterName}.${config.networking.domain}";
+                # workaround for:
+                #   https://github.com/kubernetes/kubernetes/issues/102676
+                #   (workaround from) https://github.com/kubernetes/kubernetes/issues/95488
+                kubelet.extraOpts = ''\
+                  --cgroups-per-qos=false \
+                  --enforce-node-allocatable="" \
+                '';
               };
             }
             (optionalAttrs (any (role: role == "master") machine.roles) {