386 Commits

Author SHA1 Message Date
d63cc2e661 Bump version to 0.9.94 2024-02-06 13:31:50 -05:00
a95e72008e Add size validations for volume clones
Adds the same validations as a volume add or resize to volume clones, to
ensure there is enough free space for them.
2024-02-02 11:37:29 -05:00
efc7434143 Add safety check for 80% full size
Adds a check that a volume creation or resize won't violate the 80% full
rule for the storage cluster. This ensures a cluster won't get too full
if a storage volume fills up.

Also adds a force flag throughout the pipeline to override this check,
should an administrator really want to do so.

Closes #177
2024-02-02 11:37:00 -05:00
18f09196be Bump version to 0.9.93 2024-01-30 09:51:21 -05:00
df40b779af Bump version to 0.9.92 2024-01-29 09:39:10 -05:00
f29b4c2755 Bump version to 0.9.91 2024-01-23 10:40:59 -05:00
86ca363697 Bump version to 0.9.90 2024-01-11 10:22:48 -05:00
09269f182c Add live migrate max downtime selector meta field
Adds a new flag to VM metadata to allow setting the VM live migration
max downtime. This will enable very busy VMs that hang live migration to
have this value changed.
2024-01-11 00:05:50 -05:00
e9b6072fa0 Bump version to 0.9.89 2024-01-09 12:15:53 -05:00
3c458ca9a6 Fix broken result backend on old Celery 2024-01-09 12:06:23 -05:00
1d480f5629 Bump version to 0.9.88 2023-12-29 14:56:33 -05:00
123c7ce857 Update copyright header on all files for 2024
Last release of 2023 is probably the best time to do this.
2023-12-29 11:16:59 -05:00
4969e90f8a Allow enable/disable of Prometheus endpoints
Since these are unauthenticated, it might be the case that an
administrator wishes to completely disable these metrics endpoints.
Provide that option via pvc.conf through pvc-ansible's existing
enable_prometheus_exporters option and the new enable_prometheus
configuration flag.

Defaults to "yes" to provide all functionality unless explicitly
disabled, as the author assumes that the PVC API is secured in other
ways as well and that metric information is not completely sensitive.
2023-12-29 09:25:10 -05:00
0bcf8cfe19 Add Zookeeper metrics proxy 2023-12-28 13:53:15 -05:00
8083b7a3e6 Bump version to 0.9.87 2023-12-27 13:40:51 -05:00
3e4cc53fdd Add node network statistics and utilization values
Adds a new physical network interface stats parser to the node
keepalives, and leverages this information to provide a network
utilization overview in the Prometheus metrics.
2023-12-21 15:45:01 -05:00
39f9f3640c Rename health metrics and add resource metrics 2023-12-21 09:40:49 -05:00
0a93f526e0 Bump version to 0.9.86 2023-12-14 14:46:29 -05:00
ed9c37982a Move metric collection into daemon library 2023-12-11 19:20:30 -05:00
44a4f0e1f7 Use new info detail output instead of new lists
Avoids multiple additional ZK calls by using data that is now in the
status detail output.
2023-12-10 22:19:09 -05:00
9dc5097dbc Bump version to 0.9.85 2023-12-10 01:00:33 -05:00
9aee2a9075 Bump version to 0.9.84 2023-12-09 23:05:40 -05:00
4ca2381077 Rework metrics output and add combined endpoint 2023-12-09 15:47:40 -05:00
a70c1d63b0 Separate state totals from states, separate states 2023-12-09 13:59:17 -05:00
fd717b702d Use external list of fault states 2023-12-09 12:51:41 -05:00
132cde5591 Add totals and nice-format states
Avoids tons of annoying rewriting in the UI later.
2023-12-09 12:50:19 -05:00
ba565ead4c Report all state combinations in Prom metrics
Ensures that every state combination is always shown to metrics, even if
it contains 0 entries.
2023-12-09 12:40:37 -05:00
2b8abea8df Remove debug printing 2023-12-09 12:22:36 -05:00
9b3c9f1be5 Add Ceph metrics proxy and health fault counts 2023-12-09 12:22:36 -05:00
7373bfed3f Add Prometheus metric exporter
Adds a "fake" Prometheus metrics endpoint which returns cluster status
information in Prometheus format.
2023-12-09 12:22:36 -05:00
0bda095571 Move libvirt_schema and fix other imports 2023-12-09 12:20:29 -05:00
5a7ea25266 Fix incorrect database name entries 2023-12-09 12:12:00 -05:00
20acf3295f Add mass ack/delete of faults 2023-12-06 13:59:39 -05:00
672e58133f Implement interfaces to faults 2023-12-04 01:37:54 -05:00
988de1218f Bump version to 0.9.83 2023-12-01 17:37:42 -05:00
102c3c3106 Port all Celery worker functions to discrete pkg
Moves all tasks run by the Celery worker into a discrete package/module
for easier installation. Also adjusts several parameters throughout to
accomplish this.
2023-11-30 02:24:54 -05:00
0c0fb65c62 Rework Flask API to route Celery tasks manually
Avoids needing to define any of these tasks here; they can all be
defined in the pvcworkerd code.
2023-11-30 00:40:09 -05:00
03a738f878 Move config parser into daemon_lib
And reformat/add config values for API.
2023-11-30 00:05:37 -05:00
647cba3cf5 Expand startup width for new daemon name 2023-11-29 21:21:51 -05:00
c8f4cbb39e Fix node entry keys 2023-11-27 13:24:01 -05:00
786fae7769 Improve logo output 2023-11-27 13:01:43 -05:00
17f81e8296 Refactor pvcapid to use new configuration 2023-11-27 12:49:26 -05:00
460a2dd09f Bump version to 0.9.82 2023-11-25 15:38:50 -05:00
24cabd3b99 Fix missing result_backend on Debian 10/11
For whatever reason, a Celery worker on <5.2.x was not picking these up.
Move them back to the root of the module so they are properly picked up
on these older versions but still prevents calling the routing functions
during an API doc generation.
2023-11-25 15:35:25 -05:00
3e001b08b6 Bump version to 0.9.81 2023-11-17 01:29:41 -05:00
b66cfb07d8 Isolate cluster-dependent Celery startup
Avoids calling unworkable functions when generating API docs etc. by
isolating them into a Celery startup function called by Daemon.py.

Also update to Celery 4+ settings format.
2023-11-16 20:32:29 -05:00
9885914abd Remove stray periods from messages 2023-11-16 19:56:24 -05:00
e8da3714c0 Convert benchmark to use new Celery step structure 2023-11-16 19:36:23 -05:00
4d23d0419c Fix total stage count 2023-11-16 18:41:43 -05:00
c1c22c81e7 Ensure script cleanup is done in chroot 2023-11-16 18:27:23 -05:00