summary refs log tree commit diff
path: root/nixos/modules/services/cluster/kubernetes/dashboard.nix
blob: 337c2634a3742844b90f8a49029d8ed22e99b528 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
{ cfg }: {
    "dashboard-controller" = {
        "apiVersion" = "extensions/v1beta1";
        "kind" = "Deployment";
        "metadata" = {
            "labels" = {
                "addonmanager.kubernetes.io/mode" = "Reconcile";
                "k8s-app" = "kubernetes-dashboard";
                "kubernetes.io/cluster-service" = "true";
            };
            "name" = "kubernetes-dashboard";
            "namespace" = "kube-system";
        };
        "spec" = {
            "selector" = {
                "matchLabels" = {
                    "k8s-app" = "kubernetes-dashboard";
                };
            };
            "template" = {
                "metadata" = {
                    "annotations" = {
                        "scheduler.alpha.kubernetes.io/critical-pod" = "";
                    };
                    "labels" = {
                        "k8s-app" = "kubernetes-dashboard";
                    };
                };
                "spec" = {
                    "containers" = [{
                        "image" = "gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.0";
                        "livenessProbe" = {
                            "httpGet" = {
                                "path" = "/";
                                "port" = 9090;
                            };
                            "initialDelaySeconds" = 30;
                            "timeoutSeconds" = 30;
                        };
                        "name" = "kubernetes-dashboard";
                        "ports" = [{
                            "containerPort" = 9090;
                        }];
                        "resources" = {
                            "limits" = {
                                "cpu" = "100m";
                                "memory" = "50Mi";
                            };
                            "requests" = {
                                "cpu" = "100m";
                                "memory" = "50Mi";
                            };
                        };
                    }];
                    "tolerations" = [{
                        "key" = "CriticalAddonsOnly";
                        "operator" = "Exists";
                    }];
                };
            };
        };
    };
    "dashboard-service" = {
        "apiVersion" = "v1";
        "kind" = "Service";
        "metadata" = {
            "labels" = {
                "addonmanager.kubernetes.io/mode" = "Reconcile";
                "k8s-app" = "kubernetes-dashboard";
                "kubernetes.io/cluster-service" = "true";
            };
            "name" = "kubernetes-dashboard";
            "namespace" = "kube-system";
        };
        "spec" = {
            "ports" = [{
                "port" = 80;
                "targetPort" = 9090;
            }];
            "selector" = {
                "k8s-app" = "kubernetes-dashboard";
            };
        };
    };
}