oVirt en 2 heures. Partie 1. Plateforme de virtualisation de basculement ouverte

introduction


Projet open source oVirt est une plate-forme de virtualisation gratuite au niveau de l'entreprise. En parcourant habr, il a constaté que oVirt n'est pas couvert aussi largement qu'il le mérite.
oVirt est en fait un amont pour le système commercial de virtualisation de Red Hat (RHV, anciennement RHEV), qui se développe sous l'aile de Red Hat. Pour éviter toute confusion, ce n'est pas la même chose que CentOS vs RHEL, le modèle est plus proche de Fedora vs RHEL.
Sous le capot - KVM , l'interface Web est utilisée pour le contrôle. Il est basé sur OS RHEL / CentOS 7.
oVirt peut être utilisé à la fois pour la virtualisation de serveurs et de postes de travail (VDI), contrairement à VMware, les deux systèmes peuvent coexister en un seul complexe.
Bien projeterIl est documenté , a longtemps atteint sa maturité pour une utilisation productive et est prêt pour des charges élevées.
Cet article est le premier d'une série sur la création d'un cluster de basculement fonctionnel. Après les avoir passés en revue, nous obtiendrons un système pleinement opérationnel en peu de temps (environ 2 heures), bien qu'un certain nombre de problèmes, bien sûr, ne puissent pas être résolus, je vais essayer de les couvrir dans les articles suivants.
Nous l'utilisons depuis plusieurs années, nous avons commencé avec la version 4.1. Notre système industriel vit désormais sur la 10e génération HPE Synergy 480 et ProLiant BL460c avec CPU Xeon Gold.
Au moment de la rédaction, la version actuelle est 4.3.

Des articles


  1. Introduction - Nous sommes ici
  2. Installation du gestionnaire (ovirt-engine) et des hyperviseurs (hĂ´tes)
  3. Paramètres additionnels
  4. Opérations de base


Caractéristiques fonctionnelles


Il y a 2 entités principales dans oVirt: ovirt-engine et ovirt-host (s). Pour ceux qui connaissent les produits VMware, oVirt dans son ensemble est vSphere, ovirt-engine - la couche de contrôle - remplit les mêmes fonctions que vCenter, et ovirt-host est un hyperviseur comme ESX (i). Parce que vSphere est une solution très populaire, parfois je vais faire une comparaison avec elle.
Tableau de bord oVirt
Figure. 1 - Panneau de contrĂ´le oVirt.

En tant qu'ordinateurs invités, la plupart des distributions Linux et des versions de Windows sont prises en charge. Pour les machines invitées, il existe des agents, des périphériques virtuels optimisés et des pilotes virtio, principalement un contrôleur de disque et une interface réseau.
Pour implémenter une solution tolérante aux pannes et toutes les fonctionnalités intéressantes, vous aurez besoin d'un stockage partagé. Les stockages de blocs FC, FCoE, iSCSI et NFS de fichiers, etc. sont pris en charge. Pour implémenter une solution tolérante aux pannes, le système de stockage doit également être tolérant aux pannes (au moins 2 contrôleurs, multipassing).
L'utilisation de stockages locaux est possible, mais par défaut, seuls les stockages partagés conviennent à un cluster réel. Les stockages locaux font du système un ensemble disparate d'hyperviseurs, et même s'il existe un stockage partagé, le cluster ne peut pas être assemblé. La façon la plus correcte est d'utiliser des machines sans disque avec démarrage à partir du SAN ou des disques de taille minimale. Il est possible que grâce au hook vdsm, il soit possible de construire à partir de disques de stockage défini par logiciel locaux (par exemple Ceph) et de présenter sa machine virtuelle, mais je n'y ai pas sérieusement pensé.

Architecture


cambre
Figure. 2 - Architecture oVirt.
Pour plus d'informations sur l'architecture, consultez la documentation du développeur.

dc
Figure. 3 - Objets oVirt.

