Considérons donc les problèmes de l'installation initiale des composants ovirt-engine et ovirt-host.
Des processus d'installation plus détaillés peuvent toujours être trouvés dans documentation.
Pour Engine, la configuration minimale requise est de 2 cœurs/4 Gio de RAM/25 Gio de stockage. Recommandé - à partir de 4 cœurs/16 Go de RAM/50 Go de stockage. Nous utilisons l'option Standalone Manager, lorsque le moteur s'exécute sur une machine physique ou virtuelle dédiée en dehors d'un cluster géré. Pour notre installation, nous prendrons par exemple une machine virtuelle sur un ESXi* autonome. Il est pratique d'utiliser des outils d'automatisation de déploiement ou de clonage à partir d'un modèle préalablement préparé ou d'une installation kickstart.
*Remarque : Pour un système de production, c'est une mauvaise idée car... le manager travaille sans réserve et devient un goulot d'étranglement. Dans ce cas, il est préférable d’envisager l’option Moteur auto-hébergé.
Si nécessaire, la procédure de conversion de Standalone en Self Hosted est décrite en détail dans documentation. En particulier, l'hôte doit recevoir la commande de réinstallation avec la prise en charge du moteur hébergé.
Nous installons CentOS 7 sur la VM dans une configuration minimale, puis mettons à jour et redémarrons le système :
$ sudo yum update -y && sudo reboot
Il est utile d'installer un agent invité pour une machine virtuelle :
$ sudo yum install open-vm-tools
pour les hôtes VMware ESXi ou pour oVirt :
$ sudo yum install ovirt-guest-agent
Connectez le référentiel et installez le gestionnaire :
Dans la plupart des cas, les paramètres par défaut suffisent ; pour les utiliser automatiquement, vous pouvez lancer la configuration avec la touche :
$ sudo engine-setup --accept-defaults
Nous pouvons maintenant nous connecter à notre nouveau moteur à ovirt.lab.example.com. C’est encore vide ici, passons donc à l’installation des hyperviseurs.
Installation d'ovirt-host
Nous installons CentOS 7 dans une configuration minimale sur un hôte physique, puis connectons le référentiel, mettons à jour et redémarrons le système :
Remarque : Il est pratique d'utiliser des outils d'automatisation du déploiement ou une installation kickstart pour l'installation.
Exemple de fichier kickstart
Attention! Les partitions existantes sont supprimées automatiquement ! Soyez prudent!
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us','ru' --switch='grp:alt_shift_toggle'
# System language
lang ru_RU.UTF-8
# Network information
network --bootproto=dhcp --device=ens192 --ipv6=auto --activate
network --hostname=kvm01.lab.example.com
# Root password 'monteV1DE0'
rootpw --iscrypted $6$6oPcf0GW9VdmJe5w$6WBucrUPRdCAP.aBVnUfvaEu9ozkXq9M1TXiwOm41Y58DEerG8b3Ulme2YtxAgNHr6DGIJ02eFgVuEmYsOo7./
# User password 'metroP0!is'
user --name=mgmt --groups=wheel --iscrypted --password=$6$883g2lyXdkDLbKYR$B3yWx1aQZmYYi.aO10W2Bvw0Jpkl1upzgjhZr6lmITTrGaPupa5iC3kZAOvwDonZ/6ogNJe/59GN5U8Okp.qx.
# System services
services --enabled="chronyd"
# System timezone
timezone Europe/Moscow --isUtc
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
# Partition clearing information
clearpart --all
# Disk partitioning information
part /boot --fstype xfs --size=1024 --ondisk=sda --label=boot
part pv.01 --size=45056 --grow
volgroup HostVG pv.01 --reserved-percent=20
logvol swap --vgname=HostVG --name=lv_swap --fstype=swap --recommended
logvol none --vgname=HostVG --name=HostPool --thinpool --size=40960 --grow
logvol / --vgname=HostVG --name=lv_root --thin --fstype=ext4 --label="root" --poolname=HostPool --fsoptions="defaults,discard" --size=6144 --grow
logvol /var --vgname=HostVG --name=lv_var --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=16536
logvol /var/crash --vgname=HostVG --name=lv_var_crash --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=10240
logvol /var/log --vgname=HostVG --name=lv_var_log --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=8192
logvol /var/log/audit --vgname=HostVG --name=lv_var_audit --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=2048
logvol /home --vgname=HostVG --name=lv_home --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=1024
logvol /tmp --vgname=HostVG --name=lv_tmp --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=1024
%packages
@^minimal
@core
chrony
kexec-tools
%end
%addon com_redhat_kdump --enable --reserve-mb='auto'
%end
%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end
# Reboot when the install is finished.
reboot --eject
Enregistrez ce fichier, par ex. ftp.example.com/pub/labkvm.cfg. Pour utiliser le script lors du démarrage de l'installation du système d'exploitation, sélectionnez 'Installer CentOS 7', activez le mode d'édition des paramètres (touche Tab) et ajoutez à la fin (avec un espace, sans guillemets)
' inst.ks=ftp://ftp.example.com/pub/labkvm.cfg'
.
Le script d'installation supprime les partitions existantes sur /dev/sda et en crée de nouvelles recommandations des développeurs (il est pratique de les visualiser après l'installation à l'aide de la commande lsblk). Le nom d'hôte est défini comme kvm01.lab.example.com (après l'installation, vous pouvez le modifier avec la commande hostnamectl set-hostname kvm03.lab.example.com), l'adresse IP est obtenue automatiquement, le fuseau horaire est Moscou, La prise en charge de la langue russe a été ajoutée.
Mot de passe de l'utilisateur root : monteV1DE0, mot de passe de l'utilisateur de gestion : metroP0!is. Attention! Les partitions existantes sont supprimées automatiquement ! Sois prudent!
Nous répétons (ou exécutons en parallèle) sur tous les hôtes. De la mise sous tension d'un serveur « vide » à un état prêt, en tenant compte de 2 longs téléchargements, cela prend environ 20 minutes.
Ajout d'un nœud à oVirt
C'est très simple:
Calcul → Hôtes → Nouveau →…
Les champs obligatoires dans l'assistant sont Nom (nom d'affichage, par exemple kvm03), Nom d'hôte (FQDN, par exemple kvm03.lab.example.com) et section Authentification - utilisateur root (immuable) — mot de passe ou clé publique SSH.
Après avoir cliqué sur le bouton Ok Vous recevrez un message "Vous n'avez pas configuré la gestion de l'alimentation pour cet hôte. Es-tu sur de vouloir continuer?". C'est normal - nous examinerons la gestion de l'alimentation plus tard, une fois que l'hôte aura été connecté avec succès. Cependant, si les machines sur lesquelles les hôtes sont installés ne prennent pas en charge la gestion (IPMI, iLO, DRAC, etc.), je recommande de la désactiver : Calcul → Clusters → Par défaut → Modifier → Fencing Ploicy → Activer le fencing, décochez la case.
Si le référentiel oVirt n'était pas connecté à l'hôte, l'installation échouera, mais ce n'est pas grave - vous devez l'ajouter, puis cliquer sur Installer -> Réinstaller.
La connexion de l'hôte ne prend pas plus de 5 à 10 minutes.
Configuration de l'interface réseau
Puisque nous construisons un système tolérant aux pannes, la connexion réseau doit également fournir une connexion redondante, ce qui se fait dans l'onglet Calcul → Hôtes → HÔTE → Interfaces réseau - Configurer les réseaux hôtes.
En fonction des capacités de votre équipement réseau et des approches architecturales, des options sont possibles. Il est préférable de se connecter à une pile de commutateurs haut de rack afin qu'en cas de panne de l'un d'entre eux, la disponibilité du réseau ne soit pas interrompue. Regardons l'exemple d'un canal LACP agrégé. Pour configurer un canal agrégé, « prenez » le 2ème adaptateur inutilisé avec la souris et « amenez-le » sur le 1er. Une fenêtre s'ouvrira Créer un nouveau lien, où LACP (Mode 4, Agrégation de liens dynamiques, 802.3ad) est sélectionné par défaut. Du côté du commutateur, la configuration habituelle du groupe LACP est effectuée. S'il n'est pas possible de créer une pile de commutateurs, vous pouvez utiliser le mode Active-Backup (Mode 1). Nous examinerons les paramètres VLAN dans le prochain article, et nous entrerons plus en détail avec les recommandations pour la configuration d'un réseau dans le document Guide de planification et de conditions préalables.
Configuration FC
Fibre Channel (FC) est pris en charge dès le départ et est facile à utiliser. Nous ne mettrons pas en place de réseau de stockage, y compris la configuration de systèmes de stockage et de commutateurs de structure de zonage dans le cadre de la configuration d'oVirt.
Configuration de FCoE
FCoE, à mon avis, n'est pas répandu dans les réseaux de stockage, mais est souvent utilisé sur les serveurs comme « dernier kilomètre », par exemple dans HPE Virtual Connect.
La configuration de FCoE nécessite des étapes simples supplémentaires.
Comme indiqué précédemment, si le matériel DCB/DCBX est utilisé, le paramètre DCB_REQUIRED doit être activé dans aucune et cette étape peut être ignorée.
$ sudo dcbtool sc ens3f2 dcb on
$ sudo dcbtool sc ens3f3 dcb on
$ sudo dcbtool sc ens3f2 app:fcoe e:1
$ sudo dcbtool sc ens3f3 app:fcoe e:1
$ sudo ip link set dev ens3f2 up
$ sudo ip link set dev ens3f3 up
$ sudo systemctl start fcoe
$ sudo systemctl enable fcoe
Pour les interfaces réseau, vérifiez si le démarrage automatique est activé :
$ sudo vim /etc/sysconfig/network-scripts/ifcfg-ens3f2
$ sudo vim /etc/sysconfig/network-scripts/ifcfg-ens3f3
ONBOOT=yes
Affichez les interfaces FCoE configurées, la sortie de la commande ne doit pas être vide.
$ sudo fcoeadm -i
La configuration ultérieure de FCoE est effectuée comme pour un FC standard.
Vient ensuite la configuration des systèmes et réseaux de stockage - zonage, hôtes SAN, création et présentation des volumes/LUN, après quoi le stockage peut être connecté aux hôtes ovirt : Stockage → Domaines → Nouveau domaine.
Laissez la fonction de domaine sur Données, le type de stockage sur Fibre Channel, l'hôte sur n'importe quel nom, par exemple storNN-volMM.
Votre système de stockage permet sûrement la connexion non seulement pour la réservation de chemin, mais également pour l'équilibrage. De nombreux systèmes modernes sont capables de transmettre des données de manière optimale sur tous les chemins (ALUA actif/actif).
Pour activer tous les chemins à l'état actif, vous devez configurer le multipasing, plus d'informations à ce sujet dans les articles suivants.
La configuration de NFS et iSCSI se fait de la même manière.
Stockage d'images ISO
Pour installer l'OS, vous aurez besoin de leurs fichiers d'installation, le plus souvent disponibles sous forme d'images ISO. Vous pouvez utiliser le chemin intégré, mais pour travailler avec des images dans oVirt, un type spécial de stockage a été développé - ISO, qui peut être destiné à un serveur NFS. Ajoutez-le :
Stockage → Domaines → Nouveau domaine,
Fonction de domaine → ISO,
Chemin d'exportation - par exemple mynfs01.example.com:/exports/ovirt-iso (au moment de la connexion, le dossier doit être vide, le gestionnaire doit pouvoir y écrire),
Nom - par exemple mynfs01-iso.
Le gestionnaire créera une structure pour stocker les images
/exports/ovirt-iso/<some UUID>/images/11111111-1111-1111-1111-111111111111/
S'il existe déjà des images ISO sur notre serveur NFS, pour gagner de la place, il est pratique de les lier à ce dossier au lieu de copier des fichiers.
Première VM
A ce stade, vous pouvez déjà créer la première machine virtuelle, y installer le système d'exploitation et le logiciel d'application.
Calcul → Machines virtuelles → Nouveau
Pour la nouvelle machine, spécifiez un nom (Nom), créez un disque (Images d'instance → Créer) et connectez une interface réseau (Instancier les interfaces réseau de la VM en choisissant un profil vNIC → sélectionnez le seul ovirtmgmt dans la liste pour l'instant).
Côté client, vous avez besoin d'un navigateur moderne et Client ÉPICES pour interagir avec la console.
La première machine a été lancée avec succès. Cependant, pour un fonctionnement plus complet du système, un certain nombre de réglages supplémentaires sont nécessaires, que nous continuerons dans les articles suivants.