diff --git a/README.md b/README.md index 9a990b8c..06817fcf 100644 --- a/README.md +++ b/README.md @@ -235,14 +235,14 @@ Sign in at `http://`; you must set a new password at the first login, A compute node is a KVM host the panel manages over libvirt. -1. Install KVM and libvirt. The bootstrap script handles Ubuntu, Debian, CentOS, Fedora, Rocky Linux and AlmaLinux 10, openSUSE and SLES. On RHEL, which needs EPEL from its release RPM, install the `qemu-kvm` and `libvirt` packages yourself and enable `virtqemud.socket` (plus `virtproxyd-tcp.socket` for TCP): +1. Install KVM and libvirt. The bootstrap script handles Ubuntu, Debian, CentOS, Fedora, Rocky Linux and AlmaLinux 10, openEuler 24.03 LTS, openSUSE and SLES. On RHEL, which needs EPEL from its release RPM, install the `qemu-kvm` and `libvirt` packages yourself and enable `virtqemud.socket` (plus `virtproxyd-tcp.socket` for TCP): ```bash curl -fsSL https://raw.githubusercontent.com/retspen/webvirtcloud/master/dev/libvirt-bootstrap.sh | sudo sh # or, from a cloned repository: sudo sh ./dev/libvirt-bootstrap.sh ``` - The new VM form offers UEFI, UEFI Secure Boot (with Microsoft's keys, for Windows 11) and a TPM 2.0 only when the host's libvirt finds the UEFI firmware and swtpm: install `ovmf swtpm-tools` (Debian / Ubuntu) or `edk2-ovmf swtpm swtpm-tools` (RHEL family) if they are missing. + The new VM form offers UEFI, UEFI Secure Boot (with Microsoft's keys, for Windows 11) and a TPM 2.0 only when the host's libvirt finds the UEFI firmware and swtpm: install `ovmf swtpm-tools` (Debian / Ubuntu) or `edk2-ovmf swtpm swtpm-tools` (RHEL family, openEuler) if they are missing. 2. For SSH connections, give the user the panel runs as an SSH key and copy it to the compute node. **Use only the block for your installation type:** a key set up with the host commands is not seen by the panel in Docker. `ssh-copy-id` asks for the compute node's root password once. `accept-new` accepts a new host's key on first connect and refuses a changed one. diff --git a/dev/libvirt-bootstrap.sh b/dev/libvirt-bootstrap.sh index 980ae600..4f47417a 100644 --- a/dev/libvirt-bootstrap.sh +++ b/dev/libvirt-bootstrap.sh @@ -503,6 +503,36 @@ daemons_running_centos() { # ############################################################################## +############################################################################## +# +# openEuler Install Functions +# +# qemu is openEuler's qemu-kvm, cyrus-sasl holds the DIGEST-MD5 mechanism +install_openeuler() { + dnf -y install qemu libvirt python3-libguestfs cyrus-sasl || return 1 + return 0 +} + +# the same files as the RHEL family: VNC listen address, SASL, gstfsd +install_openeuler_post() { + install_centos_post +} + +# openEuler 24.03 ships modular daemons only for qemu and the proxy, so the +# monolithic libvirtd serves all drivers, with its TCP socket for SASL logins +daemons_running_openeuler() { + systemctl enable --now libvirtd.socket libvirtd-ro.socket libvirtd-admin.socket libvirtd-tcp.socket || return 1 + systemctl restart libvirtd.service || return 1 + if [ -f /usr/lib/systemd/system/libvirt-guests.service ]; then + systemctl enable --now libvirt-guests.service + fi + return 0 +} +# +# Ended openEuler Install Functions +# +############################################################################## + ############################################################################## # # Fedora Install Functions