L'élément supérieur de la hiérarchie est le centre de données . Il détermine si le stockage partagé ou local est utilisé, ainsi que l'ensemble des fonctions utilisées (compatibilité, de 4.1 à 4.3). Peut être un ou plusieurs. Pour de nombreuses options, l'utilisation du centre de données par défaut est Par défaut.
Le centre de données comprend un ou plusieurs clusters . Le cluster détermine le type de processeur, les politiques de migration, etc. Pour les petites installations, vous pouvez également vous limiter au cluster par défaut.
Le cluster, à son tour, se compose de l' hôtefait le travail principal - ils transportent des machines virtuelles, des stockages y sont connectés. Un cluster suppose 2 hôtes ou plus. Bien qu'il soit techniquement possible de faire un cluster avec un 1er hôte, mais cela n'est d'aucune utilité pratique.

OVirt prend en charge de nombreuses fonctions, notamment migration en direct de machines virtuelles entre hyperviseurs (migration en direct) et stockage (migration de stockage), virtualisation de bureau (infrastructure de bureau virtuel) avec pools de machines virtuelles, machines virtuelles sans état et sans état, prise en charge de NVidia Grid vGPU, importation depuis vSphere, KVM, il existe une API puissante et bien plus encore . Toutes ces fonctionnalités sont disponibles sans redevances et, si nécessaire, une assistance peut être obtenue auprès de Red Hat via des partenaires régionaux.

Ă€ propos des prix RHV


Le coût n'est pas élevé par rapport à VMware, seul le support est acheté - sans nécessiter l'achat de la licence elle-même. Le support est acheté uniquement sur les hyperviseurs; le moteur ovirt, contrairement à vCenter Server, ne nécessite pas de dépenses.

Exemple de calcul pour la 1ère année de possession


Considérez un groupe de 4 machines à 2 connecteurs et les prix de détail (sans rabais sur le projet).
Un abonnement RHV standard coûte 999 $ par socket / an (premium 365/24/7 - 1499 $), total 4 * 2 * 999 $ = 7992 $ .
Prix ​​VSphere :
  • VMware vCenter Server Standard 10 837,13 $ par instance, plus un abonnement de base 2 625,41 $ (Production - 3 125,39 $);
  • VMware vSphere Standard 1 164,15 $ + abonnement de base 552,61 $ (production 653,82 $);
  • VMware vSphere Enterprise Plus 6 309,23 $ + abonnement de base 1 261,09 $ (production 1 499,94 $).

Total: 10 837,13 + 2 625,41 + 4 * 2 * (1 164,15 + 552,61) = 27 196,62 $ pour l'option la plus jeune. La différence est d'environ 3,5 fois!
Dans oVirt, toutes les fonctions sont disponibles sans restrictions.

Brève spécifications et sommets


Configuration requise


