You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by viola lu <vi...@gmail.com> on 2010/07/24 03:22:57 UTC
Re: Farming-Application stops On All Nodes When "Master" Instance is
Stopped
hi,
WADI is targeted for exceptional case such as
"ctl-c" , "kill -9" shutdown web container, if you directly shutdown server,
it won't replicate session.
You can refer to section "What are WADI's goals?" of wadi page:
http://wadi.codehaus.org/faq.html#status, for your convenience, i pasted it
here:
What are WADI's goals? [08/06/04] In the Web tier, we can crystallise WADI's
goals into two stages:
- To be able to walk into your web farm and 'ctl-c' any webcontainer node
without losing any HttpSessions (i.e. customers).
- To be able to walk into the same web farm and 'kill -9' any
webcontainer node without losing any HttpSessions (i.e. customers).
The first of these two cases is important because it allows easy maintenance
of existing h/w or s/w. This may seem a trivial requirement, but many
existing solutions are time-consuming and/or error-prone (involving draining
sessions off target nodes over long periods etc.), to the point that many
sites simply accept that maintenance will impact quality of service. The
second of these two cases deals with a more exceptional case - the
catastrophic failure of a webcontainer node. As online competition for
business increases, systems are being required to provide higher and higher
levels of availibility. This can be critical in particular areas. The
ability to preserve web-tier state beyond the failure of its node is
correspondingly an increasing requirement.
On Sat, Jul 24, 2010 at 3:22 AM, rjowens <rj...@us.ibm.com> wrote:
>
> I have two installations of Geronimo 2.1.5 installed on the same test
> server.
> Each installation has multiple instances. I’ve created a cluster using
> installation1, instance1 (nodeA) and installation2, instance2 (nodeB). The
> logs indicate that each node is a cluster member.
>
> To help with application management, I’ve created a Farm with nodeA and
> nodeB as the only members. The test application was successfully deployed
> to
> the MasterConfigurationStore and is available on both nodes. Also,
> stopping
> the application using G_MASTER will stop the application on both nodes. So
> far, so good. All seems to be working fine.
>
> The problem comes when I do a graceful shutdown of the Geronimo instance
> which I used to deploy the application to the MasterConfigurationStore
> (nodeA). Shutting down this instance also causes the application on nodeB
> to
> stop. Not so if I “kill -9” the specific instance process.
> Is this the expected reaction to a graceful shutdown?
>
> Also, I tried configuring the default instance of installation1 as a member
> of the Farm and than deploying the app to it (rmi=1099). The app deploys
> okay to the clustered instances but the app on installation1, instance1
> (nodeA) will not start and stop through the Farm. Any suggestions?
>
> Here’s some information on my configuration:
>
> config-substitutions.properties
>
> nodeA
> PortOffset=200
> ClusterNodeName=nodeA
> WADIClusterName=WADI_CLUSTER
> FarmName=WADI_FARM
> RemoteDeployHostname=localhost
>
> nodeB
> PortOffset=410
> ClusterNodeName=nodeB
> WADIClusterName=WADI_CLUSTER
> FarmName=WADI_FARM
> RemoteDeployHostname=localhost
>
> config.xml
>
> nodeA
>
> <module name="org.apache.geronimo.configs/farming/2.1.5/car">
> <gbean name="NodeInfo">
> <attribute name="name">${ClusterNodeName}</attribute>
> </gbean>
> <gbean name="ClusterInfo">
> <attribute name="name">${FarmName}</attribute>
> </gbean>
> <gbean
>
> name="org.apache.geronimo.configs/farming/2.1.5/car?ServiceModule=org.apache.geronimo.configs/farming/2.1.5/car,j2eeType=NodeInfo,name=nodeB"
> gbeanInfo="org.apache.geronimo.farm.config.BasicNodeInfo">
> <attribute name="name">nodeB</attribute>
> <attribute
>
> propertyEditor="org.apache.geronimo.farm.config.BasicExtendedJMXConnectorInfoEditor"
> name="extendedJMXConnectorInfo">
> <ns:javabean
> class="org.apache.geronimo.farm.config.BasicExtendedJMXConnectorInfo"
> xmlns:ns4="http://geronimo.apache.org/xml/ns/attributes-1.2"
> xmlns:ns="http://geronimo.apache.org/xml/ns/deployment/javabean-1.0"
> xmlns="">
> <ns:property name="username">system</ns:property>
> <ns:property name="password">manager</ns:property>
> <ns:property name="protocol">rmi</ns:property>
> <ns:property name="host">localhost</ns:property>
> <ns:property name="port">1509</ns:property>
> <ns:property name="urlPath">JMXConnector</ns:property>
> <ns:property name="local">false</ns:property>
> </ns:javabean></attribute>
> </gbean>
> </module>
>
> nodeB
>
> <module name="org.apache.geronimo.configs/farming/2.1.5/car">
> <gbean name="NodeInfo">
> <attribute name="name">${ClusterNodeName}</attribute>
> </gbean>
> <gbean name="ClusterInfo">
> <attribute name="name">${FarmName}</attribute>
> </gbean>
> <gbean
>
> name="org.apache.geronimo.configs/farming/2.1.5/car?ServiceModule=org.apache.geronimo.configs/farming/2.1.5/car,j2eeType=NodeInfo,name=nodeA"
> gbeanInfo="org.apache.geronimo.farm.config.BasicNodeInfo">
> <attribute name="name">nodeA</attribute>
> <attribute
>
> propertyEditor="org.apache.geronimo.farm.config.BasicExtendedJMXConnectorInfoEditor"
> name="extendedJMXConnectorInfo">
> <ns:javabean
> class="org.apache.geronimo.farm.config.BasicExtendedJMXConnectorInfo"
> xmlns:ns4="http://geronimo.apache.org/xml/ns/attributes-1.2"
> xmlns:ns="http://geronimo.apache.org/xml/ns/deployment/javabean-1.0"
> xmlns="">
> <ns:property name="username">system</ns:property>
> <ns:property name="password">manager</ns:property>
> <ns:property name="protocol">rmi</ns:property>
> <ns:property name="host">localhost</ns:property>
> <ns:property name="port">1299</ns:property>
> <ns:property name="urlPath">JMXConnector</ns:property>
> <ns:property name="local">false</ns:property>
> </ns:javabean></attribute>
> </gbean>
> </module>
>
> Application deployment:
>
> deploy.sh -u system -p manager -port 1299 deploy --targets
>
> "org.apache.geronimo.configs/farming/2.1.5/car?ServiceModule=org.apache.geronimo.configs/farming/2.1.5/car,j2eeType=ConfigurationStore,name=MasterConfigurationStore"
> NodeDetection.zip geronimo-web.xml
>
> Any help is appreciated. Thanks
> --
> View this message in context:
> http://apache-geronimo.328035.n3.nabble.com/Farming-Application-stops-On-All-Nodes-When-Master-Instance-is-Stopped-tp990659p990659.html
> Sent from the Users mailing list archive at Nabble.com.
>
--
viola
Re: Farming-Application stops On All Nodes When "Master" Instance
is Stopped
Posted by rjowens <rj...@us.ibm.com>.
hi,
Thanks.
As you say below, the node surviving node continues to work fine when I
"kill -9" the other. My problem is that when I do a "graceful" shutdown of
the node that contains the "MasterConfigurationStore". When I do this it
not only shuts down the node and obviously that node's application, but it
also shuts down the application on the surviving node. This is a problem.
Ron
From: "viola.lu [via Apache Geronimo]" <ml-node
+991347-874508254-315501@n3.nabble.com>
To: Ronald J Owens/Seattle/IBM@IBMUS
Date: 07/23/2010 08:23 PM
Subject: Re: Farming-Application stops On All Nodes When "Master"
Instance is Stopped
hi,
WADI is targeted for exceptional case such as
"ctl-c" , "kill -9" shutdown web container, if you directly shutdown
server, it won't replicate session.
You can refer to section "What are WADI's goals?" of wadi page:
http://wadi.codehaus.org/faq.html#status, for your convenience, i pasted it
here:
What are WADI's goals? [08/06/04]
In the Web tier, we can crystallise WADI's goals into two stages:
To be able to walk into your web farm and 'ctl-c' any
webcontainer node without losing any HttpSessions (i.e.
customers).
To be able to walk into the same web farm and 'kill -9' any
webcontainer node without losing any HttpSessions (i.e.
customers).
The first of these two cases is important because it allows easy
maintenance of existing h/w or s/w. This may seem a trivial
requirement, but many existing solutions are time-consuming and/or
error-prone (involving draining sessions off target nodes over long
periods etc.), to the point that many sites simply accept that
maintenance will impact quality of service. The second of these two
cases deals with a more exceptional case - the catastrophic failure
of a webcontainer node. As online competition for business increases,
systems are being required to provide higher and higher levels of
availibility. This can be critical in particular areas. The ability
to preserve web-tier state beyond the failure of its node is
correspondingly an increasing requirement.
On Sat, Jul 24, 2010 at 3:22 AM, rjowens <[hidden email]> wrote:
I have two installations of Geronimo 2.1.5 installed on the same test
server.
Each installation has multiple instances.  I’ve created a cluster
using
installation1, instance1 (nodeA) and installation2, instance2
(nodeB). Â The
logs indicate that each node is a cluster member.
To help with application management, I’ve created a Farm with nodeA
and
nodeB as the only members. The test application was successfully
deployed to
the MasterConfigurationStore and is available on both nodes. Â Also,
stopping
the application using G_MASTER will stop the application on both
nodes. Â So
far, so good. Â All seems to be working fine.
The problem comes when I do a graceful shutdown of the Geronimo
instance
which I used to deploy the application to the
MasterConfigurationStore
(nodeA). Shutting down this instance also causes the application on
nodeB to
stop. Not so if I “kill -9†the specific instance process.
Is this the expected reaction to a graceful shutdown?
Also, I tried configuring the default instance of installation1 as a
member
of the Farm and than deploying the app to it (rmi=1099). Â The app
deploys
okay to the clustered instances but the app on installation1,
instance1
(nodeA) will not start and stop through the Farm. Â Any suggestions?
Here’s some information on my configuration:
config-substitutions.properties
nodeA
PortOffset=200
ClusterNodeName=nodeA
WADIClusterName=WADI_CLUSTER
FarmName=WADI_FARM
RemoteDeployHostname=localhost
nodeB
PortOffset=410
ClusterNodeName=nodeB
WADIClusterName=WADI_CLUSTER
FarmName=WADI_FARM
RemoteDeployHostname=localhost
config.xml
nodeA
<module name="org.apache.geronimo.configs/farming/2.1.5/car">
    <gbean name="NodeInfo">
      <attribute name="name">$
{ClusterNodeName}</attribute>
    </gbean>
    <gbean name="ClusterInfo">
      <attribute name="name">${FarmName}</attribute>
    </gbean>
    <gbean
