Aujourd'hui, nous allons expliquer comment déployer rapidement et facilement plusieurs serveurs virtuels avec différents systèmes d'exploitation sur un seul serveur physique. Cela permettra à tout administrateur système de gérer de manière centralisée l'ensemble de l'infrastructure informatique de l'entreprise et d'économiser une énorme quantité de ressources. Le recours à la virtualisation permet de s'abstraire autant que possible du matériel physique du serveur, de protéger les services critiques et de restaurer facilement leur fonctionnement même en cas de pannes très graves.
Sans aucun doute, la plupart des administrateurs système connaissent les techniques de travail avec un environnement virtuel et pour eux cet article ne sera pas une découverte. Malgré cela, certaines entreprises ne profitent pas de la flexibilité et de la rapidité des solutions virtuelles en raison d’un manque d’informations précises à leur sujet. Nous espérons que notre article vous aidera à comprendre par exemple qu'il est beaucoup plus facile de commencer à utiliser la virtualisation une fois que de subir les inconvénients et les lacunes de l'infrastructure physique.
Heureusement, il est assez simple d'essayer le fonctionnement de la virtualisation. Nous montrerons comment créer un serveur dans un environnement virtuel, par exemple pour transférer un système CRM utilisé dans une entreprise. Presque n'importe quel serveur physique peut être transformé en serveur virtuel, mais vous devez d'abord maîtriser les techniques d'exploitation de base. Ceci sera discuté ci-dessous.
Comment ça marche
Lorsqu’il s’agit de virtualisation, de nombreux spécialistes novices ont du mal à comprendre la terminologie, expliquons donc quelques concepts de base :
- Hyperviseur – un logiciel spécial qui vous permet de créer et de gérer des machines virtuelles ;
- Machine virtuelle (ci-après dénommé VM) est un système qui est un serveur logique à l'intérieur d'un serveur physique avec son propre ensemble de caractéristiques, de lecteurs et de système d'exploitation ;
- Hôte de virtualisation — un serveur physique sur lequel s'exécute un hyperviseur.
Pour qu'un serveur fonctionne comme un hôte de virtualisation à part entière, son processeur doit prendre en charge l'une des deux technologies suivantes : Intel® VT ou AMD-V™. Les deux technologies effectuent la tâche la plus importante consistant à fournir des ressources matérielles de serveur aux machines virtuelles.
La caractéristique clé est que toutes les actions des machines virtuelles sont effectuées directement au niveau matériel. En même temps, ils sont isolés les uns des autres, ce qui permet de les contrôler assez facilement séparément. L'hyperviseur lui-même joue le rôle d'une autorité de tutelle, répartissant entre eux les ressources, les rôles et les priorités. L'hyperviseur émule également la partie du matériel nécessaire au bon fonctionnement du système d'exploitation.
L'introduction de la virtualisation permet d'avoir plusieurs copies en cours d'exécution d'un même serveur. Un échec ou une erreur critique lors du processus de modification d'une telle copie n'affectera en aucun cas le fonctionnement du service ou de l'application actuel. Cela élimine également deux problèmes principaux : la mise à l'échelle et la possibilité de conserver un « zoo » de différents systèmes d'exploitation sur le même matériel. C'est l'occasion idéale de combiner une variété de services sans avoir besoin d'acheter des équipements séparés pour chacun d'eux.
La virtualisation améliore la tolérance aux pannes des services et des applications déployées. Même si le serveur physique tombe en panne et doit être remplacé par un autre, l'ensemble de l'infrastructure virtuelle restera pleinement opérationnelle, à condition que les supports disques soient intacts. Dans ce cas, le serveur physique peut provenir d’un fabricant complètement différent. Cela est particulièrement vrai pour les entreprises qui utilisent des serveurs qui ont été abandonnés et qui devront migrer vers d'autres modèles.
Nous listons maintenant les hyperviseurs les plus populaires qui existent aujourd'hui :
- VMware ESXi
- Microsoft Hyper-V
- KVM de l'Alliance de virtualisation ouverte
- Oracle VM VirtualBox
Ils sont tous assez universels, cependant, chacun d'eux présente certaines caractéristiques qui doivent toujours être prises en compte lors de la phase de sélection : le coût de déploiement/maintenance et les caractéristiques techniques. Le coût des licences commerciales pour VMware et Hyper-V est très élevé, et en cas de panne, il est très difficile de résoudre seul le problème de ces systèmes.
KVM, en revanche, est entièrement gratuit et assez simple à utiliser, notamment dans le cadre d'une solution prête à l'emploi basée sur Debian Linux appelée Proxmox Virtual Environment. Nous pouvons recommander ce système pour une première connaissance du monde de l'infrastructure virtuelle.
Comment déployer rapidement l'hyperviseur Proxmox VE
L'installation ne soulève le plus souvent aucune question. Téléchargez la version actuelle de l'image
Le programme d'installation dispose d'une interface graphique et ne posera que quelques questions.
- Sélectionnez le disque sur lequel l'installation sera effectuée. Au chapitre Options Vous pouvez également spécifier des options de balisage supplémentaires.
- Spécifiez les paramètres régionaux.
- Spécifiez le mot de passe qui sera utilisé pour autoriser le superutilisateur root et l'adresse e-mail de l'administrateur.
- Spécifiez les paramètres réseau. FQDN signifie nom de domaine pleinement qualifié, par ex. node01.votreentreprise.com.
- Une fois l'installation terminée, le serveur peut être redémarré à l'aide du bouton Reboot.
L'interface de gestion Web sera disponible surhttps://IP_адрес_сервера:8006
Que faire après l'installation
Il y a quelques choses importantes que vous devez faire après avoir installé Proxmox. Parlons de chacun d'eux plus en détail.
Mettre à jour le système vers la dernière version
Pour ce faire, allons sur la console de notre serveur et désactivons le référentiel payant (disponible uniquement pour ceux qui ont acheté un support payant). Si vous ne le faites pas, apt signalera une erreur lors de la mise à jour des sources du package.
- Ouvrez la console et modifiez le fichier de configuration apt :
nano /etc/apt/sources.list.d/pve-enterprise.list
- Il n'y aura qu'une seule ligne dans ce fichier. Nous mettons un symbole devant #pour désactiver la réception des mises à jour d'un référentiel payant :
#deb https://enterprise.proxmox.com/debian/pve stretch pve-enterprise
- Raccourci clavier Ctrl + X quittez l'éditeur en répondant Y lorsque le système lui demande de sauvegarder le fichier.
- Nous exécutons la commande pour mettre à jour les sources du package et mettre à jour le système :
apt update && apt -y upgrade
Veiller à la sécurité
Nous pouvons vous recommander d'installer l'utilitaire le plus populaire Fail2Ban, qui protège contre les attaques par mot de passe (force brute). Le principe de son fonctionnement est que si un attaquant dépasse un certain nombre de tentatives de connexion dans un délai imparti avec un login/mot de passe incorrect, alors son adresse IP sera bloquée. La période de blocage et le nombre de tentatives peuvent être précisés dans le fichier de configuration.
D'après l'expérience pratique, au cours d'une semaine d'exécution d'un serveur avec un port SSH ouvert 22 et une adresse IPv4 statique externe, il y a eu plus de 5000 1500 tentatives pour deviner le mot de passe. Et l’utilitaire a réussi à bloquer environ XNUMX XNUMX adresses.
Pour terminer l'installation, voici quelques instructions :
- Ouvrez la console du serveur via l'interface Web ou SSH.
- Sources du package de mise à jour :
apt update
- Installez Fail2Ban :
apt install fail2ban
- Ouvrez la configuration de l'utilitaire pour la modifier :
nano /etc/fail2ban/jail.conf
- Modification des variables l'heure du ban (le nombre de secondes pendant lesquelles l'attaquant sera bloqué) et essai max (nombre de tentatives de connexion/mot de passe) pour chaque service individuel.
- Raccourci clavier Ctrl + X quittez l'éditeur en répondant Y lorsque le système lui demande de sauvegarder le fichier.
- Redémarrez le service :
systemctl restart fail2ban
Vous pouvez vérifier l'état de l'utilitaire, par exemple, supprimer les statistiques de blocage des adresses IP bloquées à partir desquelles il y a eu des tentatives de force brute des mots de passe SSH, avec une simple commande :
fail2ban-client -v status sshd
La réponse de l'utilitaire ressemblera à ceci :
root@hypervisor:~# fail2ban-client -v status sshd
INFO Loading configs for fail2ban under /etc/fail2ban
INFO Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO Using socket file /var/run/fail2ban/fail2ban.sock
Status for the jail: sshd
|- Filter
| |- Currently failed: 3
| |- Total failed: 4249
| `- File list: /var/log/auth.log
`- Actions
|- Currently banned: 0
|- Total banned: 410
`- Banned IP list:
De la même manière, vous pouvez protéger l'interface Web de telles attaques en créant une règle appropriée. Un exemple d'une telle règle pour Fail2Ban peut être trouvé dans
Mise en route
Je voudrais attirer votre attention sur le fait que Proxmox est prêt à créer de nouvelles machines immédiatement après l'installation. Cependant, nous vous recommandons d'effectuer les réglages préliminaires afin que le système puisse être facilement géré à l'avenir. La pratique montre que l'hyperviseur et les machines virtuelles doivent être répartis sur différents supports physiques. Comment procéder sera discuté ci-dessous.
Configurer les lecteurs de disque
L'étape suivante consiste à configurer le stockage pouvant être utilisé pour enregistrer les données et les sauvegardes de la machine virtuelle.
ATTENTION! L'exemple de disposition de disque ci-dessous peut être utilisé uniquement à des fins de test. Pour une utilisation réelle, nous vous recommandons fortement d'utiliser une matrice RAID logicielle ou matérielle pour éviter la perte de données en cas de panne de disque. Nous vous expliquerons comment préparer correctement une baie de disques au fonctionnement et que faire en cas d'urgence dans l'un des articles suivants.
Supposons que le serveur physique dispose de deux disques - / Dev / sda, sur lequel l'hyperviseur est installé et un disque vide / Dev / sdb, qui devrait être utilisé pour stocker les données des machines virtuelles. Pour que le système voie le nouveau stockage, vous pouvez utiliser la méthode la plus simple et la plus efficace : connectez-le en tant que répertoire normal. Mais avant cela, vous devez effectuer quelques étapes préparatoires. A titre d'exemple, voyons comment connecter un nouveau lecteur / Dev / sdb, n'importe quelle taille, en le formatant dans un système de fichiers ext4.
- Nous partitionnons le disque en créant une nouvelle partition :
fdisk /dev/sdb
- Appuyez sur la touche o ou g (partitionner le disque en MBR ou GPT).
- Appuyez ensuite sur la touche n (créer une nouvelle rubrique).
- Et enfin w (pour enregistrer les modifications).
- Créez un système de fichiers ext4 :
mkfs.ext4 /dev/sdb1
- Créez un répertoire dans lequel nous monterons la partition :
mkdir /mnt/storage
- Ouvrez le fichier de configuration pour le modifier :
nano /etc/fstab
- Ajoutez-y une nouvelle ligne :
/dev/sdb1 /mnt/storage ext4 defaults 0 0
- Après avoir apporté des modifications, enregistrez-les avec un raccourci clavier Ctrl + X, répondant Y à la question de l'éditeur.
- Pour vérifier que tout fonctionne, nous envoyons le serveur redémarrer :
shutdown -r now
- Après le redémarrage, vérifiez les partitions montées :
df -H
Le résultat de la commande devrait montrer que / dev / sdb1 monté dans le répertoire /mois/stockage. Cela signifie que notre lecteur est prêt à être utilisé.
Ajouter un nouveau référentiel dans Proxmox
Connectez-vous au panneau de contrôle et accédez aux sections Centre de données ➝ Stockage ➝ ajouter ➝ Annuaire.
Dans la fenêtre qui s'ouvre, remplissez les champs suivants :
- ID — le nom du futur entrepôt;
- Annuaire - /mnt/stockage ;
- teneur — sélectionnez toutes les options (en cliquant tour à tour sur chaque option).
Après cela, appuyez sur le bouton ajouter. Ceci termine la configuration.
Créer une machine virtuelle
Pour créer une machine virtuelle, effectuez la séquence d'actions suivante :
- Nous décidons de la version du système d'exploitation.
- Téléchargez l'image ISO à l'avance.
- Choisissez dans le menu Stockage le référentiel nouvellement créé.
- Cliquez ici teneur ➝ Télécharger.
- Sélectionnez une image ISO dans la liste et confirmez la sélection en appuyant sur le bouton Télécharger.
Une fois l'opération terminée, l'image sera affichée dans la liste des images disponibles.
Créons notre première machine virtuelle :
- Cliquez ici Créer une VM.
- Remplissez les paramètres un à un : Prénom ➝ Image ISO ➝ Taille et type de disque dur ➝ Nombre de processeurs ➝ Taille de la RAM ➝ етевой адаптер.
- Après avoir sélectionné tous les paramètres souhaités, cliquez sur Complète. La machine créée sera affichée dans le menu du panneau de commande.
- Sélectionnez-le et cliquez Запуск.
- Aller au point Console et installez le système d'exploitation exactement de la même manière que sur un serveur physique classique.
Si vous devez créer une autre machine, répétez les opérations ci-dessus. Une fois qu'ils sont tous prêts, vous pouvez travailler avec eux simultanément en ouvrant plusieurs fenêtres de console.
Configurer l'exécution automatique
Par défaut, Proxmox ne démarre pas automatiquement les machines, mais cela peut être facilement résolu en seulement deux clics :
- Cliquez sur le nom de la machine souhaitée.
- Sélection d'un onglet Options de ➝ Commencer au démarrage.
- On met une coche à côté de l'inscription du même nom.
Désormais, si le serveur physique est redémarré, la VM démarrera automatiquement.
Pour les administrateurs avancés, il est également possible de spécifier des paramètres de lancement supplémentaires dans la section Ordre de démarrage/arrêt. Vous pouvez spécifier explicitement dans quel ordre les machines doivent être démarrées. Vous pouvez également préciser le temps qui doit s'écouler avant le démarrage de la prochaine VM et le délai d'arrêt (si le système d'exploitation n'a pas le temps de s'arrêter, l'hyperviseur le forcera à s'arrêter après un certain nombre de secondes).
Conclusion
Cet article a décrit les bases pour démarrer avec Proxmox VE et nous espérons qu'il aidera les débutants à faire le premier pas et à essayer la virtualisation en action.
Proxmox VE est véritablement un outil très puissant et pratique pour tout administrateur système ; L’essentiel est de ne pas avoir peur d’expérimenter et de comprendre comment cela fonctionne réellement.
Si vous avez des questions, bienvenue dans les commentaires.
Source: habr.com