Datastax opscenter upgrade fails to display stats

2019-06-05 00:31发布

问题:

I upgraded Opscenter from 5.1.2 to 5.2.0 yesterday, and now none of the graphs on the Dashboard are showing any statistics.

My cluster is datastax enterprise 4.5.1 with the following versions:

cqlsh 4.1.1 | Cassandra 2.0.8.39 | CQL spec 3.1.1 | Thrift protocol 19.39.0

I'm using this cluster for a search workload with solr. The agent.log is filled with the following:

INFO [qtp1313948736-24] 2015-08-06 12:30:52,211 New JMX connection (127.0.0.1:7199) INFO [qtp1313948736-24] 2015-08-06 12:30:52,214 New JMX connection (127.0.0.1:7199) INFO [qtp1313948736-24] 2015-08-06 12:30:52,218 HTTP: :get /cluster/solr-cores {} - 200 INFO [jmx-metrics-1] 2015-08-06 12:30:57,186 New JMX connection (127.0.0.1:7199) INFO [jmx-metrics-1] 2015-08-06 12:30:57,191 New JMX connection (127.0.0.1:7199) ERROR [cassandra-processor-4] 2015-08-06 12:31:15,082 Error when proccessing cassandra callcom.datastax.driver.core.exceptions.InvalidQueryException: Unknown identifier timestamp

Any ideas?

回答1:

The migration on upgrade failed. Can look through schema with describe keyspace "OpsCenter" and find tables not upgraded to 5.2.0 (look at comment). The changes made are here:

https://gist.github.com/philip-doctor/2b7c87f551a35a5c7c79

-- depending on how far through the migration you progressed, parts of this may fail
-- this assumes you're using the default name of "OpsCenter" for the opscenter keyspace, otherwise 
-- you'll have to rename the "OpsCenter" part.

ALTER TABLE "OpsCenter"."events" ADD message text;
ALTER TABLE "OpsCenter"."events" ADD column_family text;
ALTER TABLE "OpsCenter"."events" ADD target_node text;
ALTER TABLE "OpsCenter"."events" ADD event_source text;
ALTER TABLE "OpsCenter"."events" ADD "keyspace" text;
ALTER TABLE "OpsCenter"."events" ADD api_source_ip text;
ALTER TABLE "OpsCenter"."events" ADD user text;
ALTER TABLE "OpsCenter"."events" ADD source_node text;
ALTER TABLE "OpsCenter"."events" with comment = '{"info": "OpsCenter management data.", "version": [5, 2, 0]}';

ALTER TABLE "OpsCenter"."rollups60" RENAME column1 to timestamp;
ALTER TABLE "OpsCenter"."rollups60" with comment = '{"info": "OpsCenter management data.", "version": [5, 2, 0]}';
ALTER TABLE "OpsCenter"."rollups300" RENAME column1 to timestamp;
ALTER TABLE "OpsCenter"."rollups300" with comment = '{"info": "OpsCenter management data.", "version": [5, 2, 0]}';
ALTER TABLE "OpsCenter"."rollups7200" RENAME column1 to timestamp;
ALTER TABLE "OpsCenter"."rollups7200" with comment = '{"info": "OpsCenter management data.", "version": [5, 2, 0]}';
ALTER TABLE "OpsCenter"."rollups86400" RENAME column1 to timestamp;
ALTER TABLE "OpsCenter"."rollups86400" with comment = '{"info": "OpsCenter management data.", "version": [5, 2, 0]}';