Projet

Général

Profil

Tâche #36291

Scénario #35649: [2.9.0] Impossible de configurer eth0 en DHCP

Étude

Ajouté par Benjamin Bohard il y a plus d'un an. Mis à jour il y a plus d'un an.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Début:
01/10/2022
Echéance:
% réalisé:

100%

Restant à faire (heures):
0.0

Historique

#1 Mis à jour par Benjamin Bohard il y a plus d'un an

  • Statut changé de Nouveau à En cours

#2 Mis à jour par Benjamin Bohard il y a plus d'un an

Erreur dans le journal du serveur d’application quand on change la valeur de la variable eth0_method à dhcp dans l’application de configuration du module :

nov. 27 14:47:51 amon gunicorn[1466]: Exception in thread Netlink async cache:
nov. 27 14:47:51 amon gunicorn[1466]: Traceback (most recent call last):
nov. 27 14:47:51 amon gunicorn[1466]:   File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
nov. 27 14:47:51 amon gunicorn[1466]:     self.run()
nov. 27 14:47:51 amon gunicorn[1466]:   File "/usr/lib/python3.10/threading.py", line 953, in run
nov. 27 14:47:51 amon gunicorn[1466]:     self._target(*self._args, **self._kwargs)
nov. 27 14:47:51 amon gunicorn[1466]:   File "/usr/lib/python3/dist-packages/pr2modules/netlink/nlsocket.py", line 571, in async_recv
nov. 27 14:47:51 amon gunicorn[1466]:     poll = select.poll()
nov. 27 14:47:51 amon gunicorn[1466]: AttributeError: module 'select' has no attribute 'poll'

Et après une autre tentative un moment après :
nov. 27 15:00:16 amon gunicorn[1466]: Traceback (most recent call last):
nov. 27 15:00:16 amon gunicorn[1466]:   File "/usr/lib/python3/dist-packages/eventlet/hubs/poll.py", line 111, in wait
nov. 27 15:00:16 amon gunicorn[1466]:   File "/usr/lib/python3/dist-packages/eventlet/greenthread.py", line 221, in main
nov. 27 15:00:16 amon gunicorn[1466]:   File "/usr/lib/python3/dist-packages/gunicorn/workers/geventlet.py", line 78, in _eventlet_serve
nov. 27 15:00:16 amon gunicorn[1466]:   File "/usr/lib/python3/dist-packages/eventlet/greenio/base.py", line 227, in accept
nov. 27 15:00:16 amon gunicorn[1466]:   File "/usr/lib/python3/dist-packages/eventlet/greenio/base.py", line 64, in socket_accept
nov. 27 15:00:16 amon gunicorn[1466]:   File "/usr/lib/python3.10/socket.py", line 293, in accept
nov. 27 15:00:16 amon gunicorn[1466]: OSError: [Errno 24] Too many open files
nov. 27 15:00:16 amon gunicorn[1466]: Removing descriptor: 8

#3 Mis à jour par Benjamin Bohard il y a plus d'un an

Lu sur le tracker de pyroute2 (https://github.com/svinota/pyroute2/issues/820) :

The eventlet module is one huge problem for NDB, tbh…

NDB is thread-based and I'm not sure it is compatible with eventlet at all. The machinery inside NDB uses also an SQL DB, and I have no idea if it will work correctly with eventlet.

If you plan to work with eventlet, then you may use plain IPRoute without async_cache, thus simple IPRoute.bind() if you need RTNL monitoring, or without any bind() at all if you don't need to monitor RTNL broadcasts.

Another alternative is to use NDB and eventlet in separate processes, connecting them via RPC (e.g. pyroute2-cli may be run as a service providing text/plain and json RPC).

#4 Mis à jour par Benjamin Bohard il y a plus d'un an

  • Statut changé de En cours à À valider

#5 Mis à jour par Laurent Gourvenec il y a plus d'un an

  • Statut changé de À valider à Résolu

#6 Mis à jour par Laurent Gourvenec il y a plus d'un an

  • % réalisé changé de 0 à 100

#7 Mis à jour par Joël Cuissinat il y a plus d'un an

  • Statut changé de Résolu à Fermé
  • Restant à faire (heures) mis à 0.0

Formats disponibles : Atom PDF