2017-09-01 5 views
0

Je cours Cassandra 2.1.15 sur une machine virtuelle. Le problème est que je ne peux pas exécuter la commande "cqlsh" pour créer des tables et des espaces de clés. Cela me donne toujours une erreur de timeout après 2 minutes. Je veux augmenter le délai d'attente de cassandra. La machine virtuelle dispose de 8 Go de mémoire et de 4 unités CPU. Ce sont la liste des choses que j'ai essayées.Cassandra en cours d'exécution cqlsh échoue

  1. Création du fichier ~/.cassandra/cqlshrc et de plus en plus client_timeout 3600
  2. Modification du fichier /usr/bin/cqlsh.py et en augmentant DEFAULT_CONNECT_TIMEOUT_SECONDS et DEFAULT_REQUEST_TIMEOUT_SECONDS variables à 3600.
  3. passer l'argument - -request-timeout 3600 --connect-timeout 3600 dans cqlsh.
  4. Utilisation de l'IP dans l'adresse d'écoute du cassandra.yaml fichier au lieu de localhost

Je suis conscient que les performances de ma machine virtuelle est très lent car il faut environ 7 minutes pour voir la sortie de commande d'état de nodetool.

Nodetool sortie d'état:

Datacenter: site1 

================= 

Status=Up/Down 
|/ State=Normal/Leaving/Joining/Moving 
-- Address  Load  Tokens Owns (effective) Host ID        Rack 
UN 192.168.1.6 196.08 KB 256  100.0%   c88cf8ec-f7e1-41e1-aad0-85742c8c3ffb RAC1 

Je peux aussi voir aucun journal d'erreur dans le fichier system.log et de la commande netstat je peux voir que le serveur est à l'écoute des demandes sur les ports 9042 et 9160

tcp6  0  0 :::9160     :::*     LISTEN  32694/java  
tcp6  0  0 :::11311    :::*     LISTEN  2237/astaire  
tcp6  0  0 :::9042     :::*     LISTEN  32694/java  
tcp6  0  0 192.168.1.6:7000  :::*     LISTEN  32694/java  
tcp6  0  0 127.0.0.1:40895   :::*     LISTEN  32694/java  
tcp6  0  0 127.0.0.1:7199   :::*     LISTEN  32694/java 

Veuillez m'aider.

Répondre

0

Une spécification de 8 Go + 4CPU pour C * VM est bonne, elle ne devrait pas créer de goulot d'étranglement ou le décalage que vous éprouvez. Je pense que je peux penser que votre disque dur n'a pas assez de bande passante d'E/S. Essayez de vérifier l'utilisation du disque dans le Gestionnaire des tâches. (Je suppose que vous utilisez Windows comme vous exécutez une VM pour C *).

Il existe deux alternatives que vous pouvez essayer si l'utilisation du disque est le problème.

  • Passez à Docker. Docker est une machine virtuelle légère couplée à la machine virtuelle CentOS/Ubuntu que vous utilisez. Docker quickstart est here et Dockerfiles sont here.
  • Essayez C * sur Windows directement, en utilisant CCM si possible.