mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-26 21:33:03 +03:00
Merge pull request #24921 from peterhoeg/f/k8s
kubernetes: fix interpolation error and move services to own target
This commit is contained in:
commit
a98c26cdc4
@ -45,7 +45,7 @@ let
|
|||||||
cniConfig = pkgs.buildEnv {
|
cniConfig = pkgs.buildEnv {
|
||||||
name = "kubernetes-cni-config";
|
name = "kubernetes-cni-config";
|
||||||
paths = imap (i: entry:
|
paths = imap (i: entry:
|
||||||
pkgs.writeTextDir "${10+i}-${entry.type}.conf" (builtins.toJSON entry)
|
pkgs.writeTextDir "${toString (10+i)}-${entry.type}.conf" (builtins.toJSON entry)
|
||||||
) cfg.kubelet.cni.config;
|
) cfg.kubelet.cni.config;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -597,7 +597,7 @@ in {
|
|||||||
(mkIf cfg.kubelet.enable {
|
(mkIf cfg.kubelet.enable {
|
||||||
systemd.services.kubelet = {
|
systemd.services.kubelet = {
|
||||||
description = "Kubernetes Kubelet Service";
|
description = "Kubernetes Kubelet Service";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "kubernetes.target" ];
|
||||||
after = [ "network.target" "docker.service" "kube-apiserver.service" ];
|
after = [ "network.target" "docker.service" "kube-apiserver.service" ];
|
||||||
path = with pkgs; [ gitMinimal openssh docker utillinux iproute ethtool thin-provisioning-tools iptables ];
|
path = with pkgs; [ gitMinimal openssh docker utillinux iproute ethtool thin-provisioning-tools iptables ];
|
||||||
preStart = ''
|
preStart = ''
|
||||||
@ -606,6 +606,7 @@ in {
|
|||||||
${concatMapStringsSep "\n" (p: "ln -fs ${p.plugins}/* /opt/cni/bin") cfg.kubelet.cni.packages}
|
${concatMapStringsSep "\n" (p: "ln -fs ${p.plugins}/* /opt/cni/bin") cfg.kubelet.cni.packages}
|
||||||
'';
|
'';
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
|
Slice = "kubernetes.slice";
|
||||||
ExecStart = ''${cfg.package}/bin/kubelet \
|
ExecStart = ''${cfg.package}/bin/kubelet \
|
||||||
--pod-manifest-path=${manifests} \
|
--pod-manifest-path=${manifests} \
|
||||||
--kubeconfig=${kubeconfig} \
|
--kubeconfig=${kubeconfig} \
|
||||||
@ -655,9 +656,10 @@ in {
|
|||||||
(mkIf cfg.apiserver.enable {
|
(mkIf cfg.apiserver.enable {
|
||||||
systemd.services.kube-apiserver = {
|
systemd.services.kube-apiserver = {
|
||||||
description = "Kubernetes Kubelet Service";
|
description = "Kubernetes Kubelet Service";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "kubernetes.target" ];
|
||||||
after = [ "network.target" "docker.service" ];
|
after = [ "network.target" "docker.service" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
|
Slice = "kubernetes.slice";
|
||||||
ExecStart = ''${cfg.package}/bin/kube-apiserver \
|
ExecStart = ''${cfg.package}/bin/kube-apiserver \
|
||||||
--etcd-servers=${concatStringsSep "," cfg.etcd.servers} \
|
--etcd-servers=${concatStringsSep "," cfg.etcd.servers} \
|
||||||
${optionalString (cfg.etcd.caFile != null)
|
${optionalString (cfg.etcd.caFile != null)
|
||||||
@ -713,9 +715,10 @@ in {
|
|||||||
(mkIf cfg.scheduler.enable {
|
(mkIf cfg.scheduler.enable {
|
||||||
systemd.services.kube-scheduler = {
|
systemd.services.kube-scheduler = {
|
||||||
description = "Kubernetes Scheduler Service";
|
description = "Kubernetes Scheduler Service";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "kubernetes.target" ];
|
||||||
after = [ "kube-apiserver.service" ];
|
after = [ "kube-apiserver.service" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
|
Slice = "kubernetes.slice";
|
||||||
ExecStart = ''${cfg.package}/bin/kube-scheduler \
|
ExecStart = ''${cfg.package}/bin/kube-scheduler \
|
||||||
--address=${cfg.scheduler.address} \
|
--address=${cfg.scheduler.address} \
|
||||||
--port=${toString cfg.scheduler.port} \
|
--port=${toString cfg.scheduler.port} \
|
||||||
@ -735,11 +738,12 @@ in {
|
|||||||
(mkIf cfg.controllerManager.enable {
|
(mkIf cfg.controllerManager.enable {
|
||||||
systemd.services.kube-controller-manager = {
|
systemd.services.kube-controller-manager = {
|
||||||
description = "Kubernetes Controller Manager Service";
|
description = "Kubernetes Controller Manager Service";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "kubernetes.target" ];
|
||||||
after = [ "kube-apiserver.service" ];
|
after = [ "kube-apiserver.service" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
RestartSec = "30s";
|
RestartSec = "30s";
|
||||||
Restart = "on-failure";
|
Restart = "on-failure";
|
||||||
|
Slice = "kubernetes.slice";
|
||||||
ExecStart = ''${cfg.package}/bin/kube-controller-manager \
|
ExecStart = ''${cfg.package}/bin/kube-controller-manager \
|
||||||
--address=${cfg.controllerManager.address} \
|
--address=${cfg.controllerManager.address} \
|
||||||
--port=${toString cfg.controllerManager.port} \
|
--port=${toString cfg.controllerManager.port} \
|
||||||
@ -767,10 +771,11 @@ in {
|
|||||||
(mkIf cfg.proxy.enable {
|
(mkIf cfg.proxy.enable {
|
||||||
systemd.services.kube-proxy = {
|
systemd.services.kube-proxy = {
|
||||||
description = "Kubernetes Proxy Service";
|
description = "Kubernetes Proxy Service";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "kubernetes.target" ];
|
||||||
after = [ "kube-apiserver.service" ];
|
after = [ "kube-apiserver.service" ];
|
||||||
path = [pkgs.iptables];
|
path = [pkgs.iptables];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
|
Slice = "kubernetes.slice";
|
||||||
ExecStart = ''${cfg.package}/bin/kube-proxy \
|
ExecStart = ''${cfg.package}/bin/kube-proxy \
|
||||||
--kubeconfig=${kubeconfig} \
|
--kubeconfig=${kubeconfig} \
|
||||||
--bind-address=${cfg.proxy.address} \
|
--bind-address=${cfg.proxy.address} \
|
||||||
@ -786,9 +791,10 @@ in {
|
|||||||
(mkIf cfg.dns.enable {
|
(mkIf cfg.dns.enable {
|
||||||
systemd.services.kube-dns = {
|
systemd.services.kube-dns = {
|
||||||
description = "Kubernetes Dns Service";
|
description = "Kubernetes Dns Service";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "kubernetes.target" ];
|
||||||
after = [ "kube-apiserver.service" ];
|
after = [ "kube-apiserver.service" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
|
Slice = "kubernetes.slice";
|
||||||
ExecStart = ''${cfg.package}/bin/kube-dns \
|
ExecStart = ''${cfg.package}/bin/kube-dns \
|
||||||
--kubecfg-file=${kubeconfig} \
|
--kubecfg-file=${kubeconfig} \
|
||||||
--dns-port=${toString cfg.dns.port} \
|
--dns-port=${toString cfg.dns.port} \
|
||||||
@ -836,6 +842,11 @@ in {
|
|||||||
cfg.proxy.enable ||
|
cfg.proxy.enable ||
|
||||||
cfg.dns.enable
|
cfg.dns.enable
|
||||||
) {
|
) {
|
||||||
|
systemd.targets.kubernetes = {
|
||||||
|
description = "Kubernetes";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
};
|
||||||
|
|
||||||
systemd.tmpfiles.rules = [
|
systemd.tmpfiles.rules = [
|
||||||
"d /opt/cni/bin 0755 root root -"
|
"d /opt/cni/bin 0755 root root -"
|
||||||
"d /var/run/kubernetes 0755 kubernetes kubernetes -"
|
"d /var/run/kubernetes 0755 kubernetes kubernetes -"
|
||||||
|
Loading…
Reference in New Issue
Block a user