Cassandraのcluster wideな管理ツール(clustertool)

cluster wideな管理ツール

cluster toolはcluster wideな管理ツールにしていきたいようです。ただ、まだ使えるコマンドが殆どないので、そういうツールになっていくんだろうという感じです。

使えるコマンド

まだ全然ありません。これから整備していくみたいです。

        String header = String.format(
                "%nAvailable commands: get_endpoints [key], global_snapshot [name], clear_global_snapshot");
    

実装

パッケージは、org.apache.cassandra.tools。クラスはClusterCmdです。
これは、実装としてはnodetoolと殆ど同じです。NodeProbeをつかって、JMX経由でデータを取得したり、操作したりします。

Tableのsnapshotをとったり、削除したりできるようです。実装としては、StorageServiceで、tableのsnapshotのクリアをしています

	public void clearSnapshot() throws IOException {
		for (Table table : Table.all())
			table.clearSnapshot();

		if (logger_.isDebugEnabled())
			logger_.debug("Cleared out all snapshot directories");
	}

Tableのsnapshotがとれるというのは知らなかったので、後でみていきます。