dev@glassfish.java.net

Re: Questions about the Load Balance Plugin forGF V2

From: vince kraemer <Vince.Kraemer_at_Sun.COM>
Date: Thu, 24 Aug 2006 12:34:56 -0700

satish viswanatham wrote:
> vince kraemer wrote:
>
> [snip]
>> What asadmin command supports the 'configurable health check'
>> feature? GUI screen?
>>
> asadmin create-health-checker CLI command configures/adds health check.

I assume there is a remove-health-checker CLI command, too....

> [snip]
>> Slide 6:
>>
>> is there a stand-alone verifier for the loadbalancer.xml? Is there a
>> way to check the lbxml file BEFORE you plunk it onto a machine that
>> has the lb plugin installed?
>
> No. asadmin (GlassFish) is supposed to generate a correct
> loadbalancer.xml.

If there is ever any reason for a user to edit the lbxml file, I would
encourage you to think about having a stand-alone validator....

>
>>
>> Are all the customizations of the loadbalancer.xml file supported by
>> CLI commands and GUI screens? If they aren't, what percentage of them
>> are?
>
>
> Our aim support 100% loadbalancer.xml. We did that for
> sun-loadbalancer_1_1.dtd. However pluggable load balacing feature is
> added and we need to support sun-loadbalancer_1_2.dtd. Out of 8
> ELEMENTS in 1_2.dtd, we support 7 of them.

Are all the attributes of the 8 elements supported? What is the percentage?

>
>> If few of the customizations are supported, it seems like we need to
>> have a command like 'asadmin merge-http-lb-config –config
>> cluster1-lb-config "C:\loadbalancer.xml"', which would merge the data
>> in the file with the data in the DAS's cluster1-lb-config object....
>> Or is there an 'asadmin import-http-lb-config -config
>> foo-http-lb-config "C:\loadbalancer.xml"' to read the content of a
>> lbxml file and store it in a DAS object?
>
> We want to avoid this model.

That is understandable.... But that places a very high burden on the CLI
and GUI... Any bug in the CLI/GUI may require that folks do hand
edits... Once the lbxml file is edited by hand, users will want to
preserve the data that they entered into the DAS object, so they don't
need to redo work when they use the CLI and/or GUI to modify the DAS's
config object.
>
>>
>>
>> Slide 10:
>>
>> After the LB configuration is generated, how does it get to the
>> machine that is doing the LB? I kept hearing "copy manually"....
>> which seems primitive.
>>
>> Is there any "magic" that users need to do to their apps to allow
>> them to be load-balanced? Conversely, is there any "bad magic" users
>> could do to their apps which would make them non-balancable? Does the
>> enable-http-lb-application check for those things (good and bad magic)?
>>
> Users do not need to manully copy the loadbalancer.xml. Harsha
> implemented to "Auto Apply" feature. This uses SSL connection between
> DAS and LB, which has some setup issues or some other small issues.
> Hopefully these will be ironed out by MS2? so that we can talk about
> it in detail. You can learn more about this feature in section 4.1.2
> of
> http://www.glassfishwiki.org/gfwiki/attach/OnePagersOrFunctionalSpecs/LB-onepager.txt
>

This is an important user experience issue. Why didn't you talk about
this feature in your presentation?

Are there other aspects of the "final" user experience that you did not
mention?

As an aside: has this "SSL connection between DAS to the LB" been
presented to the security team? What prevents someone from connecting
to the LB and feeding the LB a config that is a DOS attack?
>
> [snip]
>>
>> Do you have a set of use-cases for the features of the lb plugin?
>>
>> Is there a dtd/schema for the loadbalancer.xml file?
>
> Yes. it is at $AS-INSTALLlib/lbplugin/lib/dtds

The link to the DTD in the repository is:

http://fisheye5.cenqua.com/browse/glassfish/admin-ee/lb-admin/dtds/sun-loadbalancer_1_1.dtd
and

http://fisheye5.cenqua.com/browse/glassfish/admin-ee/lb-admin/dtds/sun-loadbalancer_1_2.dtd
>
>> Is there any kind of map between the elements of the lbxml and the
>> asadmin commands that manipulate the object created by the
>> create-http-lb-config command?
>>
> I can write a short blog about that, but we have descriptions and all
> the use cases and commands are described at
> http://docs.sun.com/app/docs/doc/819-2555/6n4r9qo8h?a=view

I will take a look through it...
>
> [snip]
>
> Hope I answered your questions.

Pretty much...

Thanks,
vbk