Discussion:
Anaconda uses too many addresses
CLOSE Dave
2016-03-11 23:32:34 UTC
Permalink
The environment here is Fedora 23. One machine acts as DHCP server for
the others (normal, I know). A small portion of each subnet is reserved
for dynamic assignment, devices without reserved addresses. Lately, when
I run PXE on a new machine, I find that three or more of those addresses
are reserved for Anaconda! Even though all the requests originate from
the same MAC address, the DHCP server gives each request a unique
response. As the address leases take time to expire, I quickly run out
of available addresses. Much more quickly than I should.

I don't recall this happening when doing the same operations on a Fedora
20 base, both DHCP server and PXE installations.

I realize this may be a DHCP issue. But to cover all bases, I wonder if
there is anything Anaconda is doing that could exacerbate this problem.
--
Dave Close
Brian C. Lane
2016-03-12 00:25:48 UTC
Permalink
Post by CLOSE Dave
The environment here is Fedora 23. One machine acts as DHCP server for
the others (normal, I know). A small portion of each subnet is reserved
for dynamic assignment, devices without reserved addresses. Lately, when
I run PXE on a new machine, I find that three or more of those addresses
are reserved for Anaconda! Even though all the requests originate from
the same MAC address, the DHCP server gives each request a unique
response. As the address leases take time to expire, I quickly run out
of available addresses. Much more quickly than I should.
I don't recall this happening when doing the same operations on a Fedora
20 base, both DHCP server and PXE installations.
I realize this may be a DHCP issue. But to cover all bases, I wonder if
there is anything Anaconda is doing that could exacerbate this problem.
Do the systems have multiple nics connected to the same network? Does
the kickstart activate more than one? Unless there are multiple network
entries in the kickstart it should only use 1 nic.

It's pretty hard to tell without logs though. Grab them from /tmp/*log
after an installation has finished and attach them to a bug (as
individual text/plain attachments) at https://bugzilla.redhat.com
--
Brian C. Lane | Anaconda Team | IRC: bcl #anaconda | Port Orchard, WA (PST8PDT)
Jason L Tibbitts III
2016-03-12 18:38:27 UTC
Permalink
BCL> Do the systems have multiple nics connected to the same network?

In my case, no; it's just one interface.

- J<
Jason L Tibbitts III
2016-03-12 18:37:46 UTC
Permalink
CD> Lately, when I run PXE on a new machine, I find that
CD> three or more of those addresses are reserved for Anaconda!

I have basically the same setup, and I've seen something similar. In my
case, I don't use PXE (so the system BIOS doesn't try to use the
network) but I do stick the PXE images on either an existing grub setup
or a USB stick and the kickstart file itself comes over the network.

What I've found is that dracut will dhcp to get the kickstart file, and
then anaconda will dhcp to actually do the install and only afterwards
change to the static IP assigned in the kickstart file. The dhcp client
identifiers are different, so even though the MAC is the same, the dhcp
server assigns different addresses.

In my case this isn't a big deal because the lease time for that block is
set to two minutes so while I've noticed it I haven;t seen fit to do
anything other than squawk about it on #anaconda in IRC.

In your case, I'm sure that the BIOS's dhcp attempt counts for the third
address. And the overall issue is caused by each stage in the process
not somehow passing the IP address along.

I wouldn't guess it would be too hard for dracut to save the dhcpd state
file somewhere so that the dhcpd that anaconda runs could try to reuse
the same lease, or to ensure that both use the same client ID. I have
no idea if the BIOS can save that information for dracut to use even if
that were desirable.

CD> Even though all the requests originate from the same MAC address,
CD> the DHCP server gives each request a unique response.

This may be configurable on the server, but honestly I'd just use a
short lease time.

- J<

Loading...