Guys, I did not have time today to update it to satisfy testing requirements and Andrey Danin's request to rewrite two lines. You may submit a new patch set sooner or wait till I get back Monday. On Jan 30, 2014 9:26 PM, "Ryan Moe" <[email protected]> wrote:
> There was already a bug for this: > https://bugs.launchpad.net/fuel/+bug/1269726. You can also see Matt's > patch for it here: https://review.openstack.org/#/c/69617/. > > > On Thu, Jan 30, 2014 at 8:52 AM, Andrew Woodward <[email protected]> wrote: > >> Doesn't Ryan's patch already do this? >> >> >> https://github.com/xarses/fuel-web/commit/11f4cb27f8abf5882d13e98557fb1529518ac45b >> >> When in use, cobbler generates interfaces with macs, but only one has an >> IP address >> I've created bug https://bugs.launchpad.net/fuel/+bug/1274590 to track >> this >> >> I've on a related, note, we also need to think about overlapping the dhcp >> pool range with the fuelweb_admin NetwrokGroup range. We have found that we >> are easily running out of addresses. I will test some changes and track >> them on bug https://bugs.launchpad.net/fuel/+bug/1274595 >> >> >> >> >> On Tue, Jan 28, 2014 at 12:41 AM, Matthew Mosesohn < >> [email protected]> wrote: >> >>> I just remembered another option. You can configure multiple NICs for >>> a given system so that when its mac addr requests PXE install, it can >>> do install (but not need a reserved address or DNS entry). No matter >>> what, we can start install regardless of which NIC starts install. We >>> can still specify which NIC to do DHCP on in anaconda/preseed. Since >>> we're already creating all NICs for a given system, we can just leave >>> the IP address blank. I'll write up a quick patch for this. >>> >>> On Tue, Jan 28, 2014 at 12:24 PM, Andrey Danin <[email protected]> >>> wrote: >>> > Dnsmasq can do it but Cobbler doesn't allow it. >>> > >>> > >>> > On Mon, Jan 27, 2014 at 9:43 PM, Andrew Woodward <[email protected]> >>> wrote: >>> >> >>> >> So why cant we just set the same IP on each interfaces mac in >>> cobbler? we >>> >> don't really care which one boots, just that the 'right' admin >>> interface is >>> >> saved after we reboot. >>> >> >>> >> >>> >> On Sun, Jan 26, 2014 at 11:03 PM, Andrey Danin <[email protected]> >>> >> wrote: >>> >>> >>> >>> My scenario occurs when eth0 and eth1 are connected to PXE network >>> and a >>> >>> PortFast feature is not enabled on a switch. Eth0 can get a timeout >>> from >>> >>> time to time and if the Cobbler will know a eth0 MAC only, it'll >>> boot it to >>> >>> the bootstrap. >>> >>> >>> >>> >>> >>> >>> >>> On Mon, Jan 27, 2014 at 9:52 AM, Matthew Mosesohn >>> >>> <[email protected]> wrote: >>> >>>> >>> >>>> Andrey, >>> >>>> >>> >>>> This is something a user could always fix himself. Typically you do >>> >>>> DHCP on eth0, then eth1,etc.... and the only case I can think of >>> where >>> >>>> your scenario would occur is if we were trying to provision 50+ >>> nodes >>> >>>> with an underpowered master. But what's more likely is eth0 will >>> start >>> >>>> PXE boot and fail to receive the whole image and reboot and try >>> again. >>> >>>> If you have systems PXE booting on eth0 for bootstrap then eth1 for >>> >>>> provision, then it's a really odd machine and I think we need to >>> >>>> discount that case. >>> >>>> >>> >>>> If this scenario is real and reproducable, we can definitely work >>> >>>> around it and create system records in Cobbler (but not reserve an >>> IP >>> >>>> for them) that correspond to all the other MAC addresses of the >>> >>>> system. We could forward them to a special profile that tells >>> cobbler >>> >>>> to update its records for DNS and the system profile, then reboot it >>> >>>> and provision again. Or at minimum a warning state that we can use >>> to >>> >>>> give feedback to the user that PXE is not working correctly on a >>> >>>> particular node. >>> >>>> >>> >>>> If a user wants to deploy 100 nodes with 6 NICs in each system, a >>> /24 >>> >>>> should be enough, but with our non-optimal logic, it requires a /22 >>> >>>> network to deploy: 100 IPs for bootstrap and 600 IPs for >>> provisioning. >>> >>>> >>> >>>> The solution in place doesn't work and doesn't meet expectations of >>> >>>> real use cases. We should pick an approach that will make the most >>> >>>> people happy. >>> >>>> >>> >>>> -Matthew >>> >>>> >>> >>>> On Mon, Jan 27, 2014 at 9:40 AM, Andrey Danin <[email protected]> >>> >>>> wrote: >>> >>>> > The problem is the Cobbler will force the node to boot to >>> bootstrap if >>> >>>> > he >>> >>>> > doesn't recognize it via known MAC. Here are the boot process >>> >>>> > diagrams. >>> >>>> > The right one: >>> >>>> > # node's embedded PXE software starts a boot-up procedure via >>> eht0 >>> >>>> > # Cobbler knows eth0 MAC and puts to the node a PXE config to >>> >>>> > download and >>> >>>> > run an installation image (CentOS) >>> >>>> > # The node goes to the provisioning state. >>> >>>> > >>> >>>> > The bad one: >>> >>>> > # node runs PXE procedure over eth1 >>> >>>> > # Cobbler doesn't know eth1 MAC and sends to the node a PXE >>> config >>> >>>> > with a >>> >>>> > bootstrap image. >>> >>>> > # the node boots into bootstrap and an installation process >>> fails. >>> >>>> > >>> >>>> > >>> >>>> > On Mon, Jan 27, 2014 at 9:25 AM, Matthew Mosesohn >>> >>>> > <[email protected]> >>> >>>> > wrote: >>> >>>> >> >>> >>>> >> Andrey, >>> >>>> >> >>> >>>> >> We can use the same tactic we use in Ubuntu to ensure that CentOS >>> >>>> >> starts installing on the correct MAC by adding the kernel >>> parameter >>> >>>> >> ks.device=$MACADDR. It will try to DHCP on that interface and >>> >>>> >> eliminate the possibility of having 2 or more NICs on the same >>> subnet >>> >>>> >> as the PXE server. >>> >>>> >> >>> >>>> >> On Mon, Jan 27, 2014 at 9:14 AM, Andrey Danin < >>> [email protected]> >>> >>>> >> wrote: >>> >>>> >> > There is a little chance that a node will boot up via another >>> >>>> >> > interface >>> >>>> >> > and >>> >>>> >> > Cobbler will put it to the bootstrap stage instead of the >>> target >>> >>>> >> > stage. >>> >>>> >> > We >>> >>>> >> > have to provide all MAC addresses of a node to Cobbler but it >>> can't >>> >>>> >> > use >>> >>>> >> > one >>> >>>> >> > IP for all MACs. So we have to allocate a lot of IPs. >>> >>>> >> > >>> >>>> >> > We can improve our mechanism by the following: >>> >>>> >> > * Assign IP to the node's admin interface only. Use it as a >>> >>>> >> > default >>> >>>> >> > behavior but add an UI switch to enable a greedy behavior. >>> >>>> >> > * Run a predeployment DHCP check in order to find all >>> interfaces >>> >>>> >> > which >>> >>>> >> > really can communicate with PXE network and assign IPs to these >>> >>>> >> > interfaces >>> >>>> >> > only. >>> >>>> >> > >>> >>>> >> > >>> >>>> >> > >>> >>>> >> > On Thu, Jan 23, 2014 at 12:29 AM, Ryan Moe <[email protected]> >>> >>>> >> > wrote: >>> >>>> >> >> >>> >>>> >> >> What is the reasoning behind assigning an IP from the admin >>> >>>> >> >> network to >>> >>>> >> >> all >>> >>>> >> >> interfaces [1]? It has caused problems in deployments where >>> IPs >>> >>>> >> >> are >>> >>>> >> >> tightly >>> >>>> >> >> managed and/or machines have a large number of interfaces. >>> >>>> >> >> >>> >>>> >> >> Thanks, >>> >>>> >> >> Ryan >>> >>>> >> >> >>> >>>> >> >> [1] >>> >>>> >> >> >>> >>>> >> >> >>> >>>> >> >> >>> https://github.com/stackforge/fuel-web/blob/master/nailgun/nailgun/task/helpers.py#L435 >>> >>>> >> >> >>> >>>> >> >> -- >>> >>>> >> >> Mailing list: https://launchpad.net/~fuel-dev >>> >>>> >> >> Post to : [email protected] >>> >>>> >> >> Unsubscribe : https://launchpad.net/~fuel-dev >>> >>>> >> >> More help : https://help.launchpad.net/ListHelp >>> >>>> >> >> >>> >>>> >> > >>> >>>> >> > >>> >>>> >> > >>> >>>> >> > -- >>> >>>> >> > Andrey Danin >>> >>>> >> > [email protected] >>> >>>> >> > skype: gcon.monolake >>> >>>> >> > >>> >>>> >> > -- >>> >>>> >> > Mailing list: https://launchpad.net/~fuel-dev >>> >>>> >> > Post to : [email protected] >>> >>>> >> > Unsubscribe : https://launchpad.net/~fuel-dev >>> >>>> >> > More help : https://help.launchpad.net/ListHelp >>> >>>> >> > >>> >>>> > >>> >>>> > >>> >>>> > >>> >>>> > >>> >>>> > -- >>> >>>> > Andrey Danin >>> >>>> > [email protected] >>> >>>> > skype: gcon.monolake >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> -- >>> >>> Andrey Danin >>> >>> [email protected] >>> >>> skype: gcon.monolake >>> >>> >>> >>> -- >>> >>> Mailing list: https://launchpad.net/~fuel-dev >>> >>> Post to : [email protected] >>> >>> Unsubscribe : https://launchpad.net/~fuel-dev >>> >>> More help : https://help.launchpad.net/ListHelp >>> >>> >>> >> >>> >> >>> >> >>> >> -- >>> >> If google has done it, Google did it right! >>> > >>> > >>> > >>> > >>> > -- >>> > Andrey Danin >>> > [email protected] >>> > skype: gcon.monolake >>> >> >> >> >> -- >> If google has done it, Google did it right! >> >> -- >> Mailing list: https://launchpad.net/~fuel-dev >> Post to : [email protected] >> Unsubscribe : https://launchpad.net/~fuel-dev >> More help : https://help.launchpad.net/ListHelp >> >> >
-- Mailing list: https://launchpad.net/~fuel-dev Post to : [email protected] Unsubscribe : https://launchpad.net/~fuel-dev More help : https://help.launchpad.net/ListHelp

