Hi, currently I'm working in a project and I have an issue implementing ELB
as a load balancer and Identity Server as an Identity and PDP provider in a
cluster.

I would appreciate so much any help you can give me with the following
implementation:

*The scenario*

- Two ELB in fail-over mode with a virtual IP virtual and KeepAlive, each
node in separated machines

- One ESB cluster ESB with one manager node and two workers nodes; these
nodes are in other machines separated from the ELB nodes.

- One IS cluster with two nodes; these ones are in different machines
separated from ELB and ESB machines.

- I have Open LDAP as User Store

- SVN as an artifact repository for syncing using Hazelcast

- All the nodes have a shared UM DB and a shared registry

- I have applied all the patches available for kernel 4.2.0 to the nodes of
ELB, IS and ESB (patch 0010 inclusive)

The ELB nodes start correctly, the same for the ESB nodes which join the
cluster without any problems; I can verify this in the ELB and ESB
wso2carbon.log; also I validated the load balancing when I send requests to
the ESB worker nodes from the ELB.

But, when I start the first IS node I get the following messages in
wso2carbon.log
of IS


TID: [0] [IS] [2015-05-18 20:09:30,178] INFO
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent} -
Cluster domain: example.wso2is.domain
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent}

TID: [0] [IS] [2015-05-18 20:09:30,179] INFO
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent} -
Using wka based membership management scheme
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent}

TID: [0] [IS] [2015-05-18 20:09:30,180] INFO
{org.wso2.carbon.core.clustering.hazelcast.util.MemberUtils} - Added
member: Host:IP_Virtual_ELB, Remote Host:null, Port: 4050, HTTP:-1,
HTTPS:-1, Domain: null, Sub-domain:null, Active:true
{org.wso2.carbon.core.clustering.hazelcast.util.MemberUtils}

TID: [0] [IS] [2015-05-18 20:09:35,468] INFO
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent} -
Hazelcast initialized in 5286ms
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent}

TID: [0] [IS] [2015-05-18 20:09:35,546] INFO
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent} -
Local member: [4c91357f-b563-49a2-b71b-887b3109642a] -
Host:IP_Nodo1_Identity, Remote Host:null, Port: 4301, HTTP:9763,
HTTPS:9443, Domain: example.wso2is.domain, Sub-domain:mgt, Active:true
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent}

TID: [0] [IS] [2015-05-18 20:09:35,558] INFO
{org.wso2.carbon.core.clustering.hazelcast.util.MemberUtils} - Added
member: Host:IP_Nodo1_Identity, Remote Host:null, Port: 4301, HTTP:9763,
HTTPS:9443, Domain: interacciones.wso2is.domain, Sub-domain:mgt,
Active:true {org.wso2.carbon.core.clustering.hazelcast.util.MemberUtils}

TID: [0] [IS] [2015-05-18 20:09:35,650] INFO
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent} -
Cluster initialization completed
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent}

TID: [0] [IS] [2015-05-18 20:09:35,652] INFO
{org.apache.tomcat.util.net.NioSelectorPool} - may 18, 2015 8:09:35 PM
org.apache.tomcat.util.net.NioSelectorPool getSharedSelector

INFORMACIÓN: Using a shared selector for servlet write/read
{org.apache.tomcat.util.net.NioSelectorPool}

TID: [0] [IS] [2015-05-18 20:09:35,653] INFO
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent} -
Elected this member [4c91357f-b563-49a2-b71b-887b3109642a] as the
Coordinator for the cluster [example.wso2is.domain]
{org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent}

And the wso2carbon.log of ELB does not have any messages referring to this
IS node that is just starting.

The services defined in loadbalancer.conf of ELB are as follows:
*esb* {
         domains {
         example.wso2esb.domain {
            tenant_range *;
            group_mgt_port 4000;
            worker {
                    hosts wso2esb.example.com;
            }
         }
       }
    }

*identity* {
    domains {
         example.wso2is.domain {
            tenant_range *;
            group_mgt_port 4050;
            mgt{
                hosts wso2is.example.com;
            }
        }
    }
}

If I try to access from a client PC the IS console using the cirtual IP of
the ELB, I get the following message in the ELB log:
TID: [0] [ELB] [2015-05-19 13:13:31,705] ERROR
{org.wso2.carbon.lb.endpoint.endpoint.TenantAwareLoadBalanceEndpoint} - No
application members available
{org.wso2.carbon.lb.endpoint.endpoint.TenantAwareLoadBalanceEndpoint}


 the content of /etc/hosts is:

*Client:*

ELB_Virtual_IP wso2is.example.com
ELB_Virtual_IP wso2esb.example.com
ESB_Manager_IP mgt.wso2esb.example.com

*ELB **nodes**:*
ELB_Virtual_IP wso2is.example.com
ELB_Virtual_IP wso2esb.example.com
ESB_Manager_IP mgt.wso2esb.example.com

*IS **Node**:*
ELB_Virtual_IP wso2is.example.com

*ESB nodes:*

ELB_Virtual_IP wso2is.example.com
ELB_Virtual_IP wso2esb.example.com

ESB_Manager_IP mgt.wso2esb.example.com


 *axis2.xml of IS node (clustering section)*

<clustering
class="org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent"

enable="true">

 <parameter name="AvoidInitiation">true</parameter>

 <parameter name="membershipScheme">wka</parameter>

<parameter name="domain">example.wso2is.domain</parameter>

 <parameter name="mcastPort">45564</parameter>

 <parameter name="mcastTTL">100</parameter>

 <parameter name="mcastTimeout">60</parameter>

 <parameter name="localMemberHost">IS_NODE_IP</parameter>

<parameter name="localMemberPort">4301</parameter>

<parameter name="properties">

<property name="backendServerURL"
value="https://${hostName}:${httpsPort}/services/"/>


<property name="mgtConsoleURL" value="https://${hostName}:${httpsPort}/"/>

<property name="subDomain" value="mgt"/>

</parameter>

 <members>

<member>

<hostName>ELB_Virtual_IP</hostName>

<port>4050</port>

</member>

</members>

 <groupManagement enable="false">

<applicationDomain name="interacciones.wso2is.domain"

description="IS group"

agent="org.wso2.carbon.core.clustering.hazelcast.HazelcastGroupManagementAgent"


subDomain="mgt"

port="4301"/>

</groupManagement>

</clustering>


 *carbon.xml of IS Node*

<HostName>wso2is.example.com</HostName>

 <MgtHostName>wso2is.example.com</MgtHostName>


Please, let me know if you need some more detail to complete the required
analysis.

Thanks by advance
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to