L'hyperviseur nécessite un processeur avec virtualisation matérielle activée, la quantité minimale de RAM pour démarrer est de 2 Gio, la capacité de stockage recommandée pour le système d'exploitation est de 55 Gio (pour la plupart pour les magazines, etc., le système d'exploitation lui-même est petit).
Plus de détails ici .
Pour Engine, les exigences minimales sont de 2 cœurs / 4 Gio de RAM / 25 Gio de stockage. Recommandé - à partir de 4 cœurs / 16 Gio de RAM / 50 Gio de stockage.
Comme pour tout système, il existe des restrictions sur les volumes et les quantités, dont la plupart dépassent les capacités des serveurs commerciaux de masse disponibles. Ainsi, une paire d' Intel Xeon Gold 6230 peut traiter 2 To de RAM et donne 40 cœurs (80 threads), ce qui est même moins que les limites d'une machine virtuelle.

Maximums de machines virtuelles:


  • Nombre maximal de machines virtuelles exĂ©cutĂ©es simultanĂ©ment: illimitĂ©;
  • CPU virtuels maximum par machine virtuelle: 384;
  • MĂ©moire maximale par machine virtuelle: 4 TiB;
  • Taille maximale d'un seul disque par machine virtuelle: 8 TiB.

Maximum d'hĂ´te:


  • CĹ“urs ou threads logiques d'UC: 768;
  • RAM: 12 TiB;
  • Nombre de machines virtuelles hĂ©bergĂ©es: 250;
  • Migrations simultanĂ©es en direct: 2 entrantes, 2 sortantes;
  • Bande passante de migration en direct: par dĂ©faut, 52 Mio (~ 436 Mo) par migration lors de l'utilisation de la stratĂ©gie de migration hĂ©ritĂ©e. D'autres stratĂ©gies utilisent des valeurs de dĂ©bit adaptatif en fonction de la vitesse du pĂ©riphĂ©rique physique. Les politiques de QoS peuvent limiter la bande passante de migration.

Maximum d'entités logiques du gestionnaire:


Dans 4.3, les limites suivantes existent .
  • Centre de donnĂ©es
    • Nombre maximal de centres de donnĂ©es: 400;
    • Nombre d'hĂ´tes maximum: 400 pris en charge, 500 testĂ©s;
    • Nombre maximal de VM: 4000 prises en charge, 5000 testĂ©es;
  • Grappe
    • Nombre maximal de clusters: 400;
    • Nombre d'hĂ´tes maximum: 400 pris en charge, 500 testĂ©s;
    • Nombre maximal de VM: 4000 prises en charge, 5000 testĂ©es;
  • RĂ©seau
    • RĂ©seaux logiques / cluster: 300;
    • SDN/external networks: 2600 tested, no enforced limit;
  • Storage
    • Maximum domains: 50 supported, 70 tested;
    • Hosts per domain: No limit;
    • Logical volumes per block domain (more): 1500;
    • Maximum number of LUNs (more): 300;
    • Maximum disk size: 500 TiB (limited to 8 TiB by default).



Comme déjà mentionné, oVirt est construit à partir de 2 éléments de base - ovirt-engine (contrôle) et ovirt-host (hyperviseur).
Le moteur peut être situé à la fois à l'extérieur de la plate-forme elle-même (gestionnaire autonome - il peut s'agir d'une machine virtuelle exécutée sur une autre plate-forme ou d'un hyperviseur séparé et même d'une machine physique), et sur la plate-forme elle-même (moteur auto-hébergé, similaire à l'approche VCSA de VMware).
L'hyperviseur peut être installé à la fois sur un système d'exploitation ordinaire RHEL / CentOS 7 (hôte EL) et sur un système d'exploitation minimal spécialisé (oVirt-Node, basé sur el7).
La configuration matérielle requise pour toutes les options est approximativement la même.
Architecture standard
Figure. 4 - architecture standard.

Architecture de moteur auto-hébergée
Figure. 5 - Architecture du moteur auto-hébergée.

Pour ma part, j'ai choisi l'option Manager autonome et EL Hosts:
  • Le gestionnaire autonome est un peu plus facile avec les problèmes de dĂ©marrage, il n'y a pas de dilemme de poulet et d'oeuf (comme pour VCSA, vous ne l'exĂ©cuterez pas avant qu'au moins un hĂ´te ne soit complètement opĂ©rationnel), mais il y a une dĂ©pendance Ă  un autre système * ;
  • EL Host fournit toute la puissance du système d'exploitation, ce qui est utile pour la surveillance externe, le dĂ©bogage, le dĂ©pannage, etc.

* Cependant, sur toute la période de fonctionnement, cela n'était pas nécessaire, même après un grave accident de courant.
Mais plus près du but!
Pour l'expérience, il est possible de libérer une paire de lames ProLiant BL460c G7 avec le CPU Xeon®. Nous reproduirons le processus d'installation sur eux.
Les nœuds seront nommés ovirt.lab.example.com, kvm01.lab.example.com et kvm02.lab.example.com.
Nous procédons directement à l' installation .

All Articles