[jira] [Commented] (CASSANDRA-15339) Make available the known JMX endpoints across the cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-15339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17051068#comment-17051068 ] Michael Semb Wever commented on CASSANDRA-15339: [~brandon.williams], thanks for the heads up, have updated the patch. It's still wip though. > Make available the known JMX endpoints across the cluster > - > > Key: CASSANDRA-15339 > URL: https://issues.apache.org/jira/browse/CASSANDRA-15339 > Project: Cassandra > Issue Type: Improvement > Components: Cluster/Gossip >Reporter: Michael Semb Wever >Assignee: Michael Semb Wever >Priority: Normal > Labels: 4.0-feature-freeze-review-requested > > With the addition of multiple nodes running on the same server using > different ports: CASSANDRA-7544 ; it becomes more difficult for third-party > tools to easily connect to all nodes based on the jmx connection details to > just one node. > By adding jmx host and port to gossip, and saving it in {{system.peers_v2}}, > the list of all jmx endpoints in a cluster can be fetch after just the > initial successful jmx connection and the > {{StorageServiceMBean.getJmxEndpoints()}} method. > And example of the difficulty can be illustrated through the potential > workaround… > Such a third-party tool could make a native protocol connection, and via the > driver obtain the list of all possible `host:port` native protocol > connections, and make a connection to each of these then requesting the > configuration virtual table, from which the jmx port can be obtained. This is > a rather cumbersome approach, and can involve third-party tools having to add > native connection functionality and dependencies. It's also currently not > possible because CASSANDRA-14573 does not provide the jmx port (it only > offers the yaml settings). -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-15339) Make available the known JMX endpoints across the cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-15339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17021543#comment-17021543 ] Chris Lohfink commented on CASSANDRA-15339: --- {quote}now have to also talk to Cassandra via CQL. {quote} Maybe can use messaging service queries to other nodes can collect it on demand instead of broadcasting it in the gossip state. > Make available the known JMX endpoints across the cluster > - > > Key: CASSANDRA-15339 > URL: https://issues.apache.org/jira/browse/CASSANDRA-15339 > Project: Cassandra > Issue Type: Improvement > Components: Cluster/Gossip >Reporter: Michael Semb Wever >Assignee: Michael Semb Wever >Priority: Normal > Labels: 4.0-feature-freeze-review-requested > > With the addition of multiple nodes running on the same server using > different ports: CASSANDRA-7544 ; it becomes more difficult for third-party > tools to easily connect to all nodes based on the jmx connection details to > just one node. > By adding jmx host and port to gossip, and saving it in {{system.peers_v2}}, > the list of all jmx endpoints in a cluster can be fetch after just the > initial successful jmx connection and the > {{StorageServiceMBean.getJmxEndpoints()}} method. > And example of the difficulty can be illustrated through the potential > workaround… > Such a third-party tool could make a native protocol connection, and via the > driver obtain the list of all possible `host:port` native protocol > connections, and make a connection to each of these then requesting the > configuration virtual table, from which the jmx port can be obtained. This is > a rather cumbersome approach, and can involve third-party tools having to add > native connection functionality and dependencies. It's also currently not > possible because CASSANDRA-14573 does not provide the jmx port (it only > offers the yaml settings). -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-15339) Make available the known JMX endpoints across the cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-15339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17021477#comment-17021477 ] Brandon Williams commented on CASSANDRA-15339: -- Just a note on this patch: the padding states in ApplicationState.java are not intended to be consumed, they are there so that the number of padding states can be added between versions without blowing up the enum in the previous version (and doing so would be extremely bad.) > Make available the known JMX endpoints across the cluster > - > > Key: CASSANDRA-15339 > URL: https://issues.apache.org/jira/browse/CASSANDRA-15339 > Project: Cassandra > Issue Type: Improvement > Components: Cluster/Gossip >Reporter: Michael Semb Wever >Assignee: Michael Semb Wever >Priority: Normal > Labels: 4.0-feature-freeze-review-requested > > With the addition of multiple nodes running on the same server using > different ports: CASSANDRA-7544 ; it becomes more difficult for third-party > tools to easily connect to all nodes based on the jmx connection details to > just one node. > By adding jmx host and port to gossip, and saving it in {{system.peers_v2}}, > the list of all jmx endpoints in a cluster can be fetch after just the > initial successful jmx connection and the > {{StorageServiceMBean.getJmxEndpoints()}} method. > And example of the difficulty can be illustrated through the potential > workaround… > Such a third-party tool could make a native protocol connection, and via the > driver obtain the list of all possible `host:port` native protocol > connections, and make a connection to each of these then requesting the > configuration virtual table, from which the jmx port can be obtained. This is > a rather cumbersome approach, and can involve third-party tools having to add > native connection functionality and dependencies. It's also currently not > possible because CASSANDRA-14573 does not provide the jmx port (it only > offers the yaml settings). -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-15339) Make available the known JMX endpoints across the cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-15339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17021465#comment-17021465 ] Michael Semb Wever commented on CASSANDRA-15339: [~cnlwsu], bq. Can use the setHost() on the Statement from client side to coordinate to each host vs trying to distribute the data in gossip etc to fill peers table. Yes, but then third-party tools that talk to Cassandra via JMX: that want to discover all the JMX ports; now have to *also* talk to Cassandra via CQL. That's a fair bit of development to push onto third-party tools. > Make available the known JMX endpoints across the cluster > - > > Key: CASSANDRA-15339 > URL: https://issues.apache.org/jira/browse/CASSANDRA-15339 > Project: Cassandra > Issue Type: Improvement > Components: Cluster/Gossip >Reporter: Michael Semb Wever >Assignee: Michael Semb Wever >Priority: Normal > Labels: 4.0-feature-freeze-review-requested > > With the addition of multiple nodes running on the same server using > different ports: CASSANDRA-7544 ; it becomes more difficult for third-party > tools to easily connect to all nodes based on the jmx connection details to > just one node. > By adding jmx host and port to gossip, and saving it in {{system.peers_v2}}, > the list of all jmx endpoints in a cluster can be fetch after just the > initial successful jmx connection and the > {{StorageServiceMBean.getJmxEndpoints()}} method. > And example of the difficulty can be illustrated through the potential > workaround… > Such a third-party tool could make a native protocol connection, and via the > driver obtain the list of all possible `host:port` native protocol > connections, and make a connection to each of these then requesting the > configuration virtual table, from which the jmx port can be obtained. This is > a rather cumbersome approach, and can involve third-party tools having to add > native connection functionality and dependencies. It's also currently not > possible because CASSANDRA-14573 does not provide the jmx port (it only > offers the yaml settings). -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-15339) Make available the known JMX endpoints across the cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-15339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17021460#comment-17021460 ] David Capwell commented on CASSANDRA-15339: --- virtual table would be good to expose the details of this host. One thing I was thinking; would it make sense to write a file to /tmp (delete on shutdown) which also defines this detail? That way tools on the host can discover all active clusters (only works with tools on the same node)? > Make available the known JMX endpoints across the cluster > - > > Key: CASSANDRA-15339 > URL: https://issues.apache.org/jira/browse/CASSANDRA-15339 > Project: Cassandra > Issue Type: Improvement > Components: Cluster/Gossip >Reporter: Michael Semb Wever >Assignee: Michael Semb Wever >Priority: Normal > Labels: 4.0-feature-freeze-review-requested > > With the addition of multiple nodes running on the same server using > different ports: CASSANDRA-7544 ; it becomes more difficult for third-party > tools to easily connect to all nodes based on the jmx connection details to > just one node. > By adding jmx host and port to gossip, and saving it in {{system.peers_v2}}, > the list of all jmx endpoints in a cluster can be fetch after just the > initial successful jmx connection and the > {{StorageServiceMBean.getJmxEndpoints()}} method. > And example of the difficulty can be illustrated through the potential > workaround… > Such a third-party tool could make a native protocol connection, and via the > driver obtain the list of all possible `host:port` native protocol > connections, and make a connection to each of these then requesting the > configuration virtual table, from which the jmx port can be obtained. This is > a rather cumbersome approach, and can involve third-party tools having to add > native connection functionality and dependencies. It's also currently not > possible because CASSANDRA-14573 does not provide the jmx port (it only > offers the yaml settings). -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-15339) Make available the known JMX endpoints across the cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-15339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17021454#comment-17021454 ] Chris Lohfink commented on CASSANDRA-15339: --- Could be a virtual table? or exposed in the settings table. Can use the setHost() on the Statement from client side to coordinate to each host vs trying to distribute the data in gossip etc to fill peers table. > Make available the known JMX endpoints across the cluster > - > > Key: CASSANDRA-15339 > URL: https://issues.apache.org/jira/browse/CASSANDRA-15339 > Project: Cassandra > Issue Type: Improvement > Components: Cluster/Gossip >Reporter: Michael Semb Wever >Assignee: Michael Semb Wever >Priority: Normal > Labels: 4.0-feature-freeze-review-requested > > With the addition of multiple nodes running on the same server using > different ports: CASSANDRA-7544 ; it becomes more difficult for third-party > tools to easily connect to all nodes based on the jmx connection details to > just one node. > By adding jmx host and port to gossip, and saving it in {{system.peers_v2}}, > the list of all jmx endpoints in a cluster can be fetch after just the > initial successful jmx connection and the > {{StorageServiceMBean.getJmxEndpoints()}} method. > And example of the difficulty can be illustrated through the potential > workaround… > Such a third-party tool could make a native protocol connection, and via the > driver obtain the list of all possible `host:port` native protocol > connections, and make a connection to each of these then requesting the > configuration virtual table, from which the jmx port can be obtained. This is > a rather cumbersome approach, and can involve third-party tools having to add > native connection functionality and dependencies. It's also currently not > possible because CASSANDRA-14573 does not provide the jmx port (it only > offers the yaml settings). -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-15339) Make available the known JMX endpoints across the cluster
[ https://issues.apache.org/jira/browse/CASSANDRA-15339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16939641#comment-16939641 ] Michael Semb Wever commented on CASSANDRA-15339: wip… || branch || circleci || asf jenkins testall || asf jenkins dtests || | [trunk_15339|https://github.com/apache/cassandra/compare/trunk...thelastpickle:mck/trunk_15339] | [circleci|https://circleci.com/gh/thelastpickle/workflows/cassandra/tree/mck%2Ftrunk_15339] | [!https://builds.apache.org/view/A-D/view/Cassandra/job/Cassandra-devbranch-testall/49//badge/icon!|https://builds.apache.org/view/A-D/view/Cassandra/job/Cassandra-devbranch-testall/49/] | [!https://builds.apache.org/view/A-D/view/Cassandra/job/Cassandra-devbranch-dtest/683//badge/icon!|https://builds.apache.org/view/A-D/view/Cassandra/job/Cassandra-devbranch-dtest/683] | > Make available the known JMX endpoints across the cluster > - > > Key: CASSANDRA-15339 > URL: https://issues.apache.org/jira/browse/CASSANDRA-15339 > Project: Cassandra > Issue Type: Improvement > Components: Cluster/Gossip >Reporter: Michael Semb Wever >Assignee: Michael Semb Wever >Priority: Normal > > With the addition of multiple nodes running on the same server using > different ports: CASSANDRA-7544 ; it becomes more difficult for third-party > tools to easily connect to all nodes based on the jmx connection details to > just one node. > By adding jmx host and port to gossip, and saving it in {{system.peers_v2}}, > the list of all jmx endpoints in a cluster can be fetch after just the > initial successful jmx connection and the > {{StorageServiceMBean.getJmxEndpoints()}} method. -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org