<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<br>
<div class="moz-cite-prefix">On 2/21/2014 2:29 PM, Andrew "Arthur"
Summers wrote:<br>
</div>
<blockquote
cite="mid:CAP0YRgZwcu+Ner1LnvDb1_StH_SOynogV-EaO_3uwGOf9qBvnw@mail.gmail.com"
type="cite">
<div dir="ltr">
<p class="MsoNormal">As I’m sure you’re aware, no enterprise
datacenter uses DHCP for its systems. What’s more, even if
DHCP is used for backend interfaces, this becomes a problem
when NATs and subnets are part of the picture. Even more
frustrating is the fact that reconfiguring a system or
attaching an ISO to an iLO or a VM usually requires involving
a different team, filling out a form, logging hours, and
jumping through a dozen or so hoops. Further, performing a
zero-touch install generally requires creating a preseeded
image for every target, and these generally aren’t as tiny as
an iPXE ISO.</p>
</div>
</blockquote>
These are mostly management issues, not technical ones. There is no
reason that DHCP can't be used with different subnets, nor behind
NAT (though, you need the NAT box to do it). Subnets can just use
IP helpers, as someone else mentioned.<br>
<br>
<br>
<blockquote
cite="mid:CAP0YRgZwcu+Ner1LnvDb1_StH_SOynogV-EaO_3uwGOf9qBvnw@mail.gmail.com"
type="cite">
<div dir="ltr">When the client boots, iPXE loads, configures
static IP information, and reaches out to the repository. If the
repository is unavailable for some reason, iPXE continues to
boot from local media. Otherwise, the repository looks at its
database for config information for the client. If this is the
first request from the client or it has been marked for
reimaging, the configuration data is dynamically returned to the
client, the database is updated to allow the client to boot from
local media on subsequent boots, and the client boots
appropriately. If the client has previously made a request or is
not marked for reimaging, the repository simpy dynamically
returns a script instructing iPXE to boot the client from local
media.
</div>
</blockquote>
<br>
It's all doable, it just depends on how much time you want to spend
doing it. I've implemented something pretty similar for us, but
it's not really in any sort of state where I could distribute it. I
imagine the problems you'll have are not technical ones, but
cultural ones. If you've already got complicated server management,
bringing some new technology onboard isn't really going to help.<br>
<br>
<br>
<div class="moz-cite-prefix">On 3/14/2014 6:10 AM, Floris Bos wrote:<br>
</div>
<blockquote cite="mid:5322D598.4000500@je-eigen-domein.nl"
type="cite">
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
- While iPXE is able to pass the static IP configuration easily to
the installer of Linux distributions as kernel parameters, this is
not the case for other operating systems. If you also want fully
automated deployments of Windows and FreeBSD you have a problem.<br>
</blockquote>
It's not really a problem, it's just a *lot* more work. I've solved
this for both Windows and FreeBSD, and it's pretty annoying.<br>
<br>
Windows is actually the easier of the two (assuming your doing
installs). You create a WinPE image, and have it boot from DHCP and
start the Windows installer. The Windows installer uses an unattend
file to complete the installation. Your unattend file contains a
configuration that causes another script to run after the OS install
complete. Said script reaches out to a remote server to grab the
install information. In theory, you could even pull this
information right from DHCP again. Windows does have an API for
this, though I can't say that I've used it. <br>
<br>
There are a lot of irritating steps for Windows, but it's definitely
doable if you're motivated enough. I've been through all sorts of
different methods[1] for installing Windows, and this is the one I
like best.<br>
<br>
FreeBSD is pretty similar. Generate yourself an iso with mfsbsd,
and use that to invoke one of the FreeBSD installers. Again, this
would have to reach out to a remote server to grab configuration
information.<br>
<br>
<br>
[1]
<a class="moz-txt-link-freetext" href="http://blog.devicenull.org/2013/08/09/the-evolution-of-our-windows-installation-methods.html">http://blog.devicenull.org/2013/08/09/the-evolution-of-our-windows-installation-methods.html</a><br>
</body>
</html>