name="org.apache.geronimo.configs/farming/2.1.5/car?ServiceModule=org.apache.geronimo.configs/farming/2.1.5/car,j2eeType=NodeInfo,name=nodeB"
gbeanInfo="org.apache.geronimo.farm.config.BasicNodeInfo">
      <attribute name="name">nodeB</attribute>
      <attribute
propertyEditor="org.apache.geronimo.farm.config.BasicExtendedJMXConnectorInfoEditor"
name="extendedJMXConnectorInfo">
        <ns:javabean
class="org.apache.geronimo.farm.config.BasicExtendedJMXConnectorInfo"
xmlns:ns4="http://geronimo.apache.org/xml/ns/attributes-1.2"
xmlns:ns="http://geronimo.apache.org/xml/ns/deployment/javabean-1.0"
xmlns="">
          <ns:property
name="username">system</ns:property>
          <ns:property
name="password">manager</ns:property>
          <ns:property
name="protocol">rmi</ns:property>
          <ns:property
name="host">localhost</ns:property>
          <ns:property
name="port">1509</ns:property>
          <ns:property
name="urlPath">JMXConnector</ns:property>
          <ns:property
name="local">false</ns:property>
        </ns:javabean></attribute>
    </gbean>
  </module>
nodeB
<module name="org.apache.geronimo.configs/farming/2.1.5/car">
    <gbean name="NodeInfo">
      <attribute name="name">$
{ClusterNodeName}</attribute>
    </gbean>
    <gbean name="ClusterInfo">
      <attribute name="name">${FarmName}</attribute>
    </gbean>
    <gbean
