GitHub user rahulsIOT opened a pull request:

    https://github.com/apache/phoenix/pull/236

    Loadbalancer

    Hi All,
    
    https://issues.apache.org/jira/browse/PHOENIX-3654
    
    The following changes are made in the pull request
    
    1. Added project phoenix-load-balancer. The project exposes Loadbalancer 
mechanism for thin client. 
    2. The following additional phoenix parameters is exposed in 
LoadBalancerConfiguration. These configuration is read from hbase-site.xml. The 
configuration are as follows
        clusterName = "phoenix.queryserver.base.path"
        serviceName = "phoenix.queryserver.service.name"
        defaultClusterName = "phoenix"
        defaultServiceName = "queryserver"
        zkLbUserName = "phoenix.queryserver.zookeeper.acl.username"
        zkLbPassword = "phoenix.queryserver.zookeeper.acl.password"
        defaultZkLbUserName = "phoenixuser"
        defaultZkLbPassword = "Xsjdhxsd"
    3. phoenix-load-balancer is not dependent on phoenix core, which was one of 
requirement for the project. It has dependencies on apache-curator and 
hbase-common for hbase configuration.
    4. The project phoenix-queryserver is modified such that when server loads 
up, it will find zookeeper configuration from hbase-site.xml and registers 
itself to the configuration. The registered node will have patch 
/clusterName/serviceName/hostname_port (e.g. /phoenix/queryserver/host1_1234). 
This will be emphimaral node and gets removed when session has ended. With each 
ephimeral node, there is a json attached. The Json is of the form 
{"host":"host1","port":"1234"}. In future this can be expanded to store more 
values for the node. The Node has ACL = digest with username:password as id. 
There is default username/password shared between Loadbalancer project and 
phoenix query server project. User can specify the username/password as 
properties 
"phoenix.queryserver.zookeeper.acl.username"/"phoenix.queryserver.zookeeper.acl.password"
 in hbase-site.xml. 
    5. For phoenix-queryserver , there is a dependency of 
phoenix-load-balancer. This is needed to load configuration related to only 
LoadBalancer. To avoid code duplication, we have kept all the configuration for 
LoadBalancer in the file LoadBalancerConfiguration.java within project 
phoenix-load-balancer. 
    6. IT tests cases were written for load balancer.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/rahulsIOT/phoenix Loadbalancer

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/phoenix/pull/236.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #236
    
----
commit 8bff60831e55d2d2c1e4fffc6e662dc25fe5be0a
Author: Rahul <[email protected]>
Date:   2017-03-01T23:38:52Z

    Initial set of files for Load Balancer

commit 4f2422562afc59106a02e82eb9672ac9d6429bbd
Author: Rahul <[email protected]>
Date:   2017-03-01T23:42:45Z

    pom for load balancer project

commit 8951a7c24da1be331fc43ee4986ff5f33435616f
Author: Rahul <[email protected]>
Date:   2017-03-02T01:57:41Z

    added code for service discovery

commit 2fd2e82667af5157f0e5a5bb12e7aec6319dc430
Author: Rahul <[email protected]>
Date:   2017-03-04T02:11:16Z

    added registration code to query server

commit 55a59388fe523d7340440b1736fce400f4fe9429
Author: Rahul <[email protected]>
Date:   2017-03-08T21:44:05Z

    added extra changes for including tests

commit 6420f7348e8a313b0c18d969654bbb49632c4d48
Author: Rahul <[email protected]>
Date:   2017-03-13T17:10:51Z

     still making changes to initial commit

commit 8e712b4bbc52524554cd4ed3ca5ec923d99fdb46
Author: Rahul <[email protected]>
Date:   2017-03-14T18:03:03Z

     Fixed naming of variables along with other cosmetic fixes

commit a7404435abaa2af5ad284972933d0ecb2cb94f45
Author: Rahul <[email protected]>
Date:   2017-03-21T07:07:18Z

    fixed all the IT cases in LoadBalancer

commit 5a9b7021dc8d51884f546973db633b6ca0ee59e5
Author: Rahul <[email protected]>
Date:   2017-03-24T04:58:05Z

    completed the initial patch for load balancer

commit d3d8bea7299dbb6830bbdf2925fc43512599df71
Author: Rahul <[email protected]>
Date:   2017-03-24T05:11:36Z

    removed unneeded sections of pom.xml including curator version. This 
version is in parent pom.xml

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to