Structures de fichiers de Cassandra et comment spécifier son répertoire dans Cassandra Cluster Manager (CCM)?

J’ai installé avec succès Cassandra-2.0.9 en suivant le document DATASTAX sur Ubuntu 14.04 LTS. Pour un test rapide du cluster sur une machine locale, j’ai ensuite installé l’ outil Cassandra Cluster Manager (CCM) .

Pour créer un cluster, une commande comme ccm create --cassandra-dir *** --nodes 3 --start test est émise, qui est censée configurer et démarrer un cluster à 3 nœuds nommé “test”. Cependant, je ne suis pas sûr du répertoire de cassandra sous mon installation actuelle.

Mes questions:

  1. Quel cassandra-dir devrait être spécifié?
  2. Comment sont organisés les fichiers Cassandra? En tant que novice d’Ubuntu, je suis assez confus quant aux fichiers dispersés dans différents répertoires.

PS: La commande dpkg -L cassandra donne la liste suivante des fichiers liés à Cassandra. Si vous avez besoin de plus d’informations, n’hésitez pas à demander. Merci.

 /. /var /var/lib /var/lib/cassandra /var/log /var/log/cassandra /usr /usr/bin /usr/bin/sstablesplit /usr/bin/sstablelevelreset /usr/bin/cassandra-shuffle /usr/bin/sstable2json /usr/bin/json2sstable /usr/bin/cassandra-cli /usr/bin/nodetool /usr/bin/sstablekeys /usr/bin/cqlsh /usr/bin/cassandra-stress /usr/bin/token-generator /usr/bin/sstableloader /usr/bin/sstablescrub /usr/bin/sstableupgrade /usr/bin/sstablemetadata /usr/share /usr/share/cassandra /usr/share/cassandra/apache-cassandra-thrift-2.0.9.jar /usr/share/cassandra/stress.jar /usr/share/cassandra/apache-cassandra-2.0.9.jar /usr/share/cassandra/lib /usr/share/cassandra/lib/thrift-server-internal-only-0.3.3.jar /usr/share/cassandra/lib/servlet-api-2.5-20081211.jar /usr/share/cassandra/lib/high-scale-lib-1.1.2.jar /usr/share/cassandra/lib/log4j-1.2.16.jar /usr/share/cassandra/lib/mesortingcs-core-2.2.0.jar /usr/share/cassandra/lib/antlr-3.2.jar /usr/share/cassandra/lib/commons-codec-1.2.jar /usr/share/cassandra/lib/jline-1.0.jar /usr/share/cassandra/lib/snaptree-0.1.jar /usr/share/cassandra/lib/concurrentlinkedhashmap-lru-1.3.jar /usr/share/cassandra/lib/cql-internal-only-1.4.1.zip /usr/share/cassandra/lib/jamm-0.2.5.jar /usr/share/cassandra/lib/guava-15.0.jar /usr/share/cassandra/lib/snakeyaml-1.11.jar /usr/share/cassandra/lib/slf4j-api-1.7.2.jar /usr/share/cassandra/lib/thrift-python-internal-only-0.9.1.zip /usr/share/cassandra/lib/snappy-java-1.0.5.jar /usr/share/cassandra/lib/json-simple-1.1.jar /usr/share/cassandra/lib/libthrift-0.9.1.jar /usr/share/cassandra/lib/jackson-mapper-asl-1.9.2.jar /usr/share/cassandra/lib/disruptor-3.0.1.jar /usr/share/cassandra/lib/netty-3.6.6.Final.jar /usr/share/cassandra/lib/commons-lang3-3.1.jar /usr/share/cassandra/lib/super-csv-2.1.0.jar /usr/share/cassandra/lib/slf4j-log4j12-1.7.2.jar /usr/share/cassandra/lib/jbcrypt-0.3m.jar /usr/share/cassandra/lib/compress-lzf-0.8.4.jar /usr/share/cassandra/lib/jackson-core-asl-1.9.2.jar /usr/share/cassandra/lib/commons-cli-1.1.jar /usr/share/cassandra/lib/reporter-config-2.1.0.jar /usr/share/cassandra/lib/lz4-1.2.0.jar /usr/share/cassandra/cassandra.in.sh /usr/share/doc /usr/share/doc/cassandra /usr/share/doc/cassandra/CHANGES.txt.gz /usr/share/doc/cassandra/licenses /usr/share/doc/cassandra/licenses/antlr-3.2.txt /usr/share/doc/cassandra/licenses/netty-3.5.9.txt.gz /usr/share/doc/cassandra/licenses/jackson-core-asl-1.9.2.txt.gz /usr/share/doc/cassandra/licenses/log4j-1.2.16.txt.gz /usr/share/doc/cassandra/licenses/thrift-python-0.9.1.txt.gz /usr/share/doc/cassandra/licenses/snakeyaml-1.11.txt.gz /usr/share/doc/cassandra/licenses/jackson-mapper-asl-1.9.2.txt.gz /usr/share/doc/cassandra/licenses/super-csv-2.1.0.txt.gz /usr/share/doc/cassandra/licenses/slf4j-log4j12-1.7.2.txt /usr/share/doc/cassandra/licenses/mesortingcs-core-2.2.0.txt.gz /usr/share/doc/cassandra/licenses/commons-lang3-3.1.txt.gz /usr/share/doc/cassandra/licenses/jline-1.0.txt /usr/share/doc/cassandra/licenses/thrift-server-0.3.3.txt.gz /usr/share/doc/cassandra/licenses/commons-cli-1.1.txt.gz /usr/share/doc/cassandra/licenses/json-simple-1.1.txt.gz /usr/share/doc/cassandra/licenses/servlet-api-2.5-20081211.txt.gz /usr/share/doc/cassandra/licenses/commons-codec-1.2.txt.gz /usr/share/doc/cassandra/licenses/jbcrypt-0.3m.txt /usr/share/doc/cassandra/licenses/guava-15.0.txt.gz /usr/share/doc/cassandra/licenses/disruptor-3.0.1.txt.gz /usr/share/doc/cassandra/licenses/libthrift-0.9.1.txt.gz /usr/share/doc/cassandra/licenses/cql-1.4.0.txt.gz /usr/share/doc/cassandra/licenses/reporter-config-2.1.0.txt.gz /usr/share/doc/cassandra/licenses/netty-3.6.6.txt.gz /usr/share/doc/cassandra/licenses/slf4j-api-1.7.2.txt /usr/share/doc/cassandra/licenses/compress-lzf-0.8.4.txt /usr/share/doc/cassandra/licenses/high-scale-lib-1.1.2.txt /usr/share/doc/cassandra/licenses/concurrentlinkedhashmap-lru-1.3.txt.gz /usr/share/doc/cassandra/licenses/snaptree-0.1.txt.gz /usr/share/doc/cassandra/licenses/lz4-1.2.0.txt.gz /usr/share/doc/cassandra/licenses/snappy-java-1.0.5.txt.gz /usr/share/doc/cassandra/licenses/jamm-0.2.5.txt.gz /usr/share/doc/cassandra/copyright /usr/share/doc/cassandra/changelog.gz /usr/share/doc/cassandra/README.Debian /usr/share/doc/cassandra/README.asc /usr/share/doc/cassandra/TODO /usr/share/doc/cassandra/NEWS.txt.gz /usr/share/pyshared /usr/share/pyshared/cassandra_pylib-0.0.0.egg-info /usr/share/pyshared/cqlshlib /usr/share/pyshared/cqlshlib/helptopics.py /usr/share/pyshared/cqlshlib/saferscanner.py /usr/share/pyshared/cqlshlib/formatting.py /usr/share/pyshared/cqlshlib/pylexotron.py /usr/share/pyshared/cqlshlib/util.py /usr/share/pyshared/cqlshlib/__init__.py /usr/share/pyshared/cqlshlib/tfactory.py /usr/share/pyshared/cqlshlib/displaying.py /usr/share/pyshared/cqlshlib/tracing.py /usr/share/pyshared/cqlshlib/wcwidth.py /usr/share/pyshared/cqlshlib/cqlhandling.py /usr/share/pyshared/cqlshlib/cql3handling.py /usr/share/pyshared/cqlshlib/ssl.py /usr/share/python-support /usr/share/python-support/cassandra.public /usr/sbin /usr/sbin/cassandra /etc /etc/cassandra /etc/cassandra/commitlog_archiving.properties /etc/cassandra/cassandra-topology.yaml /etc/cassandra/log4j-server.properties /etc/cassandra/sortingggers /etc/cassandra/sortingggers/README.txt /etc/cassandra/cassandra.yaml /etc/cassandra/cassandra-topology.properties /etc/cassandra/log4j-tools.properties /etc/cassandra/cassandra-rackdc.properties /etc/cassandra/cassandra-env.sh /etc/security /etc/security/limits.d /etc/security/limits.d/cassandra.conf /etc/init.d /etc/init.d/cassandra /etc/sysctl.d /etc/sysctl.d/cassandra.conf /etc/default /etc/default/cassandra /usr/share/cassandra/apache-cassandra.jar 

CCM n’utilise pas les installations binarys de Cassandra, il construit toujours à partir des sources (c’est à l’origine un outil de développement).

--cassandra-dir est le moment où vous voulez le pointer vers un répertoire source existant (généralement, lorsque vous piratez Cassandra et que vous souhaitez essayer votre version modifiée).

Sinon, vous pouvez simplement lui donner une version Cassandra et il téléchargera et comstackra les sources pour vous:

 ccm create my_cluster_name -v 2.0.9 

Je ne sais pas si vous l’avez déjà vu, mais le README sur GitHub contient des informations utiles.