Hi William,

On 06/18/10 07:57 AM, William Schumann wrote:
Sarah,
On 06/17/10 04:41 PM, Sarah Jelinek wrote:

Advantages:
- documents are valid and can be parsed and validated individually without manipulation - useless tags ai_criteria_manifest, ai_embedded_manifest, sc_embedded_manifest and their closing tags disappear
Disadvantages:
- AI web server must dynamically merge the documents for the default case (mitigated by the small size of the documents)
Why does it have to merge these? We apply the SC manifest in it's entirety to the client for use by SMF, right? So, merging them for transmission and then separating them on the client seems like work we don't need to do.
Well, presently the SC manifest is embedded into the AI manifest. Although they both contain system configuration information, they are of two different incompatible formats. It makes some sense to send them with one HTTP GET to reduce the number of network transactions - I just think it's simpler to merge them in a standard format like MIME, then separate them on the client.

We may presently do this, but I think that even if we allow for specifying the location of the SC manifest remotely we can validate it on the client. Or, if the user provides a validation method we can use that as well at manifest parse time. A user can also validate it independently using xmllint. I realize that the user could change it in between validation and the use of it, rendering it invalid, but we error out on the client if that happens.
OK, that addresses any desired validation.

With the new schema definition I don't propose merging it. It will be using a DTD as will the AI manifest so it isn't different any more.
How do you deliver more an AI manifest with multiple SC manifests? How would the protocol work, RE: HTTP GET requests?
So, after chatting on the phone it became clear to me I was misunderstanding the term "merge" in this context. Using the MIME multipart document to transport the AI manifest and multiple SC manifests will work. The AI client just has to parse out the SC manifests and apply them to the alt root as required.



I also agree with Dave that the SMF services doing the configuration should prompt for the correct data if it is missing.
Yes, this is what the Enhanced SMF Profiles project will give us.

How will this give it to us, and not derived manifests?
Upon first boot, SMF services will prompt for missing required sysconfig properties.


- user has 2 default documents to maintain (mitigate this by supplying commands to help the user edit them)

Propose that the AI and SC manifests be encoded in MIME multipart. It allows us to change encoding on the server side without having to change the client - the client would just decode it according to the header info. Also, if more information were added to the download, it could more easily be bundled and parsed using MIME standard routines. MIME parts can be separated using a normal text editor.

It isn't clear to me why we need to encode these in MIME. I believe that the SC manifest should and can be managed separately, since we have to apply these separately to the client system. We shouldn't be in the business of merging and separating when the use case doesn't require it.
Can you think of such a use case?

Sure, I can think of a use case. I think allowing the users to separately define and manage the SC manifest from the AI manifests, which are tied to a service, seems reasonable. As I have noted before it provides more scalability with regard to reuse of the SC manifests. I think it also easier to manage from a sysadmin perspective.
This approach would reduce scalability is when a single AI manifest is desired, but different SC manifests; e.g., same hardware configurations, but different root passwords. However, this case could be accommodated through some type of derivation or substitution based on criteria, which could include service, IP network, MAC address, etc. as in the proposal.

For example, if the sysadmin had a scheme in which SC manifest file names were based on service name, a replacement tag for service name could be embedded in the SC manifest name specification in the AI manifest:
<sc_manifest url="/export/SC_manifests/${service_name}.xml" />

Since SC manifests remain under services, security considerations would remain the same as proposed.
...

I also think that allowing multiple SC manifests to be defined and used by an AI service improves scalability for the sysadmin. In particular if we allow a reference to the SC manifests as opposed to naming them and requiring an association to the image.
Yes, multiple SC manifest files increases scalability, and it is true that the naming is not necessary for increasing scalability.

Now, consider some of the complexities that would accompany multiple manifests: - Can the user edit the previously submitted files individually? The UI would have to support it.

Why do we want the installadm UI(which I assume you are referring to here) to manage the SC manifests. If they are referenced in the AI manifest, but are not embedded in the manifest I don't think we need to associate it with a service, but rather let the manifest definition that is associated with the service define this.
Yes, that would work.

- Are the individually submitted files subsumed into the AI server database (which would protect them), or are they just pathnames to files that are included dynamically at install time?

I think they are just path names, not put in the AI server db.

OK. The difference between this and what is in the proposal is that if the SC manifests are forced through a UI, they are verified at that time, which is not a requirement, anyhow.

No, I think the only validation requirement is if the user specifies a validation method that is associated with the referenced SC manifest, then we run that, otherwise, validation happens as it would with SMF at boot time.


- How would duplicate properties be handled? Is the order of the files now an issue? Are UI commands to change the order of the files necessary?
No, I don't think UI does anything. If the properties are duplicated it is my assumption they will be processed by SMF as defined and the SMF services will apply properties as they get them. In order.
Correct, the AI manifest would dictate the order.

Sure, basically the order a user specifies multiple SC manifests, if they contain multiple definitions for the same service, the ordering in AI means we put them on the system in that order. SMF would process them in order I would assume.


- If the user wants to remove a file from the list, a option to specify the file to remove must be added to the UI.
No, again I think if the SC manifest is referenced in the AI manifest and not embedded it will not require UI changes. If the user wants to reference a different SC manifest they have to update the AI manifest and and change it within the service as usual.
Agreed - the sysadmin just removes a line from the AI manifest.

The main difference with what you are proposing is that the SC manifest information is not in a database for central management and reference, but now within AI manifests. Central management and reference are still possible, though through the AI manifests. Central management of SC manifests is not a requirement.

So, I think that specifying the inclusions from the AI manifest would be fine.

ok.

thanks,
sarah
*****
Thank you,
William
_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss

_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss

Reply via email to