[Ovirt-devel] [PATCH node] The node now passes in the mac address and iface names during identify.
Perry N. Myers
pmyers at redhat.com
Sun Sep 21 06:30:26 UTC 2008
Perry N. Myers wrote:
> Darryl L. Pierce wrote:
>> This works with the patch for the server the generates a configuration
>> for the node based on the interface names passed in with each mac
>> Additionally, the node will pull down the configuration and process it
>> as a
>> script. Since the configuration will be composed of two separate parts:
>> 1. a script to load one or more kernel modules
>> 2. a configuration file to pass to augtool
>> The script is downloaded to a temp directory and then passed to bash. If
>> either of the two expected files is produced then it is further
>> processed to
>> configure the node.
> This breaks networking on the nodes currently.
> A node boots for the first time, brings up eth0, contacts the server and
> goes to get its config bundle using its hostname, mac and iface name.
> Since the node has never been configured in the server before the config
> bundle it pulls down is empty meaning ovirtbr0 is never set up. eth0
> stays up so normal network connectivity works but since the bridge is
> never configured you can't start vm's on the node.
> What needs to happen is a 'default' configuration needs to be applied in
> the event that the Node has not been explicitly configured or in the
> event that there is no server to contact. In the configure_from_network
> function we could detect the 'empty' config file and exit out of the
> loop to apply the default configuration at the end of that function.
> The controller on the server side should put something in the output
> when the wget it run so that the ovirt-early script can easily determine
> that there was no configuration on the server and the Node should drop
> to the 'default config' of one bridge per interface.
> Once this is fixed we can retest these two patches.
I've got a fix that should work for us. After applying the config file
via augtool in ovirt-early the script checks for return code from augtool.
If the return status is 0 *and* there are one or more files created in
/etc/sysconfig/network-scripts/ifcfg-eth* then a remote config was
applied. If there are no ifcfg-eth files created, then we must resort to
using the default network config.
This will be a patch on top of the existing patches. Smoke tests passed
so these have been committed to the repo. (Patch sent in separate email)
More information about the ovirt-devel