dev@glassfish.java.net

Re: Review of http-lb commands and some other questions....

From: Satish Viswanatham <Satish.Viswanatham_at_Sun.COM>
Date: Thu, 24 Aug 2006 17:01:04 -0700

vince kraemer wrote:

> satish viswanatham wrote:
>
>> vince kraemer wrote:
>>
>> [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
>
>
> I can see why you want to automate the generation of the
> loadbalancer.xml...
>
> Possible bad attribute name or a doc error:
> disable-timeout-in-minutes... The doc says seconds.... (see lines 39
> and 40 of
> http://fisheye5.cenqua.com/browse/glassfish/admin-ee/lb-admin/dtds/sun-loadbalancer_1_2.dtd?r=1.1.1.1)
>

Filed a bug. bug# 6463768.

>
>>
>>> 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
>>
>
> http://docs.sun.com/app/docs/doc/819-2555/6n4r9qo8h?a=view#abdht
>
> What command would be used to change the
> response-timeout/HTTPS-routing/reload-interval/monitor/routecookie of
> an established http-lb-config object?
>
Dotted name command. Hanan, we should document this use case too.

> It seems like routecookie is not documented correctly....
>
> What happens if I use delete-http-lb-config, but do not delete the
> loadbalancer.xml file from the machine that has the lb installed?

It is not supposed to delete the lb file. delete-http-lb-config only
removes the config object on DAS.

>
> Why does the user need to remove-http-lb-ref the instances and
> clusters BEFORE they can execute the delete-http-lb-config command?
>
> http://docs.sun.com/app/docs/doc/819-2555/6n4r9qo8h?a=view#abdhu
>
> I have a real problem mapping create-http-lb-ref to content in the
> loadbalancer.xml....
>
Some of our users may also have the same problem of mapping the commands
to loadbalancer.xml. I will work with docs to document this more in
detail. Copying Hanan from docs.

> Consider a domain that has a stand-alone instance (sai1) and a cluster
> (c1) that consists of two clustered instances (ci1, ci2)....
>
> If I create an http-lb-config, without a target, I assume that I get
> something like:
>
> <loadbalancer/>


Yes.

>
> [I would end up with some property elements IF I had given them as
> arguments to the create-http-lb-config command.... right?]
>
Yes.

> So, when I create a ref to sai1 I think I end up with something like
> this....
>
> <loadbalancer>
> <cluster name="sai1"><instance name="sai1" enabled="false"
> listeners="http://sai1:8080"/></cluster>
> </loadbalancer>
>
> Which command allows me to set or change the policy attribute of the
> cluster element?

Policy support etc is added in 9.0, for example if you look at CLIs in
9.0
http://appserver.sfbay/cgi-bin/body.pl?options=/as9ee/navigation.html&content=/as9ee/pm.html&curTab=2,
you will get an idea. I will post them on GlassFish soon.

 create-http-lb-ref [--terse=false] [--echo=false] [--interactive=true] [-
-host localhost] [--port 4849] [--secure|-s=true] [--user admin_user]
[--passwor
dfile file_name] [--lbpolicy policy] [--lbpolicymodule path-to-module]
[--health
checkerurl url] [--healthcheckerinterval interval-in-seconds]
[--healthcheckerti
meout timeout-in-seconds] [--lbenableallapplications]
[--lbenableallinstances] -
-config config_name target

>
> Which command allows me to set/change the listeners/weight attribute
> of the instance element? If I add a new http-listener to an instance,
> does that get added automatically to the config?

Yes, it is.

>
> Which command allows me to set/change the disable-timeout-in-minutes
> attribute of the instance element?
>
Hanan, we should also provide a link to syntax of LB related commands
from the following page:
http://docs.sun.com/app/docs/doc/819-2555/6n4r9qo8h?a=view#abdhu


> Is there a command/DD element that would change the "session idle
> timeout" that is referred to on line 45 of
> http://fisheye5.cenqua.com/browse/glassfish/admin-ee/lb-admin/dtds/sun-loadbalancer_1_2.dtd?r=1.1.1.1
>
>
> Is the default disable-timeout-in-minutes really 31 or is it "session
> idle timeout"+1?

Default is 31. disable-timeout-in-minutes CDATA "31"

>
> Is the user required to execute disable-http-lb-server before they
> can execute delete-http-lb-ref? The document strongly implies that
> the user must do one then the other? Why is that? Why can't we give
> the user a SINGLE command to delete the ref? [That command may
> perform a disable "under the covers"]
>
> http://docs.sun.com/app/docs/doc/819-2555/6n4r9qo8h?a=view#abdhv

We prefer do it explicitly on command and not to do "under the covers".
Unless we hear lot of complaints from users that do it "under the covers".

>
> Is there a way to enable all the servers in a config with just one
> command? Something like:
>
> asadmin enable-http-lb-servers <config object name>
>
> or
>
> asadmin enable-http-lb-server -config <config object name>
>
Yes, during asadmin create-http-lb-ref --lbenableallinstances --config
config_name target and asadmin create-http-lb-ref.

> It seems like the only way to do this today is to enter an
> enable-http-lb-server command for each server or cluster that may be
> in the config... That seems like it would be error prone... (people
> forgetting to enable an instance or cluster)...
>
> The same comment would apply to disable.
>
> http://docs.sun.com/app/docs/doc/819-2555/6n4r9qo8h?a=view#abdhw
>
> I have a similar question/suggestion for applications as the one I
> just made for servers...
>
> It looks like enable-http-lb-application implies a
> create-http-lb-application operation (adds a web-module entry into the
> http-lb-config...). How do I delete a web-module entry from an
> http-lb-config? Is there a remove-http-lb-application command that I
> missed?
>
> What command is used to set/change the attributes of a web-module
> element?
>
> What happens if the user undeploys an app that is enabled for load
> balancing?
>
> http://docs.sun.com/app/docs/doc/819-2555/6n4r9qo8h?a=view#abdhx

This is an existing RFE (# 6463784)

>
> How do I change the value of the properties that were used/defaulted
> when I created a health-checker?
>
Using the dotted name commands. Hanan, we should include this in the docs.

> It looks like the health-checker has additional properties, like
> active-healthcheck-enabled that are set via the property sub-element
> of loadbalancer... Why doesn't the health-checker element have a
> property sub-element for them?

These 2 properties are global to loadbalancer, not specific to a
particular health-checker.

>
> I hope these questions and comments contribute to the development of a
> better user experience for folks that need to create production sites
> on Glassfish v2.
>
Yes. Thanks for doing this. I am constantly looking for people to review
the feature set for completeness, correctness, user friendly-ness and
also the docs. I will also include the FAQ, that I am writing.

> vbk
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>