Commit Graph

1028 Commits

Author SHA1 Message Date
Fabian Grünbichler
8d47732670 d/postinst: make deb-systemd-invoke non-fatal
else this can break an upgrade for unrelated reasons (regular debhelper also
constructs the restart invocations like this, it even redirects output to
/dev/null)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2024-04-17 16:56:13 +02:00
Fabian Grünbichler
b76dc13ba5 postinst: move dir creation to helper
and guard it to only run on ceph-using systems (the regular 'inited' check
doesn't work as a guard for this, because it checks for new-style inits
including the dir existing).

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2024-04-11 14:56:16 +02:00
Fabian Grünbichler
85c14e2826 postinst: remove blank lines
it looks confusing in `apt ..` output

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2024-04-11 11:56:10 +02:00
Fabian Grünbichler
59dd868c1f d/control: depend on pve-storage with new ceph parser
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2024-04-11 11:55:47 +02:00
Fabian Grünbichler
2ff48ca76c postinst: replace placeholder with actual version
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2024-04-11 10:55:35 +02:00
Max Carrara
11edd5d88d fix #4759: ceph: configure ceph-crash.service and its key
Due to Ceph dropping privileges when running the 'ceph-crash' daemon
[0], it is necessary to allow the daemon to authenticate with its
cluster in a safe manner.

In order to avoid exposing sensitive keyrings or somehow escalating
its privileges again, 'ceph-crash' is therefore provided with its own
keyring in the '/etc/pve/ceph' directory. This directory, due to being
on 'pmxcfs', may be read by members of the 'www-data' group, which
'ceph-crash' is made part of [1].

Expected Configuration
----------------------

 1. A keyring file named '/etc/pve/ceph/ceph.client.crash.keyring'
    exists
 2. A section named 'client.crash' exists in '/etc/pve/ceph.conf'
 3. The 'client.crash' section has a key named 'keyring' which
    references the keyring file as '/etc/pve/ceph/$cluster.$name.keyring'
 4. The 'client.crash' section has *no* key named 'key'

New Clusters
------------

The keyring file is created and the conf file is updated after the first
monitor has been created (when calling `pveceph mon create`).

Existing Clusters
-----------------

A new helper script creates and configures the 'client.crash' keyring in
`postinst`, if:
 * Ceph is installed
 * Ceph is initialized ('/etc/pve/ceph.conf' and '/etc/pve/ceph' exist)
 * Connection to RADOS is successful

If the above conditions are met, the helper script ensures that the
existing configuration matches the expected configuration mentioned
above.

The configuration is not changed if it is already as expected.

The helper script may be called again manually if the `postinst` hook
fails. It is installed to '/usr/share/pve-manager/helpers/pve-init-ceph-crash'.

Existing `client.crash` Key
---------------------------

If a key named 'client.crash' already exists within the cluster, it is
reused and not regenerated.

[0]: https://github.com/ceph/ceph/pull/48713
[1]: https://git.proxmox.com/?p=ceph.git;a=commitdiff;h=f72c698a55905d93e9a0b7b95674616547deba8a

Signed-off-by: Max Carrara <m.carrara@proxmox.com>
Tested-by: Friedrich Weber <f.weber@proxmox.com>
2024-04-11 10:42:11 +02:00
Max Carrara
a51a28e3cd ceph: introduce '/etc/pve/ceph'
This commit adds the '/etc/pve/ceph' directory to our overall expected
Ceph configuration.

This directory is meant to store cluster-wide, non-private
configuration files used by Ceph applications and services that are
executed with lower privileges, such as 'ceph-crash.service'.

The existence of the directory is now also checked for when checking
whether Ceph is configured correctly. This makes it easier for our
other tooling to rely on the directory's existence, reducing the
number of otherwise needless frequent checking.

* For new clusters: `pveceph init` now creates '/etc/pve/ceph' when
  called.

* For existing clusters: The 'postinst' hook this commit adds ensures
  that '/etc/pve/ceph' is created when updating.

