[libvirt-users] libvirt 4.1 and later - howto configure LXC with interface macvlan type='direct' ?

Daniel P. Berrangé berrange at redhat.com
Wed Dec 5 11:54:31 UTC 2018


On Wed, Dec 05, 2018 at 02:43:45PM +0300, mxs kolo wrote:
>  Hi all
> 
> After upgrade from Centos 7.5 to Centos 7.6, our test environment
> geted  new version of libvirt 4.5.0
> In which our old containers have broken config and can't start:
> 2018-12-05 10:38:32.634+0000: 18010: debug :
> virLXCControllerGetNICIndexes:368 : Getting nic indexes
> 2018-12-05 10:38:32.634+0000: 18010: error :
> virLXCControllerGetNICIndexes:400 : unsupported configuration:
> Unsupported net type direct
> Failure in libvirt_lxc startup: unsupported configuration: Unsupported
> net type direct
> 
> We use next section for network interface:
>  <interface type='direct'>
>       <mac address='02:00:21:3b:eb:e1'/>
>       <source dev='eno1.710' mode='bridge'/>
>     </interface>
> 
> It's linux macvlan solutions and it's worked at least since libvirt
> 1.2.7 for us.
> As I can see, in version 4.1.0 and later, some changes about DIRECT
> connect was implemented.
> VIR_DOMAIN_NET_TYPE_DIRECT is  still fully supported in src/lxc/lxc_driver.c
> But in src/lxc/lxc_controller.c
> --- libvirt-3.9.0/src/lxc/lxc_controller.c      2017-09-28
> 13:15:43.322712913 +0300
> +++ libvirt-4.1.0/src/lxc/lxc_controller.c      2018-02-28
> 16:21:05.158799006 +0300
> @@ -395,8 +395,14 @@
>          case VIR_DOMAIN_NET_TYPE_INTERNAL:
>          case VIR_DOMAIN_NET_TYPE_DIRECT:
>          case VIR_DOMAIN_NET_TYPE_HOSTDEV:
> +            virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
> +                           _("Unsupported net type %s"),
> +                           virDomainNetTypeToString(ctrl->def->nets[i]->type));
> +            goto cleanup;
> +        case VIR_DOMAIN_NET_TYPE_LAST:
>          default:
> -            break;
> +            virReportEnumRangeError(virDomainNetType,
> ctrl->def->nets[i]->type);
> +            goto cleanup;
>          }
>      }
> 
> Since version 4.1.0 which config need be used to configure macvlan for
> lxc cointainers ?

Sorry, this looks like my screw up in the code. I mis-interpreted what
this function was doing when adding error checking and mistakenly
rejected the TYPE_DIRECT nics.

Please file a bug against libvirt for this, or send a patch if you wish
to.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvirt-users mailing list