Commit Graph

13 Commits (master)

Author SHA1 Message Date
Johan Thomsen 8a6e130c71 nixos/ceph: fix tests
- 512 -> 1024MB vm memory (had sporadic oom-failures with the lower setting)

- set "auth_allow_insecure_global_id_reclaim=false" as described here: https://docs.ceph.com/en/latest/security/CVE-2021-20288/
2021-04-22 13:17:57 +02:00
Dominik Xaver Hörl 25bef2d8f9 treewide: simplify pkgs.stdenv.lib -> pkgs.lib
The library does not depend on stdenv, that `stdenv` exposes `lib` is
an artifact of the ancient origins of nixpkgs.
2021-01-10 20:12:06 +01:00
Johan Thomsen 4f39f93d8e nixos/ceph: (test) ceph now has device monitoring and pg_autoscaler enabled by default
- the pg_autoscaler will force new empty pools down to 32 pgs
- device monitoring metrics consumes 1 pool with 1 pg
2020-07-11 14:12:42 +02:00
Sarah Brofeldt 6ccd347e46 nixos/tests/ceph: Fix pg number to power of 2 2020-04-02 21:11:45 +02:00
Sarah Brofeldt 59233d67b1 nixos/tests/ceph: Use 3 osds, the default minimum 2020-01-09 08:00:19 +01:00
Florian Klink 6815017dcd nixosTests.ceph-multi-node: port to python 2019-11-20 17:38:20 +01:00
Daniel Kuehn 1972904fc6 nixos/ceph: Clarify comments in tests and add source reference for the bootstraping method 2019-11-09 23:35:30 +01:00
Florian Klink ffd0060869 nixos/ceph: use ConditionPathExists to delay ceph daemon start
This prevents services to be started before they're initialized, and
renders the `systemd.targets.ceph.wantedBy = lib.mkForce [];` hack in
the vm tests obsolete - The config now starts up ceph after a reboot,
too.

Let's take advantage of that, crash all VMs, and boot them up again.
2019-11-09 16:13:13 +01:00
Florian Klink 67e0777f62 nixos/ceph: run unprivileged, use StateDirectory and tmpfiles, don't pass extraServiceConfig
Don't pass user and group to ceph, and rely on it to drop ceps, but let
systemd handle running it as the appropriate user.

This also inlines the extraServiceConfig into the makeService function,
as we have conditionals depending on daemonType there anyways.

Use StateDirectory to create directories in
/var/lib/ceph/${daemonType}/${clusterName}-${daemonId}.

There previously was a condition on daemonType being one of mds,mon,rgw
or mgr. We only instantiate makeServices with these types, and "osd" was
special.
In the osd case, test examples suggest it'd be in something like
/var/lib/ceph/osd/ceph-${cfg.osd0.name} - so it's not special at all,
but exactly like the pattern for the others.

During initialization, we also need these folders, before the unit is
started up. Move the mkdir -p commands in the vm tests to the line
immediately before they're required.
2019-11-09 16:02:53 +01:00
Florian Klink 64c9c08302 nixos/ceph: create /etc/ceph and /var/lib/ceph via tmpfiles
We seem to be relying on those being present during runtime anyways.
2019-11-09 15:27:45 +01:00
Daniel Kuehn 47604c7026
nixos/ceph: Rewrite test to take all important values from a single attrset 2019-10-29 15:00:28 +01:00
Daniel Kuehn db0787c87a nixos/ceph: Reduce RAM allocation for the test machines and change the sharing of the admin keyring to the shared directory instead of netcat 2019-10-27 16:56:52 +01:00
Daniel Kuehn 916520151e nixos/ceph: Rename old ceph test and add new multi-node test
Rename the old ceph test to ceph-single-node and add a new test
ceph-multi-node. The ceph-single-node represents a dev cluster whereas
ceph-multi-node is closer to a prod cluster.
2019-10-27 13:46:05 +01:00