Created attachment 736454 [details] agent_log.txt Description of problem: Cassandra Storage installer - Cassandra daemon resource not-available/inactive (clustered mode) in server-gui - also having exception in agent.log Version-Release number of selected component (if applicable): build 145 (jnekins cassandra-backend) How reproducible: Steps to Reproduce: 1. Run storage installer in two machines and connect them from cassandra.yaml 2. start cassandra server on both machines 3. run rhq-server.console 4. run rhq-installer 5. download and install rhq-agent from server gui or follow test case #https://tcms.engineering.redhat.com/case/251800/?from_plan=8763 Actual results: Cassandra daemon resource not-available/inactive in server-gui - also having exception in agent.log Expected results: Cassandra daemon resource available/active in server-gui no exception in agent.log Additional info: fragment from agent log is attached screenshot is attached
Created attachment 736455 [details] cassandra_deamon.png
I can see from the agent log that the problem is a ClassNotFoundException in the Cassandra plugin. This is causing discovery to fail. The problem may just be that the datastax driver is not packaged in the plugin JAR. I am changing the component from installer to plugins and reassigning to Stefan since he is currently working on the plugin.
Updated packaging configuration in the plugin pom. The datastax driver was included in dev-container builds but not in regular builds. The datastax driver is now packaged correctly. Please retest the issue. Branch commit: https://git.fedorahosted.org/cgit/rhq/rhq.git/commit/?h=feature/cassandra-backend&id=9f365968bb69ed7b6700beaea1910ee53ea6501b
reopened. the issue is still visible for jenkins build 164. please get error fragment from log attached.
Created attachment 737629 [details] cassandra_daemon_agent.log
I just checked and we are packaging the Cassandra driver in the plugin JAR's lib folder; however, we are not packaging the driver's runtime dependencies, of which there are several. These should be the same libraries that are being packaged in the JBoss module for the driver which is deployed at <RHQ_SERVER_HOME/modules/com/datastax/cassandra/cassandra-driver-core/main/. I will update the plugin build to include these additional libraries.
I am changing the summary text of this bug to better reflect the issue.
I have updated the plugin so that the it now includes the driver's runtime dependencies. One other change was required. The default port on which Cassandra listens for CQL clients is 9042. The storage installer however assigns a value of 9142 by default. I added a new property to the plugin configuration of the CassandraDaemon resource type named "Native Transport Port". **NOTE** - You will have to change this property to 9142 or whatever value you use with the storage installer. I decided to leave the default value for the plugin configuration property as 9042 since that is the out of box default for Cassandra. When we implement the storage plugin (which will extend the Cassandra plugin), we will have its defaults match up with the defaults used by the storage installer. feature/cassandra-backend commit hash: b756b8d0d73
Moving back to ON_DEV since this failed QE testing.
I verified in the QE environment that the resource component is using the correct port for CQL connections; however, it is trying to connect over localhost. We need to be using the same address/hostname (or hostname that resolves to the address) that is set for the rpc_address property in cassandra.yaml. I see the same problem with cqlsh which tries to connect over localhost by default. In general the hostname used for the rpc_address property should match the resource key of the platform.
Update the code to retrieve listen_address from cassandra.yaml file. The problem should now be solved.
verified - jenkins build 192 thank you.
reopened. bug is visible for rhq 49 build:4c959e4 please get agent.log attached.
Created attachment 790359 [details] agent.log
Created attachment 790360 [details] cassandra-nonAvail.png
The logs point to an old implementation of the plugins that Cassandra servers. Please sure you use the latest Cassandra and RHQ Storage plugins. Also make sure that the server is actually up and running when executing this test. Otherwise it will be reported down.
the issue was visible in the old plugin implementation and was fixed in 3.2.0 - closing as current release.
Created attachment 912390 [details] cassandra_avail
Marking target as 3.2 so that it is clear that this was never an actual product bug. As this "bug" never existed in JBoss ON, we shouldn't be marking it as resolved in a later release. A resolved bug (CURRENTRELEASE) means that a bug was found in a previous release and then fixed in a later release. In this case, the bug was never found in a release (i.e. reported version is the same as the release version).