Signed-off-by: Max Carrara <m.carrara@proxmox.com>
Tested-by: Friedrich Weber <f.weber@proxmox.com>
2024-04-11 10:42:11 +02:00
Thomas Lamprecht
4b06efb5db bump version to 8.1.10
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-03-28 19:57:10 +01:00
Thomas Lamprecht
71ba92b1c9 bump version to 8.1.9
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-03-28 18:12:50 +01:00
Thomas Lamprecht
d29041d9f8 bump version to 8.1.8
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-03-27 14:36:05 +01:00
Thomas Lamprecht
d5336b9e2b d/control: bump versioned dependencies for libpve-storage-perl
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-03-27 14:36:05 +01:00
Thomas Lamprecht
bbbaf45d62 bump version to 8.1.7
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-03-22 16:08:20 +01:00
Thomas Lamprecht
a2ae3c5011 d/control: bump versioned deps for widget-toolkit and access-control
to ensure the new password confirmation API and UI is available

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-03-22 16:08:20 +01:00
Thomas Lamprecht
01200f7d73 bump version to 8.1.6
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-03-14 15:26:40 +01:00
Thomas Lamprecht
60e01c6ac2 bump version to 8.1.5
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-03-14 15:13:30 +01:00
Thomas Lamprecht
385f48fb21 d/control: bump versioned dependency for libpve-access-control
to ensure the newly checked Sys.AccessNetwork privilege is available.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-02-28 15:53:51 +01:00
Thomas Lamprecht
e1a0e868c7 ui: adapt to fix of Korean language code
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-02-02 17:07:33 +01:00
Thomas Lamprecht
395dbe6b7b d/postinst: fix up whitespace indentation
we actually use a sane one here so do not mess with that

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-01-10 10:35:43 +01:00
Thomas Lamprecht
ec5affc9e4 bump version to 8.1.4
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2024-01-10 10:30:41 +01:00
Stefan Hanreich
250d7b07f1 postinst: filter rbds in lvm
Since LVM 2.03.15 RBD devices are also scanned by default [1]. This
can lead to guest volumes being recognized and displayed on the host
when using KRBD for RBD-backed disks. In order to prevent this we add
an additional filter to the LVM config to avoid scanning rbds.

This also prevents a bug where LVM created a very high amount of
archive entries when there were logical volumes with the same path
available. This could happen when two guests with RBD disks had the
same LVM layout or a guest and host had the same layout.

previous behavior:
If there is no marker in the LVM conf and global_filter does not
contain '/dev/zd.*': replace the global_filter with our version

new behavior:
Replace the global_filter iff:
- There is no marker and global_filter is empty
- The global_filter is exactly the old default

If we don't replace the filter and it is a non-default value: We print
a warning. Addtionally we force this function to run once when
upgrading from older versions.

The previous versions could replace custom global_filters where the
comment had been removed and the zvol directive removed. The new
behavior is slightly more conservative, but works the same in other
cases.

[1] 6a431eb242

