2017-08-09 2 views
0

J'ai mis en place un nouveau Cassandra et j'utilise ./cassandra pour l'ouvrir, mais il échoue. Dans le fichier system.log, il affiche l'erreur suivante:Je ne peux pas ouvrir Cassandra à cause de l'espace disque insuffisant pour écrire

ERREUR 13:30:31 Exception rencontrée lors du démarrage java.lang.RuntimeException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang. RuntimeException: Espace disque insuffisant pour écrire 542 octets sur org.apache.cassandra.db.ColumnFamilyStore.runWithCompactionsDisabled (ColumnFamilyStore.java:2888) ~ [apache-cassandra-2.2.10.jar: 2.2.10] at org.apache .cassandra.db.ColumnFamilyStore.truncateBlocking (ColumnFamilyStore.java:2849) ~ [apache-cassandra-2.2.10.jar: 2.2.10] à org.apache.cassandra.db.SystemKeyspace.discardCompactionsInProgress (SystemKeyspace.java:404) ~ [apache-cassandra-2.2.10.jar: 2.2.10] à org.apache.cassandra.service.CassandraDaemon.setup (CassandraDaemon.java: 230) [apache-cassandra-2.2.10.jar: 2.2.10] à org.apache.cassandra.service.CassandraDaemon.activate (CassandraDaemon.java:533) [apache-cassandra-2.2.10.jar: 2.2. 10] à org.apache.cassandra.service.CassandraDaemon.main (CassandraDaemon.java:642) [apache-cassandra-2.2.10.jar: 2.2.10] Causé par: java.lang.RuntimeException: java.util. concurrent.ExecutionException: java.lang.RuntimeException: espace disque insuffisant pour écrire 542 octets à org.apache.cassandra.utils.FBUtilities.waitOnFuture (FBUtilities.java:394) ~ [apache-cassandra-2.2.10.jar: 2.2 .10] à org.apache.cassandra.db.SystemKeyspace.forceBlockingFlush (SystemKeyspace.java:593) ~ [apache-cassandra-2.2.10.jar: 2.2.10] à org.apache.cassandra.db.SystemKeyspace .saveTruncationRecord (SystemKeyspace.java:432) ~ [apache-cassandra-2.2.10.jar: 2.2.10] à org.a pache.cassandra.db.ColumnFamilyStore $ 13.run (ColumnFamilyStore.java:2843) ~ [apache-cassandra-2.2.10.jar: 2.2.10] à java.util.concurrent.Executors $ RunnableAdapter.call (Executors.java : 511) ~ [na: 1.8.0_141] à org.apache.cassandra.db.ColumnFamilyStore.runWithCompactionsDisabled (ColumnFamilyStore.java:2884) ~ [apache-cassandra-2.2.10.jar: 2.2.10] ... 5 cadres communs OMISE causés par: java.util.concurrent.ExecutionException: java.lang.RuntimeException: espace disque insuffisant pour écrire 542 octets à com.google.common.util.concurrent.AbstractFuture $ Sync.getValue (AbstractFuture.java: 299) ~ [goyave 16.0.jar: na] à com.google.common.util.concurrent.AbstractFuture $ Sync.get (AbstractFuture.java:286) ~ [goyave 16.0.jar: na] au com. google.common.util.concurrent.AbstractFuture.get (AbstractFuture.java:116) ~ [goyave-16.0.jar: na] sur org.apache.cassandra.utils.FBUtilities.waitOnFuture (FBUtilities.java:390) ~ [apache-cassandra-2.2.10.jar: 2.2.10] ... 10 trames communes omises Causée par: java.lang. RuntimeException: espace disque insuffisant pour écrire 542 octets à org.apache.cassandra.db.Directories.getWriteableLocation (Directories.java:349) ~ [apache-cassandra-2.2.10.jar: 2.2.10] à org.apache .cassandra.db.Memtable.flush (Memtable.java:324) ~ [apache-cassandra-2.2.10.jar: 2.2.10] à org.apache.cassandra.db.ColumnFamilyStore $ Flush.run (ColumnFamilyStore.java : 1187) ~ [apache-cassandra-2.2.10.jar: 2.2.10] à java.util.concurrent.Executors $ RunnableAdapter.call (Executors.java:511) ~ [na: 1.8.0_141]

la sortie de la commande "df -h":

root @ srv-machine learning01:/var/lib/cassandra # df -h

Système de fichiers Taille Util Libre Util% monté sur

/dev/xvda1 61G 60G 0 100%/

udev 10M 10M 0% 0/dev

tmpfs 2.4G 2.4G 8,3M 1%/run

tmpfs 5,9 g 5,9 g 0 0%

/dev/SHM

tmpfs 5.0M 5.0M 0 0%

/run/verrouiller

tmpfs 5,9 g 5,9 g 0 0%

/sys/fs/cgroup

bak02.sovanta.com:/volume1/bak_machine_learning 70T 19T 52T 27%

+0

Quel système d'exploitation utilisez-vous? Combien d'espace libre y a-t-il sur ses disques? Les autorisations pour vos répertoires de données sont-elles correctement définies? – Mandraenke

+0

linux 3.16.0-4-amd64, l'espace pour le magasin Cassandra est assez grand. Que voulez-vous dire par autorisations? parce que j'ai utilisé la version binaire de Cassandra, donc je pense que les données seront stockées dans le répertoire cassandra/data par défaut, je n'ai pas défini le répertoire var/lib/data. – Oak

+1

quelle est la sortie de 'df' et quel est votre 'data_file_directories' réglé dans cassandra.yaml –

Répondre

1

Il semble que votre système de fichiers racine soit saturé.

/dev/xvda1 61G 60G 0 100% /

Depuis stocke les données Cassandra par défaut dans/var/lib/Cassandre et vous n'avez pas mis en place un système de fichier différent à utiliser pour cette voie, il utilisera votre système de fichiers racine. Je peux penser à plusieurs solutions pour ce problème.

  • Espace libre sur la partition racine
  • Augmenter l'espace disque pour votre système de fichiers racine
  • Ajouter un nouveau disque à votre système et créer un nouveau système de fichiers qui monte dans/var/lib/cassandra
0

aller à mchine et supprimer le schéma inutilisé de cassandra manuellement.