You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Ariel Weisberg (JIRA)" <ji...@apache.org> on 2018/01/24 15:55:00 UTC

[jira] [Commented] (CASSANDRA-7544) Allow storage port to be configurable per node

    [ https://issues.apache.org/jira/browse/CASSANDRA-7544?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16337800#comment-16337800 ] 

Ariel Weisberg commented on CASSANDRA-7544:
-------------------------------------------

The latest branches currently under review:

dtests: [https://github.com/aweisberg/cassandra-dtest/tree/cassandra-7544-rebased]

cassandra: [https://github.com/aweisberg/cassandra/tree/cassandra-7544-rebased3]

ccm: [https://github.com/riptano/ccm/pull/654]

Java driver: [ JAVA-1388Support clusters with different native and storage ports at each node using CASSANDRA-7544|https://datastax-oss.atlassian.net/browse/JAVA-1388]

Python driver: [ PYTHON-700Support clusters with different native and storage ports at each node using CASSANDRA-7544|https://datastax-oss.atlassian.net/browse/PYTHON-700]

> Allow storage port to be configurable per node
> ----------------------------------------------
>
>                 Key: CASSANDRA-7544
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7544
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Sam Overton
>            Assignee: Ariel Weisberg
>            Priority: Major
>             Fix For: 4.x
>
>
> Currently storage_port must be configured identically on all nodes in a cluster and it is assumed that this is the case when connecting to a remote node.
> This prevents running in any environment that requires multiple nodes to be able to bind to the same network interface, such as with many automatic provisioning/deployment frameworks.
> The current solutions seems to be
> * use a separate network interface for each node deployed to the same box. This puts a big requirement on IP allocation at large scale.
> * allow multiple clusters to be provisioned from the same resource pool, but restrict allocation to a maximum of one node per host from each cluster, assuming each cluster is running on a different storage port.
> It would make operations much simpler in these kind of environments if the environment provisioning the resources could assign the ports to be used when bringing up a new node on shared hardware.
> The changes required would be at least the following:
> 1. configure seeds as IP:port instead of just IP
> 2. gossip the storage port as part of a node's ApplicationState
> 3. refer internally to nodes by hostID instead of IP, since there will be multiple nodes with the same IP
> (1) & (2) are mostly trivial and I already have a patch for these. The bulk of the work to enable this is (3), and I would structure this as a separate pre-requisite patch. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org