Signed-off-by: Stefan Hanreich <s.hanreich@proxmox.com>
2024-01-09 10:33:27 +01:00
Thomas Lamprecht
b46aac3b42 bump version to 8.1.3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-23 11:20:06 +01:00
Thomas Lamprecht
38d153d6c7 bump version to 8.1.2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-23 11:00:27 +01:00
Thomas Lamprecht
95ece724d5 d/control: bump versioned dependency for libpve-guest-common-perl
Ensure new notification-mode property is recognized for backup jobs.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-23 10:40:57 +01:00
Thomas Lamprecht
3f088b4a50 bump version to 8.1.1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-22 19:37:14 +01:00
Thomas Lamprecht
4898513c4e bump version to 8.1.0
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-22 14:56:12 +01:00
Thomas Lamprecht
c6a1e4e8f0 d/control: upgrade libpve-network-perl dependency to recommendation
could actually be a hard dependency too

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-22 14:56:00 +01:00
Wolfgang Bumiller
c5026e4687 bump access-control to 8.0.7 for nested pools
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2023-11-20 12:26:13 +01:00
Thomas Lamprecht
fd1a0ae1b3 bump version to 8.0.9
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-18 12:24:14 +01:00
Thomas Lamprecht
f58ecd9d4e bump version to 8.0.8
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-17 19:57:07 +01:00
Thomas Lamprecht
856eafa3c7 d/control: bump versioned dependencies for proxmox-widget-toolkit
for the UI side of the notification system rework

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-17 19:57:07 +01:00
Thomas Lamprecht
a1ea14f452 d/control: bump versioned dependencies for pve-cluster and libpve-notify-perl
to ensure the rework of the notification system can be used

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-17 19:54:39 +01:00
Thomas Lamprecht
51fcf81434 d/control: bump versioned dependencies for proxmox-widget-toolkit to 4.1.0
to ensure new combo grid default value and firewall log (date time
range stuff) is available

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-14 14:57:16 +01:00
Thomas Lamprecht
2018dc0774 bump version to 8.0.7
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-29 19:52:45 +01:00
Fabian Grünbichler
406d820f86 d/control: bump libpve-network-perl suggestion
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2023-10-25 13:14:26 +02:00
Christoph Heiss
4845cca7e2 expose font-logos via API server and load in UI
Signed-off-by: Christoph Heiss <c.heiss@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-10-23 17:26:08 +02:00
Philipp Hufnagl
e86862bf27 fix #4849: ui: allow decompressing ISO files when downloading
The compression algorithm will be automatically detected when querying the
download URL. It can be overriden by the user using the "compression algorithm"
drop down under advanced.

Signed-off-by: Philipp Hufnagl <p.hufnagl@proxmox.com>

Reworded title and message, updated d/control for libpve-storage-perl version
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>

Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
2023-09-26 09:35:31 +02:00
Thomas Lamprecht
acaa1e40d6 d/control: bump dependency of pve-container and guest-common
While not a must, it helps to ensure we got the newly documented
pbs-entries-max feature actually available and avoids all to freaky
set ups.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-09-18 16:55:09 +02:00
Thomas Lamprecht
57490ff2c6 bump version to 8.0.6
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-09-08 13:42:20 +02:00
Wolfgang Bumiller
a699b7d896 bump version to 8.0.5
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2023-08-16 12:12:47 +02:00
Wolfgang Bumiller
10821ca322 bump pve-doc-generator dependency
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2023-08-16 12:10:33 +02:00
Wolfgang Bumiller
51f54177e9 bump proxmox-widget-toolkit dependency to 4.0.7
for the notification ui

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2023-08-16 11:11:58 +02:00
Lukas Wagner
7c236b5c11 d/control: add dependency to libpve-notify-perl
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
2023-08-16 11:10:08 +02:00
Wolfgang Bumiller
e1d996dc55 bump pve-access-control dep to 8.0.5
This is required for the new check-connection parameter for ldap
realms added in the next commit.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2023-08-11 13:38:11 +02:00
Fabian Grünbichler
d258a813cf bump version to 8.0.4
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2023-08-01 11:55:46 +02:00
Thomas Lamprecht
bbf3993334 bump version to 8.0.3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-21 19:55:58 +02:00
Thomas Lamprecht
c442e67130 bump version to 8.0.2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-21 17:06:54 +02:00
Thomas Lamprecht
2f11eee575 d/postinst: remove beta sources for real
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-21 17:06:31 +02:00
Thomas Lamprecht
4e7c7d5882 bump version to 8.0.1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-21 16:00:11 +02:00
Thomas Lamprecht
f194715b9d d/postins: fix condition for removal of pvetest added during beta
Reported-by: Stoiko Ivanov <s.ivanov@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-21 11:08:21 +02:00
Thomas Lamprecht
89eebc0c90 bump version to 8.0.0
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-21 10:03:52 +02:00