#1 Le 28/02/2022, à 13:24
- Priareos
Connecter un conteneur LXC au bridge
Bonjour,
J'ai créé un bridge sur Ubuntu Server pour y connecter mes conteneurs qui ne sont par défaut pas sur mon LAN. J'ai trouvé la commande suivante:
lxc config device add Nom_du_conteneur eth0 nic nictype=bridged parent=br0 name=eth0
Au lieu de remplacer l'ip du conteneur par une ip du lan cette commande supprime en fait l'ip du conteneur. Par ailleurs à ce stade il n'est visiblement pas possible de revenir en arrière. J'ai tenté de remplacer add par delete, del et remove sans succès, au mieux le shell répond que le device n'existe pas.
Un peu d'aide serait la bienvenue car je sèche complètement sur ce point.
Dernière modification par Priareos (Le 28/02/2022, à 14:01)
Hors ligne
#2 Le 28/02/2022, à 13:32
- xubu1957
Re : Connecter un conteneur LXC au bridge
Bonjour,
Vu Relier des conteneurs Linux à un pont (bridge)
Tu as vérifié les noms des interfaces réseaux avec :
ip a
?
_ _ _
Comme demandé dans le premier message du tutoriel Retour utilisable de commande
Pour ajouter toi-même les balises code à ton précédent message #1 : Merci
Cliquer sur le lien « Modifier » en bas à droite du message
Sélectionner le texte
Cliquer sur le <> de l'éditeur de message
Dernière modification par xubu1957 (Le 28/02/2022, à 15:23)
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
Hors ligne
#3 Le 28/02/2022, à 13:36
- Priareos
Re : Connecter un conteneur LXC au bridge
Bonjour Xubu,
Oui le bridge est bien présent dans la sortie de ip a. Je l'ai fait avec netplan comme indiqué dans ton lien, qui après quelques remarques sur l'indentation a créer le bridge sans problème. networkctl list le liste également.
Je vais suivre pas à pas ton lien pour voir.
Hors ligne
#4 Le 28/02/2022, à 14:06
- Priareos
Re : Connecter un conteneur LXC au bridge
Bon, lorsque je modifie la configuration de LXC il me dit qu'il ne trouve pas le bridge ( contrairement à ip a ). Maintenant le bridge a 2 ip dans le même réseau et le conteneur a toujours une ip en dehors du lan. Je vais effacer ce bridge et le refaire.
J'ai pu repartir sur un serveur correctement configuré, avec un bridge testé pour être sûr. J'ai tenté de suivre la procédure à la lettre mais à la commande
lxc profile edit default < /tmp/lxc-config.yaml
il me répond:
Error: Device validation failed for "eth0": Failed loading device "eth0": Failed to load network "br0": Network not found
Comme dit, br0 est parfaitement fonctionnel et eth0 est une interface qu'il gère lui-même dans les conteneurs, je n'ai pas cette interface sur mon système.
Dernière modification par Priareos (Le 28/02/2022, à 14:49)
Hors ligne
#5 Le 28/02/2022, à 15:24
- xubu1957
Re : Connecter un conteneur LXC au bridge
Pour les noms des interfaces > systemd/PredictableNetworkInterfaceNames et en français :
Interfaces
Avec l’arrivée de la version 197 de systemd le nom des interfaces réseau change. Le but étant de ne pas avoir un nom d’interface (pour ceux qui en ont plusieurs) qui change à chaque démarrage.
Les interfaces sont maintenant préfixées de en (ethernet), wl (WLAN) ou ww (WWAN), suivi par un identifiant généré automatiquement et prévisible, pour finalement donner comme nom enp5s0 par exemple.
Important: Par commodité (... fainéantise ), les pages wikis traitant des interfaces réseaux comme la suite de la présente page continuent de parler eth0, wlan0, etc.. Car du point de vue de l'utilisation, la nouvelle nomenclature ne change rien.
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
Hors ligne
#6 Le 28/02/2022, à 16:51
- Priareos
Re : Connecter un conteneur LXC au bridge
Je disais juste qu'il me sort une erreur avec eth0. C'est une information certes mais je ne vois pas ce que je peux y faire puisque c'est à lui de la créer à l'intérieur du conteneur. De toute façon il ne voit pas br0 et c'est sans doute le problème dont découle le premier.
Dernière modification par Priareos (Le 28/02/2022, à 16:56)
Hors ligne
#7 Le 28/02/2022, à 17:04
- xubu1957
Re : Connecter un conteneur LXC au bridge
Il faut attendre les conseils des connaisseurs.
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
Hors ligne
#8 Le 28/02/2022, à 17:22
- Priareos
Re : Connecter un conteneur LXC au bridge
Ok, merci pour ton aide en tout cas.
Hors ligne
#9 Le 28/02/2022, à 18:10
- NicoApi73
Re : Connecter un conteneur LXC au bridge
Bonjour,
Tu utilises LXC ou LXD ? (https://linuxcontainers.org/)
Hors ligne
#10 Le 28/02/2022, à 19:13
- Priareos
Re : Connecter un conteneur LXC au bridge
Bonjour Nico,
J'utilise LXD.
Hors ligne
#11 Le 28/02/2022, à 19:22
- NicoApi73
Re : Connecter un conteneur LXC au bridge
sur ton hôte, que donne :
ip link show
Hors ligne
#12 Le 28/02/2022, à 19:51
- NicoApi73
Re : Connecter un conteneur LXC au bridge
J'utilise lxd, mais je ne considère pas comme expert. De plus je n'utilise pas le bridge, mais le macvlan.
Ceci dit, j'ai configuré mes containers en créant un profil, plutôt que de faire une commande comme au #1, j'aurais fait les commandes suivantes :
#Création d'un profil nommé profilbr0
lxc profile create profilbr0
#Lien entre eth0 (container) et br0 (bridge de l'hote
lxc profile device add profilbr0 eth0 nic nictype=bridged parent=br0
#création du container
lxc launch ubuntu:18.04 Nom_du_conteneur --profile default --profile profilbr0
La dernière commande est pour créer ton container, ici, sur une base ubuntu 18.04, je te laisse le soin de faire ton choix
Je viens d'essayer chez moi, avec suucès
P.S. : merci de ne pas utiliser d'image, mais les balises code
Dernière modification par NicoApi73 (Le 28/02/2022, à 19:52)
Hors ligne
#13 Le 28/02/2022, à 20:21
- Priareos
Re : Connecter un conteneur LXC au bridge
J'ai effacé la photo, merci pour l'info.
Je suppose que dans l'étape 2 c'est parent=profilbr0 non? En tout cas il me bloque à l'étape 3
Parent device "profilebr0" doesn't exist"
Hors ligne
#14 Le 28/02/2022, à 20:27
- NicoApi73
Re : Connecter un conteneur LXC au bridge
Non, le parent est br0, le bridge de l'hôte
Hors ligne
#15 Le 28/02/2022, à 21:59
- NicoApi73
Re : Connecter un conteneur LXC au bridge
J'ai trouvé la commande pour modifier sans détruire le profil :
lxc profile device set profilbr0 eth0 parent br0
Hors ligne
#16 Le 28/02/2022, à 22:09
- Priareos
Re : Connecter un conteneur LXC au bridge
J'ai tenté mais il me dit:
Error: Device doesn't exist
J'ai tapé cette nouvelle commande en lieu et place de la 2e au cas où je me sois encore trompé
Hors ligne
#17 Le 28/02/2022, à 22:13
- NicoApi73
Re : Connecter un conteneur LXC au bridge
Merci de montrer tous les retours, en incluant les commandes elles mêmes, car je ne sais pas ce que tu as tapé...
Donne moi le retour de :
lxc profil list
Le retour que tu vas me fournir, doit être de ce type :
moi@lxd:~$ lxc profile list
+-----------+---------+
| NAME | USED BY |
+-----------+---------+
| default | 7 |
+-----------+---------+
| macvlan | 7 |
+-----------+---------+
| profilbr0 | 0 |
+-----------+---------+
moi@lxd:~$
Dernière modification par NicoApi73 (Le 28/02/2022, à 22:14)
Hors ligne
#18 Le 28/02/2022, à 22:15
- Priareos
Re : Connecter un conteneur LXC au bridge
En suivant ce que tu as mis à 19:51 le conteneur n'a pas d'ip du tout.
Hors ligne
#19 Le 28/02/2022, à 22:18
- Priareos
Re : Connecter un conteneur LXC au bridge
lxc profile list
me renvoie les lignes 1 et 3 de ton tableau avec "user by" à 1 dans les 2 cas.
Hors ligne
#20 Le 28/02/2022, à 22:22
- NicoApi73
Re : Connecter un conteneur LXC au bridge
Merci de me donner TOUS les retours, je ne suis pas derrière ton écran.
Donne le retour de la commande suivante :
lxc profile show profilbr0
Hors ligne
#21 Le 28/02/2022, à 22:27
- Priareos
Re : Connecter un conteneur LXC au bridge
Tu as bien tous les retours.
lxc profile show profilbr0
config: {}
description: ""
devices:
eth0:
nictype: bridged
parent: br0
type: nic
name: profilbr0
used by:
- /1.0/instances/ubuntu1804
Dernière modification par Priareos (Le 28/02/2022, à 22:28)
Hors ligne
#22 Le 28/02/2022, à 22:34
- NicoApi73
Re : Connecter un conteneur LXC au bridge
ok, le profil est correct. Détruit le container
lxc stop Nom_du_conteneur
lxc delete Nom_du_conteneur
Puis donne le retour de
ip link show
lxc launch ubuntu:18.04 Nom_du_conteneur --profile default --profile profilbr0
Hors ligne
#23 Le 28/02/2022, à 22:41
- Priareos
Re : Connecter un conteneur LXC au bridge
Pour ip link show:
https://i.postimg.cc/tTh7B07K/ip-link-show.png
Pour lxc launch ubuntu:18.04 Nom_du_conteneur --profile default --profile profilbr0:
Creating ubuntu1804
Starting ubuntu1804
lxc list
ubuntu1804 RUNNING CONTAINER 0
Pas d'ip4 ni 6.
Hors ligne
#24 Le 28/02/2022, à 22:45
- xubu1957
Re : Connecter un conteneur LXC au bridge
Il faut utiliser le Retour utilisable de commande, pour restituer les informations.
Pour info, dans nos usages :
Modération
Bonjour,
Quand il n'y a pas de problème d'affichage ni d'accès internet, il est indispensable de donner les retours des commandes sous forme de texte entre balises code et surtout pas sous forme d'images.
Et aussi :
Mais si ce sont des retours de commandes, il vaut mieux les copier-coller, c'est beaucoup plus pratique si on a besoin d'en récupérer des morceaux pour te donner de nouvelles commandes.
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
Hors ligne
#25 Le 28/02/2022, à 22:45
- NicoApi73
Re : Connecter un conteneur LXC au bridge
ok, on va essayé avec le bridge par défaut de LXD :
lxc profile device set profilbr0 eth0 parent lxdbr0
lxc stop ubuntu1804
lxc delete ubuntu1804
lxc launch ubuntu:18.04 ubuntu1804 --profile default --profile profilbr0
lxc list
Hors ligne