La connexion virt-install ListActivatableNames est fermée

1

J'essaie d'utiliser virt-install pour configurer facilement un vm. Que je suis bête.

La finalité ici est d’avoir environ dix de ces bad boys en cours d’exécution qui doivent tous être capables de communiquer les uns avec les autres via ssh, http, différents types de bases de données, etc. Ainsi, ils DOIVENT être connectés en réseau, et en utilisant ansible pour automatiser la configuration de tous les services dont chacun a besoin, chaque vm DOIT être accessible via ssh sur une adresse IP statique (de plus, même si le port ssh ne doit pas obligatoirement être 22, il doit être identique pour chaque vm, car ssh_portest un paramètre global dans ansible; il ne peut en être autrement pour différents hôtes) et, enfin, il faut le faire sans graphique ni arrêter le démon ssh de l'hôte. Je fais la configuration sur un serveur distant, sans tête, auquel je ne peux accéder que via ssh et qui n'exécute pas de serveur X11.

J'adorerais que quelqu'un puisse m'aider à démarrer une machine virtuelle qui satisferait à ces exigences, mais honnêtement, je me contenterais de commencer ce foutu projet. J'essaie de démarrer un seul vm comme ceci:

OS="--os-type linux --os-variant centos7.0" Net="--network bridge:virbr0" Disk="./traffic_ops_db_primary.img,size=10" Location="--location 'http://mirror.i3d.net/pub/centos/7/os/x86_64/'" Cpu="--vcpus=4" Ram="--ram=2048" Name="--name traffic_ops_db_primary" Extra="--extra-args console=ttyS0" sudo virt-install $OS $Net $Disk $Location $Cpu $Ram $Name $Extra

Comme suggéré par plusieurs guides en ligne et réponses stackoverflow. Cependant, je ne trouve pas une seule personne ayant ce processus en échec avec l'erreur suivante:

WARNING  Graphics requested but DISPLAY is not set. Not running virt-viewer.
WARNING  No console to launch for the guest, defaulting to --wait -1

Starting install...
Retrieving file vlinuz...
Retrieving file initrd.img...
ERROR    error from service: ListActivatableNames: Connection is closed
Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
  virsh --connect qemu:///system start traffic_ops_db_primary
otherwise, please restart your installation.

Ce qui est vraiment irritant, c’est que cela n’échoue pas si je ne l’exécute pas en tant que root (mais je ne peux pas l’exposer au réseau sans les autorisations root). Voici le résultat de ip addr show virbr0:

7: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 52:54:00:39:77:0d brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever

Donc, il existe et c'est en hausse. J'ai aussi essayé d'autres périphériques réseau, qui génèrent cette erreur ou <device name> port vnet0 does not exist, ce qui signifie que le périphérique n'existe pas (ce sont des conneries parce que c'est le périphérique que j'utilise pour me connecter via ssh à la machine). Si pour une raison quelconque il est impossible d'utiliser le virbr0périphérique, cela me convient, car idéalement, une adresse IP statique doit être affectée à la machine sur l'interface "principale", afin que je puisse entrer directement en ssh à partir de mon ordinateur personnel.

TL; DR: virt-installrenvoie l'erreur ListActivatableNames: Connection is closedpour le pont virtuel par défaut, et googler uniquement le nom de ce service ne génère littéralement aucun résultat. Qu'est-ce que?

EDIT: Je voulais inclure cela, mais j'ai oublié: la sortie de sudo virsh net-list --all:

 Name                 State      Autostart     Persistent
----------------------------------------------------------
 default              active     yes           yes
ocket8888
la source
J'ai vécu cela quand j'avais une machine virtuelle bloquée que j'essayais de forcer à migrer, ce qui avait échoué. J'ai purgé la machine virtuelle qui a échoué la migration et j'ai pu créer une nouvelle machine virtuelle sans problème. J'espère que cela t'aides.
Jordanie
1
UPDATE: J'ai aussi eu cette erreur quand libvirtd n'était pas en cours d'exécution. Donc ... "systemctl restart libvirtd"
Jordanie