Commit graph

305 commits

Author SHA1 Message Date
Sarah Brofeldt 8a508485c4
nixos/kubernetes: add extraConfig to kubelet config (#338526) 2024-09-08 20:35:46 +02:00
Sarah Brofeldt a1863c871e nixos/kubernetes: amend dns addon clusterDns list
With 24.11, this is the required type, and we rely on this for the NixOS
tests
2024-09-01 15:13:11 +02:00
Tristan Gosselin-Hane 2d54b2b048 nixos/kubernetes: allow setting multiple kubelet dns resolvers
The current kubernetes module only allows you to set a single DNS
resolver for the kubelet. Historically, this has not mattered as the
value was passed to a cli argument as a string and as per the kubelet's
configuration parsing mechanism, multiple values could be passed as a
comma-delimited string. However, recently, the module was refactored to
make configure kubernetes components via configuration files rather than
the deprecated command-line arguments. These files more strongly-typed
than CLI arguments and to pass multiple values, one must define a list
in the file. When this change was made, an incorrect assumption was made
that only a single DNS server could be specified and forced a
single-item list into this configuration file. We need to introduce a
breaking change to the module in order to allow the user to supply their
own list with however many dns resolvers they wish to use.
2024-08-30 22:17:00 -04:00
Tristan Gosselin-Hane 5a03aa5a45 nixos/kubernetes: add extraConfig to kubelet config
Every now and then, kubernetes adds new configuration parameters to the
kubelet configuration. Since this is defined using a nix attrset which
is then converted to json/yaml, it would be nice to have an escape hatch
similar to the extraOpts one that exists for additional CLI arguments.
The typical use case would be to configure new settings before they are
officially supported in the nixos module.
2024-08-30 22:12:40 -04:00
Felix Buehler bff67892a7 nixos/services.kubernetes.flannel: remove with lib; 2024-08-30 00:30:38 +02:00
superherointj 3a158316b8
Merge pull request #332183 from codedownio/k3s-containerd-config
nixos/k3s: add containerdConfigTemplate option
2024-08-13 04:03:59 -03:00
Tom McLaughlin 81c0783c0e nixos/k3s: add containerdConfigTemplate option 2024-08-12 14:58:18 -07:00
Rick van Schijndel 0a21feb643
Merge pull request #327842 from cafkafk/kubernetes-feature-gate-refactor
nixos/kubernetes: refactor feature gates to attrsOf bool, making it possible to disable featureGates
2024-08-09 08:24:47 +02:00
Christina Sørensen 32ca66f3ed
nixos/kubernetes: refactor feature gates to attrsOf bool, making it possible to disable featureGates
This is a breaking change, requiring users of `featureGates` to change
from a `listOf str` to `attrsOf bool`.

Before:
```nix
featureGates = [ "EphemeralContainers" ];
extraOpts = pkgs.lib.concatStringsSep " " (
[
  "--container-runtime=remote"
  ''--feature-gates="CSIMigration=false"''
});
```

After:
```nix
featureGates = {EphemeralContainers = true; CSIMigration=false;};
```

This is much nicer, and sets us up for later work of migrating to
configuration files for other services, like e.g. has been happening
with kubelet (see: #290119).

Signed-off-by: Christina Sørensen <christina@cafkafk.com>
2024-08-01 07:51:34 +02:00
Robert Rose 3ac993566c nixos/k3s: add test for airgap images import
Add a nixos test that imports the airgap images
archive and checks whether all expected images are
successfully loaded by k3s.
2024-07-30 21:14:25 +02:00
Florian 2c5b304712
Merge pull request #219942 from vsharathchandra/druid_nix_module
nixos/druid: init module and package
2024-07-28 11:02:06 +02:00
sharath.v 4bfc173d8f nixos/druid: init module 2024-07-28 06:54:13 +00:00
❄️ 5f2a6de6f9
Merge pull request #328385 from rorosen/k3s-kubelet-config
nixos/k3s: add options for graceful node shutdown and kubelet config
2024-07-25 10:19:16 -03:00
Robert Rose c58c1e8f55 nixos/k3s: add options for graceful node shutdown and kubelet config
Allow to set kubelet configuration parameters
via an option. Additionally, expose the
respective options for graceful node
shutdown directly, as it is anticipated to
be used frequently.
2024-07-19 20:28:00 +02:00
Sarah Brofeldt 54fbcf1be8
Merge pull request #321632 from PedroRegisPOAR/kubernetes-mkCert-drops-nogroup-as-default
nixos/kubernetes: adds argument to mkCert defaulting to kubernetes group
2024-07-19 12:49:49 +02:00
Robert Rose cc2790ff1e nixos/k3s: accept a list of extraFlags
Accept a list of strings for the extraFlags
option in addition to the previous single
string.
2024-07-16 08:20:32 +02:00
superherointj bbc168ab4c k3s: use team for maintainers 2024-07-12 09:30:38 -03:00
Marcus Ramberg 72249a0d35
Merge pull request #275180 from rorosen/extend-k3s-module 2024-07-12 12:02:32 +02:00
Jonas Chevalier 87fa27e3aa
Merge pull request #321410 from mogeko/rke2
rke2: add killall script
2024-07-11 12:15:24 +02:00
Paul-Henri Froidmont bca32a4163
nixos/patroni: remove raft 2024-07-04 10:22:19 +02:00
Robert Rose a64423c745 nixos/k3s: extend k3s module
This contribution extends the k3s module to
enable the usage of Helm charts and container
images in air-gapped environments. Additionally,
the manifests option allows to specify arbitrary
manifests that are deployed by k3s automatically.
It is now possible to deploy Kubernetes workloads
using the k3s module.
2024-06-25 17:09:12 +02:00
Mathew Polzin 88d934879a nixos/services.kubernetes.kubelet: handle non-lower case characters in hostname 2024-06-23 14:06:42 -05:00
Jonas Juselius cfed9707a5 nixos/kubernetes: fix service reload to restart 2024-06-22 07:52:46 +02:00
Pedro O. A. Regis a5deaf9e93 nixos/kubernetes: adds argument to mkCert defaulting to kubernetes group 2024-06-21 21:26:08 -03:00
Mogeko 7f6cd3837d
nixos/rke2: modify the systemd unit name to be consistent with the upstream
remove `fix-systemd-unit-name.patch`.
2024-06-21 10:50:41 +08:00
Mogeko a642efcdab
nixos/rke2: add rke2 service
Set assertions to avoid obvious errors.

Eliminate the conflict between default CNI (`cana`) and `NetworkManager`.

Determine whether optional can be used for agent.

Add the option `cisHardening` to enable CIS Hardening.

Set kernel parameters by `boot.kernel.sysctl`.

Using `lib.escapeShellArgs` to make `ExecStart` more resilient to escaping issues.

Using a list of `str` to extra flags.
2024-05-28 12:39:30 +08:00
superherointj 6cfcd3c754 k3s: format with nixfmt-rfc-style 2024-05-10 18:55:54 -03:00
stuebinm 6afb255d97 nixos: remove all uses of lib.mdDoc
these changes were generated with nixq 0.0.2, by running

  nixq ">> lib.mdDoc[remove] Argument[keep]" --batchmode nixos/**.nix
  nixq ">> mdDoc[remove] Argument[keep]" --batchmode nixos/**.nix
  nixq ">> Inherit >> mdDoc[remove]" --batchmode nixos/**.nix

two mentions of the mdDoc function remain in nixos/, both of which
are inside of comments.

Since lib.mdDoc is already defined as just id, this commit is a no-op as
far as Nix (and the built manual) is concerned.
2024-04-13 10:07:35 -07:00
Christina Sørensen 26036ecf31
kubelet: Set Kubelet Parameters Via A intermediate Configuration File
Signed-off-by: Christina Sørensen <christina@cafkafk.com>
2024-02-23 08:55:02 +01:00
Joris Bolsens 81391bd22f nixos/kubernetes: set k8 home permissions correctly 2024-02-15 23:11:59 -08:00
Joris Bolsens 6a11b7a777
nixos/kubernetes: don't delete the apitoken after its created
This was breaking the nixos-kubernetes-node-join script
the token gets copied, and then immediately overridden with /dev/null when certmgr restarts.
2024-02-12 22:50:27 -08:00
Joris Bolsens 1856e7e4b1 nixos/kubernetes: use correct -o option with bash install when copying certs in cfssl prestart script 2024-02-10 01:46:00 -08:00
Sarah Brofeldt cd5c10f696
Merge pull request #275896 from hoppla20/master
nixos/kubernetes: fix pki's mkSpec function
2024-02-07 18:44:35 +01:00
Felix Buehler ffadbb6788 kubernetes: prefer 'install' over 'mkdir/chmod/chown' 2024-02-03 11:16:23 +01:00
vincent.cui 9c870ac78f nixos/kubernetes: fix pki's mkSpec function
The `authority.file.path` field of a cert spec is
[defined as follows]
(https://github.com/cloudflare/certmgr/tree/v3.0.3#pki-specs):

> if this is included, the CA certificate will be saved here.
It follows the same file specification format above. Use this
if you want to save your CA cert to disk.

So certmgr fails, because each certmgr spec (apiserver,
addonManager, ...) wants to manage the file at the `cert.caCert`
location. However, the `authority.file.path` field is not needed
for generating a certificate, as the certificate is generated by
the CA, which is reachable at `authority.remote` (e.g.
https://localhost:8888 with `easyCerts = true`). The
`authority.file.path` field just saves the certificate of the CA
to disk.
2023-12-21 22:08:31 +01:00
nicoo fb85785231 nixos/kubernetes: certmgr-selfsigned is now an alias 2023-12-12 21:17:24 +00:00
Peder Bergebakken Sundt d41449afb3
Merge pull request #256737 from illustris/spark
spark: init 3.5.0, 3.4.0->3.4.2, 3.3.2->3.3.3
2023-12-07 04:24:16 +01:00
Alexandru Scvortov f9123510db kubernetes: don't always open flannel fw ports 2023-12-02 10:50:56 +00:00
h7x4 0a37316d6c
treewide: use mkPackageOption
This commit replaces a lot of usages of `mkOption` with the package
type, to be `mkPackageOption`, in order to reduce the amount of code.
2023-11-27 01:28:36 +01:00
illustris ef9732e11f
spark: remove untarDir 2023-11-04 13:01:45 +05:30
illustris 1cd3c804bf
hadoop, nixos/hadoop: remove untarDir 2023-09-22 16:34:07 +05:30
Lin Jian 74fadae942
treewide: stop using types.string
It is an error[1] now.

[1]: https://github.com/NixOS/nixpkgs/pull/247848
2023-08-08 21:31:21 +08:00
Robert Schütz c9e8e912cb nixos/patroni: use Python 3.10 2023-07-14 18:20:14 -07:00
figsoda 701bcdbead nixos: fix typos 2023-05-19 22:31:04 -04:00
Johan Thomsen 0b57240111 nixos/kubernetes: kubelet --container-runtime flag has been removed 2023-04-13 07:21:56 +10:00
superherointj a180470959 nixos/k3s: start after network-online 2023-03-30 07:53:38 -03:00
Bernardo Meurer 6e55733359
Merge pull request #219747 from Stunkymonkey/deprecate-isNull 2023-03-16 11:10:22 -03:00
Sandro fbeb9b9a96
Merge pull request #215835 from illustris/hbase
nixos/hbase: add thrift and rest servers
2023-03-15 16:55:36 +01:00
Thomas Dy fbb554fa58 nixos/kubernetes: update coredns 1.7.1 -> 1.10.1 2023-03-14 22:15:43 +10:00
Felix Buehler d10e69c86b treewide: deprecate isNull
https://nixos.org/manual/nix/stable/language/builtins.html#builtins-isNull
2023-03-06 22:40:04 +01:00