[Ovirt-devel] Network configuration wiki page created...

Perry Myers pmyers at redhat.com
Fri Oct 24 14:00:13 UTC 2008


Daniel P. Berrange wrote:
> On Thu, Oct 16, 2008 at 12:45:02PM -0400, Darryl Pierce wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> Daniel P. Berrange wrote:
>>> Yes, this does more closely align, though I see this approach actualy
>>> introduces a slightly different problem - the VLANs don't actually
>>> work very well in this context. If you want to create lots of VLANs,
>>> its forcing you to re-specify the pair of bonded devices each time
>>> which isn't very nice. I can't think of a good answer for this yet
>> Another thing is if we're going to have multiple networks defined on a
>> node, we'll need a dropdown for that as well; i.e., select an existing
>> network to edit.
>>
>> Regarding the vlans, I'm not experienced enough with them to come up
>> with a good design. I'll do some research, but if you can point me to a
>> site that can give a great high level explanation, I can try using that
>> to tweak the design.
> 
> Thinking about it some more, I wasn't far off - we just need some 
> dynamic handling of the devices list depending on what you select.
> 
> Basic properties
> 
>      Name: free text name for the network
> 
> IPv4 properties
> 
>        Mode: DHCP | Static | None
>     Address: <if static>
>     Netmask: <if static>
>   Broadcast: <if static>
>     Gateway: <if static>
> 
> IPv6 properties
> 
>        Mode: DHCP | Static | Autoconfig | None
>     Address: <if static>
>      Prefix: <if static>
>     Gateway: <if static>
> 
> Physical devices
> 
>   Shared: yes | no
>     Mode: raw | failover | aggregation | vlan
>     VLAN: <number>
>  Devices: eth0: 00:11:22:33:44:55:66 (or name of network if its used)
>           eth1: 00:11:22:33:44:55:66 (or name of network if its used)
>           eth2: 00:11:22:33:44:55:66 (or name of network if its used)
>           bond0: <name of network owning the bond>
>           bond1: <name of network owning the bond>
> 
> So, to explain this last section
> 
>  - If you select shared = 'yes', then the resulting device (either ethX
>    or bondX) will be attached to a bridge. This enables its use for a
>    guest. If not shared, then its a storage or mgmt network where the
>    device is used directly.

Should we have a drop down to flag to label specific networks as 
management, storage, guest (or combinations of all three)?  This would 
just be to make the admin's life easier (no functional purpose really)

Also, when you select shared to create the bridge, we should use 
consistent bridge names to make troubleshooting easier.  i.e. All networks 
with the same label "Super Secure Guest Network" would all be ovirtbr0 
regardless of which Node they are created on.  "Super Secure Guest Network 
#2" would be ovirtbr1 and so on.

>  - If mode is 'raw'
>       - Devices list is filtered to only show unused ethXXX devices
>       - Allows picking of one device
>       - Configures the ethXXX device or the bridge if its shared
> 
>  - If mode is 'failover' or 'aggregation'
>       - Devices list is filtered to only show unused ethXXX devices
>       - Allows picking of multiple devices based on mac addr
>       - We put them all in a bondXXX device
>       - Configures the bondXXX device or the bridge if its shared
> 
>  - If mode is 'vlan'
>       - Devices list shows all ethXXX, all bondXXX devices in networks
>         which are not shared
>       - Allows picking of one device based on network name
>       - Creates a VLAN device ethXXX.YYY or bondXXX.YYY against 
>         this device, where YYY is VLAN number
>       - Configures the ethXXX.YYY/bondXXX.YY device or the bridge
>         if its shared
> 
> 
> Some examples
> 
>  1. Want device eth0 for mgmt traffic
> 
>      - Create network with
>           * device mode = raw
>           * pick eth0 based on mac addr
>           * Configure IPv4/6 
>           * Shared = no
>         Results in eth0
> 
>  2. Want devices eth0 and eth1 bonded for guest traffic
> 
>      - Create network with
>           * device mode = failover
>           * pick eth0 & eth1 based on mac addr
>           * Optional IPv4/6 config if desired
>           * Shared = yes
>         Results in bond0 + br0
> 
> 
>  3. Want devices eth0 and eth1, bonded, with two VLANs available for
>     guest traffic
> 
>      - Create network with
>           * device mode = failover
>           * pick eth0 & eth1 based on mac addr
>           * IPv4/6 address = none
>           * Shared = no
>         Results in bond0
> 
>      - Create network with
>           * device mode = vlan
>           * pick bond0 based on network name
>           * Optional IPv4/6 config if desired
>           * Shared = yes
>           * VLAN = 123
>         Results in bond0.123 + br0.123
> 
>      - Create network with
>           * device mode = vlan
>           * pick bond0 based on network name
>           * Optional IPv4/6 config if desired
>           * Shared = yes
>           * VLAN = 125
>         Results in bond0.125 + br0.125
> 
> 
>  4. Want device eth0 with one VLAN for guest traffic and one VLAN for
>     mgmt traffic
> 
>       - Create network with
>           * device mode = raw
>           * pick eth0 based on mac addr
>           * IPv4/6 config = none
>           * shared = no
>         Results in eth0
> 
>       - Create network with
>           * device mode = vlan
>           * pick eth0 based on network name
>           * shared = yes
>           * VLAN = 123
>         Results in eth0.123 + br0.123
> 
>       - Create network with
>           * device mode = vlan
>           * pick eth0 based on network name
>           * shared = no
>           * VLAN = 125
>          Results in eth0.125
> 
> 
> So for bridging, bonding & raw devices everything can be done in one
> step by defining a network & picking devices. 
> 
> Additional networks need only be defined if we wish to make use of
> multiple VLANs on a raw device or bond.

This all looks good from a ui perspective... I think later you wrote an 
email talking about the data modeling for this... :)

/me goes to read

Perry




More information about the ovirt-devel mailing list