Dave Miner wrote:
> Dave Miner wrote:
>> Sarah Jelinek wrote:
>>> Dave Miner wrote:
>>>> Evan Layton wrote:
>>>>> Dave Miner wrote:
>>>>>> Evan Layton wrote:
>>>>>>> Problem statement:
>>>>>>>
>>>>>>> 1) A method is needed to match the OS version the AI server is 
>>>>>>> running on with
>>>>>>>     the OS version being installed.
>>>>>>
>>>>>> As Ethan noted, you mean "client" here.
>>>>>
>>>>> Yes that's correct. It probably should have be something more like 
>>>>> "the OS version being installed on the client".
>>>>>
>>>>>>
>>>>>>>        Note: There is currently information being logged which 
>>>>>>> shows
>>>>>>>              this but it's not used for anything.
>>>>>>> 2) A method of determining which OS version can support 
>>>>>>> installions of
>>>>>>>     which OS versions is needed.
>>>>>>> 3) This is something that the user should not have to keep track of
>>>>>>>     and should be maintained internally. Should 
>>>>>>> incompatibilities be
>>>>>>>     documented so that users can at least look up why we're 
>>>>>>> telling them
>>>>>>>     that they have incompatible OS versions?
>>>>>>>
>>>>>>
>>>>>> I think the part that's missing here is providing means to limit 
>>>>>> the incompatibility set.  For example, installing an updated 
>>>>>> version of pkg into the installation environment once booted, or 
>>>>>> other software that we might need.
>>>>>
>>>>> OK so this is an additional requirement that all the needed 
>>>>> packages and their proper versions are installed on the client. In 
>>>>> other words all the correct packages corresponding to the version 
>>>>> of the "entire" package are installed on the client?
>>>>>
>>>>
>>>> I don't think that's quite what I'm suggesting.  I'm suggesting 
>>>> that the client be capable of dynamically adapting itself to run 
>>>> the versions of executables required to correctly install a 
>>>> particular version of the software.
>>>
>>> This seems like a good overall goal to have, but my concerns about 
>>> this are that the executables required might not be limited enough 
>>> in scope to be able to effectively do this. I would think we would 
>>> need to have an understanding of how many versions we would be 
>>> willing to be 'off' or what/how many executables would need to 
>>> change to make this work.
>>>
>>> Just allowing an 'open' dynamic updating of the client seems too 
>>> unpredictable.
>>>
>>
>> I agree there are challenges, but IPS solves at least some of the 
>> problems for us.  One kind of "out there" idea I've had rattling 
>> around in my mind is packaging the automated installer environment as 
>> a zone and using the update-on-attach capability.
>>
>
> I hate replying to myself, but even more radically, based on the list 
> of packages supplied, calculate the version of the installation 
> environment required and assemble an installation zone on the fly from 
> an IPS repository...

I can see how this would work for our /usr and other filesystems we need 
read/write on the booted client to install the installer in to. The 
initial minimal zone size is ~140MB.  Then we have to add the pkgs we 
need to get the zone populated with what we need. This could take a bit 
of time, zone creation, pkg installation...and I am wondering if the 
client performance would become an issue if we did this.

Another thought I had is that we create a new mountpoint, /usr/install, 
or something like that, where our 'installer' bits get installed on the 
client. This allows us to not mess with the current /usr read only 
architecture, and we can mount this so that it is in tmpfs and install 
in to this space. We don't have ramdisk issues to contend with as a result.

This would require us to modify package(s) and live-fs-root to know the 
new location. My concern about zones is that it feels like it is a heavy 
weight solution to maybe what isn't a heavyweight problem. Analysis 
needs to be done to understand what files and pkgs comprise the 
'installer' in this scenario.

thanks,
sarah
****
>
> Dave
>


Reply via email to