From 543bf90e84171bc2a8e2c9679076d97165b16609 Mon Sep 17 00:00:00 2001 From: Jonas Juselius Date: Wed, 12 Jul 2017 10:50:26 +0200 Subject: [PATCH] Fix bug in etcd config: name was missing. --- base/configuration.nix | 6 +++--- base/packages.nix | 1 + k8s.nix | 38 ++++++++++++++++++++------------------ 3 files changed, 24 insertions(+), 21 deletions(-) diff --git a/base/configuration.nix b/base/configuration.nix index 0900071..eb117aa 100644 --- a/base/configuration.nix +++ b/base/configuration.nix @@ -6,8 +6,6 @@ boot.loader.grub.device = "/dev/sda"; boot.kernel.sysctl."vm.overcommit_memory"= 1; - services.vmwareGuest.enable = true; - # Select internationalisation properties. i18n = { consoleFont = "Lat2-Terminus16"; @@ -19,8 +17,10 @@ time.timeZone = "Europe/Oslo"; networking.search = [ "itpartner.intern" "itpartner.no" ]; - # Enable the OpenSSH daemon. + services.openssh.enable = true; + services.nfs.server.enable = true; + services.vmwareGuest.enable = true; # The NixOS release to be compatible with for stateful data such as databases. system.stateVersion = "17.03"; diff --git a/base/packages.nix b/base/packages.nix index 07d1113..449eb4a 100644 --- a/base/packages.nix +++ b/base/packages.nix @@ -27,6 +27,7 @@ in file bc git + python nix-prefetch-git nix-home ]; diff --git a/k8s.nix b/k8s.nix index a07080b..5366849 100644 --- a/k8s.nix +++ b/k8s.nix @@ -4,7 +4,7 @@ let name = "kubernetes"; csr = csr { cn = "kubernetes"; - hosts = ''"kubernetes", "k8s0-0", "10.253.18.100"''; + hosts = ''"kubernetes", "k8s0-0", "etcd0", "10.253.18.100"''; }; profile = "server"; }; @@ -13,7 +13,7 @@ let name = "etcd0"; csr = csr { cn = "etcd0"; - hosts = ''"etcd0", "10.253.18.100"''; + hosts = ''"etcd0", "k8s0-0", "10.253.18.100"''; }; profile = "peer"; }; @@ -22,7 +22,7 @@ let name = "etcd1"; csr = csr { cn = "etcd1"; - hosts = ''"etcd1", "10.253.18.101"''; + hosts = ''"etcd1", "k8s0-1", "10.253.18.101"''; }; profile = "peer"; }; @@ -55,6 +55,7 @@ let etcdConfig = etcd: { services.etcd = { + name = etcd.name; enable = true; listenClientUrls = ["https://0.0.0.0:2379"]; listenPeerUrls = ["https://0.0.0.0:2380"]; @@ -120,11 +121,12 @@ let kubelet = { tlsKeyFile = "${client_key}"; tlsCertFile = "${client_cert}"; - extraOpts = "--client-ca-file=${ca_cert}"; networkPlugin = null; - clusterDns = "kubernetes"; + clusterDns = "10.253.18.100"; }; }; + networking.firewall.allowedTCPPorts = [ 53 ]; + networking.firewall.allowedUDPPorts = [ 53 ]; # VXLAN }; kubeMaster = { @@ -150,19 +152,27 @@ let }; networking.firewall.allowedTCPPorts = [ 5000 8080 443 53 ]; - networking.firewall.allowedUDPPorts = [ 53 ]; systemd.services.flannel.after = [ "etcd.service" ]; }; baseConfig = node: { imports = [ (./hw + "/${node}.nix") ./base/configuration.nix ]; - require = [ kubeConfig ]; networking.hostName = node; networking.extraHosts = '' 10.253.18.100 etcd0 kubernetes 10.253.18.101 etcd1 ''; }; + + minion = host: ip: { config, lib, pkgs, ... }: + let + inherit host; + base = baseConfig host; + in + { + deployment.targetHost = ip; + require = [ base kubeConfig kubeNode ]; + }; in { k8s0-0 = { config, lib, pkgs, ... }: @@ -177,7 +187,7 @@ in in { deployment.targetHost = "10.253.18.100"; - require = [ base etcd kubeMaster kubeNode ]; + require = [ base etcd kubeConfig kubeMaster kubeNode ]; }; k8s0-1 = { config, lib, pkgs, ... }: @@ -192,16 +202,8 @@ in in { deployment.targetHost = "10.253.18.101"; - require = [ base etcd kubeNode ]; + require = [ base etcd kubeConfig kubeNode ]; }; - k8s0-2 = { config, lib, pkgs, ... }: - let - host = "k8s0-2"; - base = baseConfig host; - in - { - deployment.targetHost = "10.253.18.102"; - require = [ base kubeNode ]; - }; + k8s0-2 = minion "k8s0-2" "10.253.18.102"; }