name="org.apache.geronimo.configs/farming/2.1.5/car?ServiceModule=org.apache.geronimo.configs/farming/2.1.5/car,j2eeType=NodeInfo,name=nodeA"
gbeanInfo="org.apache.geronimo.farm.config.BasicNodeInfo">
      <attribute name="name">nodeA</attribute>
      <attribute
propertyEditor="org.apache.geronimo.farm.config.BasicExtendedJMXConnectorInfoEditor"
name="extendedJMXConnectorInfo">
        <ns:javabean
class="org.apache.geronimo.farm.config.BasicExtendedJMXConnectorInfo"
xmlns:ns4="http://geronimo.apache.org/xml/ns/attributes-1.2"
xmlns:ns="http://geronimo.apache.org/xml/ns/deployment/javabean-1.0"
xmlns="">
          <ns:property
name="username">system</ns:property>
          <ns:property
name="password">manager</ns:property>
          <ns:property
name="protocol">rmi</ns:property>
          <ns:property
name="host">localhost</ns:property>
          <ns:property
name="port">1299</ns:property>
          <ns:property
name="urlPath">JMXConnector</ns:property>
          <ns:property
name="local">false</ns:property>
        </ns:javabean></attribute>
    </gbean>
  </module>
Application deployment:
deploy.sh -u system -p manager -port 1299 deploy --targets
"org.apache.geronimo.configs/farming/2.1.5/car?ServiceModule=org.apache.geronimo.configs/farming/2.1.5/car,j2eeType=ConfigurationStore,name=MasterConfigurationStore"
NodeDetection.zip geronimo-web.xml
Any help is appreciated. Â Thanks
--
View this message in context:
http://apache-geronimo.328035.n3.nabble.com/Farming-Application-stops-On-All-Nodes-When-Master-Instance-is-Stopped-tp990659p990659.html
Sent from the Users mailing list archive at Nabble.com.
--
viola
View message @
http://apache-geronimo.328035.n3.nabble.com/Farming-Application-stops-On-All-Nodes-When-Master-Instance-is-Stopped-tp990659p991347.html
To unsubscribe from Farming-Application stops On All Nodes When "Master"
Instance is Stopped, click here.
--
View this message in context: http://apache-geronimo.328035.n3.nabble.com/Farming-Application-stops-On-All-Nodes-When-Master-Instance-is-Stopped-tp990659p999442.html
Sent from the Users mailing list archive at Nabble.com.