Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes | ||
fr:xen [2018/08/08 20:51] – [Si ça ne marche pas] /* ortho + meilleure commande pour lister les entrées grub */ merlin8282 | fr:xen [2020/02/20 11:48] – Ajout d'un renvoi vers le détail d'une résolution de bug zatalyz | ||
---|---|---|---|
Ligne 40: | Ligne 40: | ||
Installer les divers outils dont on va avoir besoin : | Installer les divers outils dont on va avoir besoin : | ||
apt update | apt update | ||
- | apt install xen-linux-system-amd64 xen-tools qemu-system-x86 | + | apt install |
+ | avant buster : xen-linux-system-amd64 | ||
==== Booter sur le bon noyau : configuration de GRUB ==== | ==== Booter sur le bon noyau : configuration de GRUB ==== | ||
+ | Avec Stretch sur online.net, je n'ai pas eu besoin de changer manuellement le noyau | ||
+ | | ||
- | Il faut ensuite [[https:// | + | Sinon il faut ensuite [[https:// |
dpkg-divert --divert / | dpkg-divert --divert / | ||
# La ligne ci-dessous ne concerne que les machines chez OVH. | # La ligne ci-dessous ne concerne que les machines chez OVH. | ||
Ligne 56: | Ligne 58: | ||
Name ID Mem VCPUs State Time(s) | Name ID Mem VCPUs State Time(s) | ||
Domain-0 | Domain-0 | ||
- | |||
- | |||
</ | </ | ||
+ | Si ça fonctionne passez au 1.3 . | ||
=== Si ça ne marche pas === | === Si ça ne marche pas === | ||
Ligne 91: | Ligne 92: | ||
</ | </ | ||
- | === Bug et impossibilité de redémarrer === | + | == Xen override grub == |
+ | Vérifiez dans le fichier ''/ | ||
- | <WRAP center round important 100%> | + | if [ " |
- | Nous avons rencontré un bug lors de la dernière mise à jour de Xen. La machine refusait de redémarrer. Voici la résolution, si un problème similaire se représente. | + | GRUB_DEFAULT=" |
- | </ | + | fi |
- | Après avoir redémarré en rescue((Suivant votre hébergement, | + | Exécutez |
- | Puis réinstaller la version précédente de Xen (TODO : Merlin, Shepeng, comment | + | == Forcer le boot d'un noyau == |
- | apt-mark hold xen-hypervisor-4.8-amd64 | + | Il se peut aussi que l' |
+ | awk -F\' '/ | ||
- | Ensuite, il faut tester | + | Remarquez |
- | grub-reboot ' | + | |
- | Si ça marche, changer | + | grep -Eoe " |
- | | + | |
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 10 menuentry ' | ||
+ | 11 menuentry ' | ||
+ | 12 menuentry ' | ||
+ | 13 submenu ' | ||
+ | 14 menuentry ' | ||
+ | 15 menuentry ' | ||
+ | 16 menuentry ' | ||
+ | 17 menuentry ' | ||
+ | |||
+ | On peut obliger | ||
+ | |||
+ | | ||
+ | |||
+ | Alors c'est comme un chemin, sauf que c'est séparé par des ''>'' | ||
+ | |||
+ | Ou avec le nom exact, selon l' | ||
+ | |||
+ | grub-set-default | ||
+ | |||
+ | == locales == | ||
+ | |||
+ | Grub a besoin que la locale par défaut soit anglaise. Suite à un problème de boot on a mis la locale '' | ||
+ | |||
+ | |||
+ | === Bug et impossibilité de redémarrer === | ||
+ | |||
+ | <WRAP center round important 100%> | ||
+ | Nous avons rencontré un bug lors de la dernière mise à jour de Xen. La machine refusait de redémarrer. La source du problème était la langue (" | ||
+ | </ | ||
- | Et ça devrait marcher. À noter que la syntaxe peut aussi la version chiffrée, mais ça risque de se décaler lors de la mise à jour du noyau... | ||
- | GRUB_DEFAULT=' | ||
==== Configuration du réseau ==== | ==== Configuration du réseau ==== | ||
Ligne 120: | Ligne 159: | ||
sysctl -p / | sysctl -p / | ||
- | Ensuite, modifiez iptables : | + | Trouvez quelle est votre interface ethernet (probablement quelque chose comme enp1s0, ou eth0) : |
+ | ip a | ||
+ | |||
+ | Ensuite, modifiez iptables. Si c'est '' | ||
- | iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE | + | iptables -t nat -A POSTROUTING -o enp1s0 |
<WRAP center round warning 60%> | <WRAP center round warning 60%> | ||
Ligne 129: | Ligne 171: | ||
Sauvegarde des règles : | Sauvegarde des règles : | ||
- | | + | |
- | iptables-save > / | + | iptables-save > / |
- | Pour exécuter les règles au démarrage du serveur, éditez le fichier ''/ | + | Pour exécuter les règles au démarrage du serveur, éditez le fichier ''/ |
< | < | ||
- | auto eth0 | + | auto enp1s0 |
- | iface eth0 inet static | + | iface enp1s0 |
address 91.121.136.163 | address 91.121.136.163 | ||
netmask 255.255.255.0 | netmask 255.255.255.0 | ||
Ligne 265: | Ligne 307: | ||
</ | </ | ||
+ | NB : pour savoir ce qui reste comme espace de libre : | ||
+ | pvscan | ||
==== Lancer/se connecter aux VM ==== | ==== Lancer/se connecter aux VM ==== | ||
Ligne 290: | Ligne 334: | ||
xl console myvm | xl console myvm | ||
Puis retour à la ligne pour entrer dans le terminal (sinon, la commande reste affichée sans rien d' | Puis retour à la ligne pour entrer dans le terminal (sinon, la commande reste affichée sans rien d' | ||
+ | |||
+ | Pour sortir de la VM, depuis l’hôte : | ||
+ | crlt + ( ou 5 | ||
Pour éteindre une VM, depuis l' | Pour éteindre une VM, depuis l' | ||
Ligne 339: | Ligne 386: | ||
Penser à sauvegarder les règles pour le redémarrage ! | Penser à sauvegarder les règles pour le redémarrage ! | ||
- | iptables-save > / | + | iptables-save > / |
Pensez aussi, si ce n'est pas déjà fait, à bien configurer fail2ban sur l' | Pensez aussi, si ce n'est pas déjà fait, à bien configurer fail2ban sur l' | ||
+ | |||
+ | <WRAP center round tip 90%> | ||
+ | Je mets ici un exemple de config iptable | ||
+ | </ | ||
+ | |||
+ | <code bash> | ||
+ | #!/bin/bash | ||
+ | |||
+ | #acepter les connexions ssh | ||
+ | iptables -t nat -I PREROUTING -i eno1 -p tcp --destination-port ssh -j ACCEPT | ||
+ | |||
+ | #rediriger tous les ports sur une VM proxy | ||
+ | iptables -t nat -A PREROUTING -i eno1 -j DNAT --to-destination 192.168.**.10 | ||
+ | |||
+ | #ouvrir un port ssh pour chaque VM | ||
+ | iptables -t nat -I PREROUTING -p tcp --destination-port 3510 -j DNAT --to 192.168.**.10: | ||
+ | iptables -t nat -I PREROUTING -p tcp --destination-port 3511 -j DNAT --to 192.168.**.11: | ||
+ | iptables -t nat -I PREROUTING -p tcp --destination-port 3512 -j DNAT --to 192.168.**.12: | ||
+ | iptables -t nat -I PREROUTING -p tcp --destination-port 3513 -j DNAT --to 192.168.**.13: | ||
+ | iptables -t nat -I PREROUTING -p tcp --destination-port 3514 -j DNAT --to 192.168.**.14: | ||
+ | |||
+ | #exemple pour diriger un port sur une VM | ||
+ | iptables -t nat -I PREROUTING -i eno1 -p tcp --destination-port **** -j DNAT --to 192.168.**.**: | ||
+ | |||
+ | |||
+ | #exemple pour prosody | ||
+ | iptables -t nat -I PREROUTING -i eno1 -p tcp --destination-port 5222 -j DNAT --to 192.168.**.13: | ||
+ | iptables -t nat -I PREROUTING -i eno1 -p tcp --destination-port 5269 -j DNAT --to 192.168.**.13: | ||
+ | iptables -t nat -I PREROUTING -i eno1 -p tcp --destination-port 5280 -j DNAT --to 192.168.**.13: | ||
+ | iptables -t nat -I PREROUTING -i eno1 -p tcp --destination-port 5281 -j DNAT --to 192.168.**.13: | ||
+ | |||
+ | </ | ||
==== Réinitialiser le mot de passe root d'une VM ==== | ==== Réinitialiser le mot de passe root d'une VM ==== | ||
Ouais, bon, ça arrive. Si on a accès à l' | Ouais, bon, ça arrive. Si on a accès à l' | ||
Ligne 365: | Ligne 444: | ||
===== Faire des snapshots, cloner une VM ===== | ===== Faire des snapshots, cloner une VM ===== | ||
Il s'agit de manipulations propres à LVM((En tout cas, chez nous. Il y a d' | Il s'agit de manipulations propres à LVM((En tout cas, chez nous. Il y a d' | ||
+ | |||
+ | ===== Upgrade de Stretch à Buster ===== | ||
+ | Mettre à jour la distribution puis : | ||
+ | apt autoremove | ||
+ | | ||
+ | Changer dans / | ||
+ | bootloader = '/ | ||
+ | | ||
+ | Vérifier que / | ||
+ | net.ipv4.ip_forward = 1 | ||
+ | | ||
+ | Dans / | ||
+ | echo handle_iptable | ||
+ | ===== Bugs récurrents ===== | ||
+ | Il y en a quelques uns déjà listé sur cette page, mais consultez aussi la [[fr: | ||
+ | |||
+ | Si lors du lancement d'un VM, vous avez ceci en erreur : | ||
+ | |||
+ | < | ||
+ | Parsing config from / | ||
+ | libxl: error: libxl_device.c: | ||
+ | libxl: error: libxl_create.c: | ||
+ | libxl: error: libxl.c: | ||
+ | libxl: error: libxl.c: | ||
+ | libxl: error: libxl.c: | ||
+ | |||
+ | Allez voir [[fr: | ||
+ | |||
===== Sources et documentation ===== | ===== Sources et documentation ===== | ||
Ligne 371: | Ligne 478: | ||
* [[http:// | * [[http:// | ||
- | {{tag> | + | {{tag> |