Changer mot de passe :
modifier paramètres dans yaml :
keystore_password
truststore_password
Changer de nom de cluster :
1 -UPDATE system.local SET cluster_name = '<cluster_name>' where key='local';
2- nodetool flush system (recommended)
En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies. Ces derniers assurent le bon fonctionnement de nos services. En savoir plus.
Changer mot de passe :
modifier paramètres dans yaml :
keystore_password
truststore_password
Changer de nom de cluster :
1 -UPDATE system.local SET cluster_name = '<cluster_name>' where key='local';
2- nodetool flush system (recommended)
Pour sauvegarde incrémentale:
nodetool -h localhost -p 7199 snapshot mykeyspace
https://docs.datastax.com/en/cassandra-oss/2.2/cassandra/operations/opsBackupTakesSnapshot.html
supprimer backup :
nodetool -h localhost -p 7199 clearsnapshot
restaurer :
cp snapshots/1535397029191/* /path/to/keyspace1/standard1/
sstableloader --nodes 172.17.0.2 /var/lib/cassandra/loadme/keyspace1/standard1-f8a4fa30aa2a11e8af27091830ac5256/
https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/operations/opsBackupSnapshotRestore.html
https://docs.datastax.com/en/cassandra-oss/2.2/cassandra/tools/toolsBulkloader.html
en-HTCC-8.5.2-Dep-InitializingCassandra.pdf
en-GMS-8.5.2-Deployment-ConfiguringanExternalCassandra.pdf
Qqs prérequis :
Faut désactiver le swap
Il y des warning lors de démarrage de cassandra :
WARN [main] 2021-04-29 16:18:32,338 SigarLibrary.java:174 - Cassandra server running in degraded mode. Is swap disabled? : false, Address space adequate? : true, nofile limit adequate? : true, nproc limit adequate? : true
WARN [main] 2021-04-29 16:18:32,338 StartupChecks.java:311 - Maximum number of memory map areas per process (vm.max_map_count) 65530 is too low, recommended value: 1048575, you can change it with sysctl.
Il est recommander de mettre les commitlogs dans un FS dédié séparer des data.
Changer le home de user cassandra en /home/cassandra au lieu de /var/lib/cassandra
Ajouter les lignes suivantes dans fichier .bash_profile
PATH=$PATH:$HOME/.local/bin:$HOME/bin
#
export CASSANDRA_HOME=/usr/share/cassandra
export CASSANDRA_INCLUDE=$CASSANDRA_HOME/cassandra.in.sh
export CASSANDRA_CONF=/etc/cassandra/conf
export CASSANDRA_OWNR=cassandra
export CASSANDRA_BIN=/usr/sbin/cassandra
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64
#
PATH=$PATH:$CASSANDRA_BIN:$JAVA_HOME/jre/bin
export PATH
export PS1='[$LOGNAME@$HOSTNAME:W]$'
Faut installer le package jemalloc.x86_64
Les données sont disposées sur des lignes (qu'on appelle partitions), et au sein de chaque partition on trouve une série de colonnes avec #col/cellule qu'on peut assimiler à une série de clé/valeur.
On peut remarquer qu'une partition peut contenir de 1 à N colonnes, la limite physique de N étant de 2 milliards (2.109), ce qui nous laisse beaucoup de marge. Une différence avec une base de données SQL classique est qu'ici, C* ne réserve pas d'espace en avance pour chaque colonne. La création de colonne se fera lorsqu'on insérera de nouvelles données, dynamiquement.
Une table est un ensemble de :
<Clé de partition, <Clé de colonne,cellule>>
Pour un cluster en environnement de projet, on choisir la class : SimpleSnitch
Pour un cluster en environnement de prod, on choisir la class : GossipingPropertyFileSnitch
Note:
Ces class sont définies dans le fichier de configuration /etc/cassandra/conf/cassandra.yaml
Si les nœuds du cluster sont dans le même VLAN, on choisira la class : SimpleStrategy
Si les nœuds du cluster sont dans des datacenters différents / des VLAN différents / des sites de production différents, on choisira la class : NetworkTopologyStrategy
Note :
Cette class doit être définie lors du création du keyspace (idem base de données).
Exemple :
CQLSH>create keyspace sample_demo with replication = {'class':'SimpleStrategy','replication_factor':3};