Commit graph

348 commits

Author SHA1 Message Date
pennae ed673a69db treewide: add defaultText for options with simple cfg.* expression defaults
adds defaultText for options with defaults that use only literals, full config.*
paths, and the cfg shortcut binding.
2021-12-09 01:14:16 +01:00
pennae fb0e5be843 treewide: add defaultText for options with simple interpolation defaults
adds defaultText for all options that use `cfg.*` values in their
defaults, but only for interpolations with no extra processing (other
than toString where necessary)
2021-12-09 01:13:48 +01:00
pennae f6d0b014fe nixos/kubernetes: add defaultText for addons options using top.*
the kubernetes modules cross-reference their config using an additional shortcut
binding `top = config.services.kubernetes`, expand those to defaultText like
`cfg` previously.
2021-12-09 01:13:12 +01:00
pennae e24a8775a8 treewide: set defaultText for options using simple path defaults
adds defaultText for all options that set their default to a path expression
using the ubiquitous `cfg` shortcut bindings.
2021-12-09 01:12:13 +01:00
pennae 2512455639 nixos/*: add trivial defaultText for options with simple defaults 2021-12-02 22:35:04 +01:00
Sandro 95382df163
Merge pull request #138125 from juselius/unified-cgroup-fix 2021-11-13 21:21:28 +01:00
illustris 57225575df nixos/hadoop: fix errors in HTTPFS 2021-11-04 11:26:32 +05:30
illustris 8331b56701 nixos/hadoop: correct openFirewall options 2021-11-04 11:18:11 +05:30
illustris c8df915e0e nixos/hadoop: add links for config files 2021-11-04 11:07:32 +05:30
illustris 42e14ff69f nixos/hadoop: replace enable = mkoption bools with mkEnableOption 2021-11-03 22:44:25 +05:30
illustris c3d147f507 nixos/hadoop: replace "enabled" options with "enable" options
The module has been using "enabled" in place of enable since init ( 0c10b2baa6 )
2021-11-03 22:44:25 +05:30
illustris 9ca4363191 nixos/hadoop: add HTTPFS 2021-11-03 22:44:25 +05:30
illustris 39c007ce9c nixos/hadoop: Add HA capabilities
- Add HDFS journalnode and ZKFC services
- Test failover of HDFS and YARN master services in full hadoop test
- Check if a minimal HDFS cluster works in the minimal HDFS test
2021-11-03 22:44:24 +05:30
illustris 91bb2b7016 nixos/hadoop: fix yarn, add more service configuration options 2021-10-25 16:30:19 +09:00
Naïm Favier 2ddc335e6f
nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
rnhmjoj 6de529c64a
nixos/kubernetes: fix containerd settings
mkDefault must be applied to each setting individually, otherwise a
single change to `containerd.settings` replaces the whole attribute set.
2021-09-23 00:21:40 +02:00
rnhmjoj 5abd562a18
nixos/kubernetes: fix deprecation warning
The option `containerd.configFile` has been replaced by an equivalent
`settings` attribute set.
2021-09-22 16:11:49 +02:00
illustris 71d15cf816 nixos/spark: init module 2021-09-17 22:34:47 +05:30
Jonas Juselius e922fad914 kubelet: Disable cgroupsv2 for kubelet hosts 2021-09-16 13:05:01 +02:00
zowoq 07109dd495 nixos/kubernetes: add cni-plugin-flannel to kubelet.cni.packages
the flannel plugin was removed from `cni-plugins` in ee8ed2cd8d
2021-09-12 12:47:45 +10:00
Alexandru Scvortov 8afd31c625 kubernetes: fix flaky test and run tests as group 2021-08-16 14:59:58 +01:00
Alexandru Scvortov 6c38bb6d5d kubernetes: fix breakage introduced by upgrade to 1.22 2021-08-13 17:55:03 +01:00
Alexandru Scvortov ed62c1c663 kubernetes: make corefile configurable 2021-07-28 20:15:57 +01:00
Alexandru Scvortov b9acd426df kubernetes: add passthru tests
Also defensively quote a path and reformat a comment to trigger the
right review.
2021-07-28 11:27:22 +01:00
zimbatm efbd199ffb
nixos/k3s: add configPath option
This is useful when the whole k3s config is generated on boot. The
server address or token might be dynamically injected using user-data.
2021-07-19 13:40:58 +02:00
Jörg Thalheim f2b81f91be
Merge pull request #125205 from Mic92/token-file
k3s: token file
2021-07-15 13:37:04 +01:00
Alexandru Scvortov ab1567e812 kubernetes: fix conntrack-tools package name, missing dir, and tests 2021-06-28 20:33:17 +01:00
Jörg Thalheim 6fdb73a3b4
Merge pull request #118801 from Mic92/k3s
nixos/k3s: improve zfs/docker support
2021-06-05 07:54:54 +02:00
Jörg Thalheim 03582eb6e3
nixos/k3s: add zfs to path 2021-06-05 07:52:53 +02:00
Jörg Thalheim 7c310e8d28
nixos/k3s: add to environment.systemPackages for adminstration 2021-06-05 07:52:48 +02:00
Jörg Thalheim 11a38f62f0
k3s: add tokenFile option
To avoid having secrets in the nix store.
2021-06-01 13:35:04 +02:00
Jörg Thalheim 852739337b
nixos/k3s: add to environment.systemPackages for adminstration 2021-06-01 13:35:03 +02:00
David Arnold 13750b25a5 kubernetes: fix generated kubeconfig
The absence of current-context in the right place resulted in obscure
bugs. The reason this has not been detected before can only be that
it was unused.
2021-05-26 23:39:48 -07:00
Gabriel Gonzalez 8e9d803bac
Fix description for services.kubernetes.addonManager.enable (#71448)
`mkEnableOption` already prefixes the description with
"Whether to enable"
2021-05-19 13:49:27 -07:00
Johan Thomsen 2142f88526 nixos/containerd: sanitize StateDirectory and RuntimeDirectory 2021-05-17 06:17:18 +10:00
Silvan Mosberger 1245d855b8
Merge pull request #119426 from onixie/master
nixos/kubernetes: allow merging multiple definitions of extraOpts
2021-05-03 14:32:00 +02:00
Jörg Thalheim 2a48ef1426
Merge pull request #103228 from ThinkChaos/fix_k3s_start
nixos/k3s: Update service to match upstream
2021-04-14 09:01:33 +01:00
Yc.Shen d43f88e3df nixos/kubernetes: allow merging multiple definitions of extraOpts 2021-04-13 21:54:53 +09:00
ThinkChaos 0b7c8b92f4
nixos/k3s: Change dependency to network.service
Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
2021-04-13 13:37:41 +02:00
ajs124 c6d4dae35d treewide: fix eval without aliases after 9378fdf87e 2021-04-08 13:33:09 +02:00
jali-clarke cc582f1f59 nixos/kubernetes: import all platforms for seeded images
This fixes a class of errors seen on aarch64 during coredns import where content was seen to be missing ("digest xxx not found") or "failed to get reader from content store" depending on which coredns version was being imported.
2021-03-15 09:03:40 -04:00
Johan Thomsen 7b5c38e973 nixos/kubernetes: docker -> containerd
also, nixos/containerd: module init
2021-03-07 12:51:14 +10:00
Yurii Matsiuk 7da62867be nixos/kubernetes: adapt module and test cases to fit kubernetes v1.20.X as well as coredns v1.7.X 2021-03-07 12:50:39 +10:00
Sandro 7c5064e14a
Merge pull request #111153 from helsinki-systems/hadoop
nixos/hadoop: add types
2021-02-02 14:14:41 +01:00
Jörg Thalheim 63178ae561
nixos/kubernetes: add zfs to path 2021-02-01 17:59:18 +01:00
Fritz Otlinghaus 3c7c9a43dc
nixos/k3s: add extraFlags type 2021-01-31 11:21:54 +01:00
Scriptkiddi 0cbbc2dfcd
nixos/hadoop: add types 2021-01-29 13:01:42 +01:00
volth bc0d605cf1 treewide: fix double quoted strings in meta.description
Signed-off-by: Ben Siraphob <bensiraphob@gmail.com>
2021-01-24 19:56:59 +07:00
Frederik Rietdijk b2a3891e12 Merge master into staging-next 2020-11-27 15:09:19 +01:00
Graham Christensen bc49a0815a
utillinux: rename to util-linux 2020-11-24 12:42:06 -05:00
ThinkChaos 4db9d279c4 nixos/k3s: Use optional for more idiomatic code 2020-11-23 20:30:35 +01:00
Florian Klink 5d45f269aa nixos/k3s: disable unifiedCgroupHierarchy
This gets automatically disabled by docker if the docker backend is
used, but the bundled containerd also doesn't seem to support cgroupsv2,
so disable it explicitly here, too.
2020-11-19 16:56:46 +01:00
ThinkChaos acb845dd11 nixos/k3s: Add dependency on firewall.service 2020-11-09 22:17:39 +01:00
ThinkChaos 7514f00733 nixos/k3s: Update service to match upstream
Fixes race between k3s and network.
2020-11-09 19:50:36 +01:00
Sascha Grunert 35f7a3347c
kubernetes: fix certificate generation
Signed-off-by: Sascha Grunert <sgrunert@suse.com>
2020-09-10 13:07:32 +02:00
John Axel Eriksson 41a95b1b7d
The systemd unit for k3s should differ between agents and servers 2020-04-23 07:55:23 +02:00
Euan Kemp bc138f407f
nixos/k3s: add initial k3s service
* nixos/k3s: simplify config expression

* nixos/k3s: add config assertions and trim unneeded bits

* nixos/k3s: add a test that k3s works; minor module improvements

This is a single-node test. Eventually we should also have a multi-node
test to verify the agent bit works, but that one's more involved.

* nixos/k3s: add option description

* nixos/k3s: add defaults for token/serveraddr

Now that the assertion enforces their presence, we dont' need to use the typesystem for it.

* nixos/k3s: remove unneeded sudo in test

* nixos/k3s: add to test list
2020-04-17 16:39:54 +02:00
Michael Reilly 84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Silvan Mosberger 1d0fc9729d
nixos/treewide: Fix incorrectly rendered examples
Many options define their example to be a Nix value without using
literalExample. This sometimes gets rendered incorrectly in the manual,
causing confusion like in https://github.com/NixOS/nixpkgs/issues/25516

This fixes it by using literalExample for such options. The list of
option to fix was determined with this expression:

  let
    nixos = import ./nixos { configuration = {}; };
    lib = import ./lib;
    valid = d: {
      # escapeNixIdentifier from https://github.com/NixOS/nixpkgs/pull/82461
      set = lib.all (n: lib.strings.escapeNixIdentifier n == n) (lib.attrNames d) && lib.all (v: valid v) (lib.attrValues d);
      list = lib.all (v: valid v) d;
    }.${builtins.typeOf d} or true;

    optionList = lib.optionAttrSetToDocList nixos.options;

  in map (opt: {
    file = lib.elemAt opt.declarations 0;
    loc = lib.options.showOption opt.loc;
  }) (lib.filter (opt: if opt ? example then ! valid opt.example else false) optionList)

which when evaluated will output all options that use a Nix identifier
that would need escaping as an attribute name.
2020-04-02 07:49:25 +02:00
Antonio Nuno Monteiro e2c11ad3c0 nixos/kubernetes: allow configuring cfssl API server SANs 2020-01-18 23:39:21 -08:00
rnhmjoj 1d61efb7f1 treewide: use attrs instead of list for types.loaOf options 2020-01-06 10:39:18 -05:00
Silvan Mosberger 4ee3e8b21d
nixos/treewide: Move rename.nix imports to their respective modules
A centralized list for these renames is not good because:
- It breaks disabledModules for modules that have a rename defined
- Adding/removing renames for a module means having to find them in the
central file
- Merge conflicts due to multiple people editing the central file
2019-12-10 02:51:19 +01:00
Sascha Grunert 7f358a5f3b
nixos/kubernetes: Module and test compatibility with kubernetes 1.16
Signed-off-by: Sascha Grunert <sgrunert@suse.com>
2019-11-15 05:58:35 +01:00
volth 7b8fb5c06c treewide: remove redundant quotes 2019-09-08 23:38:31 +00:00
Jan Tojnar cdf426488b
Merge branch 'master' into staging-next
Fixed trivial conflicts caused by removing rec.
2019-09-06 03:20:09 +02:00
Johan Thomsen d891283aa4 nixos/kubernetes: make module compatible with v1.15.x 2019-09-04 17:38:41 +02:00
Johan Thomsen 00975b5628 Revert "Merge pull request #56789 from mayflower/upstream-k8s-refactor"
This reverts commit 7dc6e77bc2, reversing
changes made to bce47ea9d5.

Motivation for the revert in #67563
2019-09-04 17:37:02 +02:00
volth 08f68313a4 treewide: remove redundant rec 2019-08-28 11:07:32 +00:00
volth 35d68ef143 treewide: remove redundant quotes 2019-08-26 21:40:19 +00:00
volth f3282c8d1e treewide: remove unused variables (#63177)
* treewide: remove unused variables

* making ofborg happy
2019-06-16 19:59:05 +00:00
Robin Gloster a1dcac5104
Merge pull request #57523 from mayflower/kube-apiserver-preferred-address-types
nixos/kubernetes: Add preferredAddressTypes option to apiserver
2019-05-18 09:57:12 +00:00
Robin Gloster 6cf583cf2f
Merge pull request #60406 from JohnAZoidberg/remove-isnull
treewide: Remove usage of isNull
2019-05-18 09:36:24 +00:00
Alberto Berti f965fb26a9 nixos/kubernetes: upgrade CoreDNS 1.3.1 -> 1.5.0 2019-05-06 13:10:32 +02:00
Johan Thomsen 29bf511ef9 nixos/kubernetes: fix control-plane-online prestart dependency
The kubeconfig provided to the kubernetes-control-plane-online.service
is invalid. However, the apiserver /healthz endpoint can be accessed without auth so it's
simpler to just use curl for that.
2019-04-29 17:42:16 +02:00
Daniel Schaefer 786f02f7a4 treewide: Remove usage of isNull
isNull "is deprecated; just write e == null instead" says the Nix manual
2019-04-29 14:05:50 +02:00
Aaron Andersen 4a11ce7f26
cleanup redundant text in modules utilizing mkEnableOption
Closes #59911
2019-04-20 14:44:02 +02:00
Robin Gloster b278cd86e1
Merge branch 'master' into kube-apiserver-preferred-address-types 2019-04-17 16:40:06 +00:00
Robin Gloster 44afc81af1
Merge pull request #57693 from mayflower/kube-apiserver-proxy-client-certs
nixos/kubernetes: Add proxy client certs to apiserver
2019-04-17 16:38:51 +00:00
Robin Gloster 7dc6e77bc2
Merge pull request #56789 from mayflower/upstream-k8s-refactor
nixos/kubernetes: stabilize cluster deployment/startup across machines
2019-04-17 16:37:58 +00:00
Markus 2e29412e9c nixos/kubernetes: Add proxy client certs to apiserver 2019-03-15 13:21:43 +00:00
Markus 87d1a82627 nixos/kubernetes: Add preferredAddressTypes option to apiserver 2019-03-12 15:01:14 +00:00
Christian Albrecht e3a80ebc40
Cleanup pki: remove mkWaitCurl 2019-03-11 12:22:59 +01:00
Christian Albrecht 45e683fbd6
Cleanup pki: control-plane-online 2019-03-11 12:22:59 +01:00
Christian Albrecht 50c5f489ef
Cleanup pki: scheduler 2019-03-11 12:22:53 +01:00
Christian Albrecht 46653f84c9
Cleanup pki: proxy 2019-03-11 12:22:49 +01:00
Christian Albrecht 73657b7fcf
Cleanup pki: kubelet 2019-03-11 12:22:44 +01:00
Christian Albrecht ea6985ffc1
Cleanup pki: flannel 2019-03-11 12:22:40 +01:00
Christian Albrecht ce83dc2c52
Cleanup pki: controller-manager 2019-03-11 12:22:36 +01:00
Christian Albrecht 8ab50cb239
Cleanup pki: apiserver and etcd 2019-03-11 12:22:31 +01:00
Christian Albrecht ee9dd4386a
Cleanup pki: addon-manager 2019-03-11 12:16:58 +01:00
Jonas Juselius 279716c330 nixos/kubernetes: add dns addonmanger reconcile mode option (#55834)
Allow coredns ConfigMap and Depolyment to be editable by the user. An use
case is augmenting the default, generated dns records with local services.
2019-03-09 12:57:41 +02:00
Christian Albrecht 154356d820
nixos/kubernetes: Fix kube-control-plane-online must not be present
outside kubernetes module.
2019-03-08 09:36:59 +01:00
Johan Thomsen 80c4fd4f85 nixos/kubernetes: minor module fixes
- mkDefault etcd instance name
- make sure ca-cert in mkKubeConfig can be overriden
- fix controller-manager "tls-private-key-file" flag name
2019-03-08 09:18:51 +01:00
Christian Albrecht ff382c18c8
nixos/kubernetes: Address review: Move remaining paths to pki 2019-03-06 17:56:28 +01:00
Christian Albrecht e148cb040b
nixos/kubernetes: Address review: rename node-online target 2019-03-06 17:17:20 +01:00
Christian Albrecht 5684034693
nixos/kubernetes: Address review: Remove restart from certmgr bootstrap service 2019-03-06 16:55:13 +01:00
Christian Albrecht 7323b77435
nixos/kubernetes: Address review: Separate preStart from certificates 2019-03-06 16:55:08 +01:00
Christian Albrecht 52fe1d2e7a
nixos/kubernetes: Address review: Move controller manager paths into pki 2019-03-06 16:55:04 +01:00
Christian Albrecht 6e9037fed0
nixos/kubernetes: Address review: Move bootstrapping addons into own service 2019-03-06 16:54:50 +01:00
Christian Albrecht ff91d5818c
nixos/kubernetes: Address review: Rename targets and move proxy to node-online.target 2019-03-06 16:54:22 +01:00
Christian Albrecht 74962bf767
nixos/kubernetes: No need to restart services besides certmgr
within the node join script, since certmgr is taking care of
restarting services.
2019-03-03 19:43:15 +01:00
Christian Albrecht 7df88bd802
nixos/kubernetes: Put dashboard service account into bootstrapAddons
to prevent errors in log about missing permissions when
addon manager starts the dashboard.
2019-03-03 19:43:15 +01:00
Christian Albrecht fd28c0a82a
nixos/kubernetes: Seed docker images before kubelet service start
to speed up startup time because it can be parallelized.
2019-03-03 19:43:14 +01:00
Christian Albrecht cf8389c904
nixos/kubernetes: Add longer timeouts for waiting services 2019-03-03 19:43:14 +01:00
Christian Albrecht 51aeaaffc2
nixos/kubernetes: flannel needs iptables in service path 2019-03-03 19:43:13 +01:00
Christian Albrecht 62f03750e4
nixos/kubernetes: Stabilize services startup across machines
by adding targets and curl wait loops to services to ensure services
are not started before their depended services are reachable.

Extra targets cfssl-online.target and kube-apiserver-online.target
syncronize starts across machines and node-online.target ensures
docker is restarted and ready to deploy containers on after flannel
has discussed the network cidr with apiserver.

Since flannel needs to be started before addon-manager to configure
the docker interface, it has to have its own rbac bootstrap service.

The curl wait loops within the other services exists to ensure that when
starting the service it is able to do its work immediately without
clobbering the log about failing conditions.

By ensuring kubernetes.target is only reached after starting the
cluster it can be used in the tests as a wait condition.

In kube-certmgr-bootstrap mkdir is needed for it to not fail to start.

The following is the relevant part of systemctl list-dependencies

default.target
● ├─certmgr.service
● ├─cfssl.service
● ├─docker.service
● ├─etcd.service
● ├─flannel.service
● ├─kubernetes.target
● │ ├─kube-addon-manager.service
● │ ├─kube-proxy.service
● │ ├─kube-apiserver-online.target
● │ │ ├─flannel-rbac-bootstrap.service
● │ │ ├─kube-apiserver-online.service
● │ │ ├─kube-apiserver.service
● │ │ ├─kube-controller-manager.service
● │ │ └─kube-scheduler.service
● │ └─node-online.target
● │   ├─node-online.service
● │   ├─flannel.target
● │   │ ├─flannel.service
● │   │ └─mk-docker-opts.service
● │   └─kubelet.target
● │     └─kubelet.service
● ├─network-online.target
● │ └─cfssl-online.target
● │   ├─certmgr.service
● │   ├─cfssl-online.service
● │   └─kube-certmgr-bootstrap.service
2019-03-03 19:39:02 +01:00
Christian Albrecht f9e2f76a59
nixos/kubernetes: Add systemd path units
to protect services from crashing and clobbering the logs when
certificates are not in place yet and make sure services are activated
when certificates are ready.

To prevent errors similar to "kube-controller-manager.path: Failed to
enter waiting state: Too many open files"
fs.inotify.max_user_instances has to be increased.
2019-03-03 19:34:57 +01:00
Adam Finn Tulinius 291c809888 nixos/kubernetes: add missing systemd restart options 2019-02-21 14:57:57 +01:00
Jaka Hudoklin 97a27fd2d2
nixos/kubernetes: fix flannel and kubelet startup 2019-02-21 00:26:11 +01:00
Franz Pletz 3a02205496
nixos/kubernetes: bootstrap docker without networking
Before flannel is ready there is a brief time where docker will be
running with a default docker0 bridge. If kubernetes happens to spawn
containers before flannel is ready, docker can't be restarted when
flannel is ready because some containers are still running on the
docker0 bridge with potentially different network addresses.

Environment variables in `EnvironmentFile` override those defined via
`Environment` in the systemd service config.

Co-authored-by: Christian Albrecht <christian.albrecht@mayflower.de>
2019-02-20 21:08:58 +01:00
Johan Thomsen 7028fac35b
nixos/kubernetes: use system.path to handle dependency on flannel subnet.env
The current postStart step on flannel causes flannel.service to
sometimes hang, even when it's commanded to stop.
2019-02-20 21:08:56 +01:00
Johan Thomsen 466beb0214
nixos/kubernetes: let flannel use kubernetes as storage backend
+ isolate etcd on the master node by letting it listen only on loopback
+ enabling kubelet on master and taint master with NoSchedule

The reason for the latter is that flannel requires all nodes to be "registered"
in the cluster in order to setup the cluster network. This means that the
kubelet is needed even at nodes on which we don't plan to schedule anything.
2019-02-20 21:08:56 +01:00
Johan Thomsen 1f49c2160a
nixos/kubernetes: CoreDNS privileges has to be assigned by addon manager bootstrap
- because the kube-addon-manager drops most of its privileges after
startup.
2019-02-20 21:08:55 +01:00
Johan Thomsen 6334796370
nixos/kubernetes: use the certmgr-selfsigned variant 2019-02-20 21:08:54 +01:00
Johan Thomsen e2380e79e1
nixos/kubernetes: major module refactor
- All kubernetes components have been seperated into different files
- All TLS-enabled ports have been deprecated and disabled by default
- EasyCert option added to support automatic cluster PKI-bootstrap
- RBAC has been enforced for all cluster components by default
- NixOS kubernetes test cases make use of easyCerts to setup PKI
2019-02-20 21:08:01 +01:00
Johan Thomsen f738618637 nixos/kubernetes: dashboard 1.8.3 -> 1.10.1
- add option to specify extra cmdline arguments to the dashboard
2019-02-18 17:34:30 +01:00
Johan Thomsen 5af74e19e6 nixos/kubernetes: coredns 1.2.5 -> 1.3.1 2019-02-18 17:34:30 +01:00
Jean-Philippe Braun cdacdc0686 nixos/kubernetes: allow to disable clusterCidr
Fix option type and set --allocate-node-cidr to false if no clusterCidr
is defined.
2018-11-26 16:36:30 +01:00
Johan Thomsen 2617b6800d nixos/kubernetes: Replace KubeDNS with CoreDNS 2018-10-31 13:41:04 +01:00
Johan Thomsen a91c293aaf kubernetes: 1.11.3 -> 1.12.0
- kubelet CAdvisor port has been removed
2018-09-30 14:49:26 +02:00
Jean-Philippe Braun 76c7cc0f30 nixos/kubernetes: fix kubelet cgroup stats
https://github.com/kubernetes/kubernetes/issues/56850
2018-07-31 15:45:37 +02:00
volth 87f5930c3f [bot]: remove unreferenced code 2018-07-20 18:48:37 +00:00
Sarah Brofeldt 5672083461
Merge pull request #43728 from srhb/k8srbacfix
nixos/kubernetes: Don't lose rbac submodule with no explicit options
2018-07-18 12:37:44 +02:00
Sarah Brofeldt 6dd6f28415 nixos/kubernetes: Don't lose rbac submodule with no explicit options 2018-07-18 12:02:06 +02:00
Johan Thomsen 205b54ed95 nixos/kubernetes: Added missing dependency, awk, to kube-addon-manager path (#43708) 2018-07-18 10:47:27 +02:00
aszlig 6e4711727e
nixos/hadoop: Replace users.extra{Users,Groups}
In fff5923686 all occurences of
users.extraUsers and users.extraGroups have been changed tree-wide to
users.users and users.group. In the meantime the hadoop modules were
introduced via #41381 (060a98e9f4).

Unfortunately those modules still use users.extraUsers, which has been
renamed a long time ago (14321ae243, about
three years from now), so let's actually rename it accordingly as well.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @matthewbauer, @aespinosa
2018-07-02 18:05:33 +02:00
Michael Raskin b43c4d8b75
Merge pull request #42798 from flokli/users-users
tree-wide: users.extraUsers -> users.users, users.extraGroups -> users.groups
2018-07-02 11:23:10 +00:00
Allan Espinosa 0c10b2baa6 nixos/hadoop: add hadoop module (hdfs, yarn) 2018-06-29 23:14:02 -04:00
Florian Klink fff5923686 nixos/modules: users.(extraUsers|extraGroup->users|group) 2018-06-30 03:02:58 +02:00
Thomas Kim Pham 1d07b0edac add missing k8s Webhook authorization mode 2018-06-19 22:33:57 +02:00
Johan Thomsen f9ad1cae78 nixos/kubernetes: dashboard lockdown
Kubernetes dashboard currently has cluster admin permissions,
which is not recommended.

- Renamed option "services.kubernetes.addons.dashboard.enableRBAC" to "services.kubernetes.addons.dashboard.rbac.enable"
- Added option "services.kubernetes.addons.dashboard.rbac.clusterAdmin", default = false.
- Setting recommended minimal permissions for the dashboard in accordance with https://github.com/kubernetes/dashboard/wiki/Installation
- Updated release note for 18.09.
2018-06-19 22:28:00 +02:00
Johan Thomsen 8d7ea96a13 nixos/kubernetes: improvements
- Added option 'cni.configDir' to allow for having CNI config outside of nix-store
  Existing behavior (writing verbatim CNI conf-files to nix-store) is still available.

- Removed unused option 'apiserver.publicAddress' and changed 'apiserver.address' to 'bindAddress'
  This conforms better to k8s docs and removes existing --bind-address hardcoding to 0.0.0.0

- Fixed c/p mistake in apiserver systemd unit description

- Updated 18.09 release notes to reflect changes to existing options
  And fixed some typos from previous PR

- Make docker images for Kubernetes Dashboard and kube-dns configurable
2018-06-12 22:47:32 +02:00
Geoffrey Huntley ca0e52edc3 kubernetes: corrected spelling mistake in docs (#41439) 2018-06-04 05:45:25 +00:00
Geoffrey Huntley f607f01b70 fix: connect the --bind-address arg to the cfg.apiserver.address option 2018-05-28 18:07:06 +02:00
Alberto Berti 29fd05f3f5 Kuberetes Dashboard addon 1.8.2 -> 1.8.3
As shipped with k8s 1.10.3.

Also:
- updated the definition jsons as they are distributed in k8s.
- updated the image uris as they are renamed in k8s
- added imageDigest param as per 736848723e
2018-05-25 11:10:02 +02:00
Alberto Berti 55fa98dd76 Kuberbetes DNS addon 1.14.4 -> 1.14.10
As shipped with k8s 1.10.3.

Also:
- updated the definition jsons as they are distributed in k8s.
- updated the image uris as they are renamed in k8s
- added imageDigest param as per 736848723e
2018-05-25 10:59:10 +02:00
Charles Strahan 996849ab86 kubernetes: update to 1.10 2018-05-25 10:50:36 +02:00
lewo 4ccb13adb6
Merge pull request #40665 from seppeljordan/fix-kubernetes-modules
nixos/kubernetes: Update kube-dns and kube-dashbashboard docker image…
2018-05-24 20:31:35 +02:00
Geoffrey Huntley e22d072c64 kubernetes: fix 404 links to documentation 2018-05-24 14:16:08 +02:00
Kevin Liu b6f2e75d75
kubernetes-dashboard: raise memory limit to 250MB
On my cluster, I often get OOM errors that cause the dashboard to crash just by going over 50MB.
2018-05-21 21:07:24 -04:00
Sebastian Jordan b4b3892bd1 nixos/kubernetes: Update kube-dns and kube-dashbashboard docker image derivations to new pullImage function signature 2018-05-16 15:42:16 +02:00
Uli Baum c3eefe801a fleet: remove package, module, test
deprecated and unmaintained upstream
2018-05-05 00:28:16 +02:00
Uli Baum f039bf9abc panamax: remove packages, module and test
was broken and depends on (deprecated) fleet
packages: panamax_api, panamax_ui
2018-05-05 00:27:15 +02:00
Charles Strahan 709b6f664e
nixos: kubernetes fixes
* Fix reference CNI plugins
  * The plugins were split out of the upstream cni repo around version
    0.6.0

* Fix RBAC and DNS tests
  * Fix broken apiVersion fields
  * Change plugin linking to look in ${package}/bin rather than
    ${package.plugins}

* Initial work towards a working e2e test
  * Test still fails, but at least the expression evaluates now

Continues @srhb's work in #37199

Fixes #37199
2018-03-30 17:33:45 -04:00
Ryan Mulligan b189247ba0 treewide: use more HTTPS URLs
Uses the HTTPS url for cases where the existing URL has a permanent
redirect. For each domain, at least one fixed derivation URL was
downloaded to test the domain is properly serving downloads.

Also fixes jbake source URL, which was broken.
2018-03-24 22:04:25 -07:00
Sarah Brofeldt bf58890a5a nixos/k8s: Enable Node authorizer and NodeRestriction by default 2018-02-04 21:23:36 +01:00
Roman Kuznetsov f63604a598
kubernetes-dashboard (module): 1.6.3 -> 1.8.2 2018-01-17 09:01:32 +01:00
Robin Gloster 4aeb38e5b9
Revert "kubernetes: fix hashes after dockerTools change"
This reverts commit 9ba024f6d8.
2017-09-28 14:09:49 +02:00
Robin Gloster 9ba024f6d8
kubernetes: fix hashes after dockerTools change 2017-09-24 12:09:07 +02:00
Matej Cotman 6ea272ced4 kubernetes: fix dns addon hashes, fix clusterDns, enable proxy on master 2017-09-24 11:44:25 +02:00
Jaka Hudoklin ddf5de5de0 kubernetes module: refactor module system, kube-dns as module 2017-09-24 11:44:25 +02:00
Jaka Hudoklin 2beadcf181 kubernetes module: seedDockerImages option for seeding docker images built with nix 2017-09-24 11:44:25 +02:00
Jaka Hudoklin 9d97c92d68 kubernetes module: webhook authorization for kubelet 2017-09-24 11:44:25 +02:00
Jaka Hudoklin 7c893623d4 kubernetes module: fix documentation links 2017-09-24 11:44:25 +02:00
Jaka Hudoklin 74f99525e0 kubernetes module: add featureGates option 2017-09-24 11:44:25 +02:00
Jaka Hudoklin 55dbbfd899 kubernetes module: kubelet, add socat to path for kubectl portforward 2017-09-24 11:44:25 +02:00
Jaka Hudoklin 8e48fff268 kubernetes module: enable leader elect by default 2017-09-24 11:44:25 +02:00
Jaka Hudoklin 856ca7347f kubernetes module: add storage and tolerations addmission controllers 2017-09-24 11:44:25 +02:00
Jaka Hudoklin d842d539d9 kubernetes module: fix cidr ranges 2017-09-24 11:44:25 +02:00
Jaka Hudoklin b25d155976 kubernetes module: default auth mode to only RBAC 2017-09-24 11:44:25 +02:00
Jaka Hudoklin c2622910ab kubernetes module: add support for common CA file 2017-09-24 11:44:25 +02:00
Jaka Hudoklin c96ca5f3bd kubernetes module: per service kubeconfig support 2017-09-24 11:44:25 +02:00
Jaka Hudoklin 7dfeac88ac kubernetes module: flannel support, minor fixes
- add flannel support
- remove deprecated authorizationRBACSuperAdmin option
- rename from deprecated poratalNet to serviceClusterIpRange
- add nodeIp option for kubelet
- kubelet, add br_netfilter to kernelModules
- enable firewall by default
- enable dns by default on node and on master
- disable iptables for docker by default on nodes
- dns, restart on failure
- update tests

and other minor changes
2017-09-24 11:44:25 +02:00
Matej Cotman 8e14e978c8 kubernetes: fix minor issues 2017-09-24 11:44:25 +02:00
Matej Cotman ed322f4235 kubernetes: update service 2017-09-24 11:44:25 +02:00
Jaka Hudoklin 90d5468ad6 kubernetes module: authorization improvements 2017-09-24 11:44:25 +02:00
Matej Cotman c3cfd92d24 kubernetes: 1.5.6 -> 1.6.4 2017-09-24 11:44:25 +02:00
zimbatm 4d545297d8 lib: introduce imap0, imap1 (#25543)
* lib: introduce imap0, imap1

For historical reasons, imap starts counting at 1 and it's not
consistent with the rest of the lib.

So for now we split imap into imap0 that starts counting at zero and
imap1 that starts counting at 1. And imap is marked as deprecated.

See c71e2d4235 (commitcomment-21873221)

* replace uses of lib.imap

* lib: move imap to deprecated.nix
2017-07-04 23:29:23 +01:00
Taylor "Nekroze" Lawson 9fb87f9c9d Kubernetes ABAC policy file fix (#26499)
Fix the incorrect nix map that generates the Kubernetes policy file
2017-06-13 21:54:36 +02:00
Jaka Hudoklin a98c26cdc4 Merge pull request #24921 from peterhoeg/f/k8s
kubernetes: fix interpolation error and move services to own target
2017-04-15 10:43:25 +02:00
Peter Hoeg a3ee3b51d7 k8s: use slice and target for kubernetes 2017-04-13 19:32:10 +08:00
Peter Hoeg bf4be8f1dd k8s: convert int to string to avoid interpolation error 2017-04-13 19:31:43 +08:00
Franz Pletz 3ab45f4b36
treewide: use boolToString function 2017-04-11 18:18:53 +02:00
Joachim Fasting 15da23d5c1
nixos/modules: use defaultText/literalExample where applicable
Primarily to fix rendering of default values/examples but also
to avoid unnecessary work.
2017-03-07 14:06:08 +01:00
georgewhewell 94b28a8072 fix systemd.services.kube-proxy to use correct extraOpts 2017-02-12 15:06:59 +00:00
Maarten Hoogendoorn 69391e3423 kube-controller-manager service: Allow restarts on failure 2017-01-15 13:27:45 +01:00
Jaka Hudoklin 2867f88781 kubernetes module: fix default dns ip 2016-12-12 01:25:23 +01:00
Jaka Hudoklin 5bc7ae7adb kubernetes module: support for kubernetes 1.4 2016-11-17 02:46:31 +01:00
Pascal Bach c1dca9e40b etcd: make all service using etc go to 127.0.0.1:2379 by default
The old etcd port 4001 is no longer enabled by default in etcd 3.
The new port is 2379 and is officially assigned by IANA.

There were still some services left that expect etcd on port 4001 by default.
This changes the default to 2379 everywhere.

It should not cause problems for users as the etcd by nix does listen on the new port only by default anyway.
2016-11-11 23:11:54 +01:00
Alexander Ried 4231293010 cluster.kubernetes: fix service ordering
Requires does NOT imply After, so I added the missing ordering.
2016-09-13 11:19:22 +02:00
Kevin Cox a2fb70b6df Fix fleet certfile argument, fixes #11794 2015-12-22 01:24:47 +01:00
Kevin Cox d038464e6e Use the right prefix for fleet extra config. 2015-12-22 01:24:28 +01:00
Jaka Hudoklin dd1f8b2693 kubernetes module: kubelet add git and ssh to path 2015-11-16 15:19:56 +01:00
Tobias Geerinckx-Rice 4105fe0062 nixos: correct "Kubernets" -> "Kubernetes" 2015-09-15 08:51:01 +02:00
Jaka Hudoklin c65cdcf722 kubernetes service: add a few options 2015-08-29 19:18:38 +02:00
Jaka Hudoklin 46203a790d kubernetes service: fix option conversion 2015-08-21 20:55:40 +02:00
Jaka Hudoklin c33d282278 kubernetes service: fix for 1.0.3 2015-08-19 23:52:19 +02:00
Jaka Hudoklin 5aefc44da9 nixos/kubernetes: fix cadvisor, kubelet autoregistration 2015-07-07 11:34:33 +02:00
Arseniy Seroka cf44a27fc4 fix argument in mkEnableOption 2015-06-21 18:21:21 +03:00
Jaka Hudoklin f7a452c8c1 nixos/kubernetes: skydns integration 2015-06-08 13:15:26 +02:00
Jaka Hudoklin 392fc849e4 Update kubernetes to 0.18.0, fix module 2015-06-08 13:10:32 +02:00
Jaka Hudoklin 6cb195a83d nixos/kubernetes: fix module 2015-04-25 14:18:25 +02:00
Jaka Hudoklin 89f41b90fa Merge pull request #6874 from offlinehacker/pkgs/kubernetes/update
kubernetes: update to 0.12.1, fix module
2015-03-20 11:22:48 +01:00
Jaka Hudoklin 2482b75eae kubernetes: update to 0.12.1, fix module 2015-03-18 14:37:03 +01:00
Jaka Hudoklin 079520ced5 panamax: update, fix module 2015-03-18 14:35:24 +01:00
Jaka Hudoklin ae34f923f7 panamax: simplify, refactor, add test 2015-02-07 15:32:20 +01:00
Matej Cotman 8c79a2df63 panamax: new package and service 2015-02-07 15:32:20 +01:00
Jaka Hudoklin 4be1089781 nixos: move kubernetes & fleet to services/cluster 2014-12-11 23:32:37 +01:00