Instalação do Cassandra

Neste artigo, vamos discutir como instalar o Cassandra usando o método de clonagem do repositório GitHub e também abordaremos a instalação via Docker.

Instalação Binária

[hadoop@datax cassandra]$ git clone https://github.com/apache/cassandra.git
   Cloning into 'cassandra'...
   [hadoop@datax ~]$ sudo cat /etc/profile
   
   export CASSANDRA_HOME=/data/cassandra/apache-cassandra-4.0.0
   export PATH=$PATH:$CASSANDRA_HOME/bin
   
   [hadoop@datax ~]$ cassandra -f
   Error opening zip file or JAR manifest missing : /data/cassandra/lib/jamm-0.3.2.jar
   Error occurred during initialization of VM
   agent library failed to init: instrument

Modificação do Diretório de Configuração

data_file_directories: 
   - /var/lib/cassandra/data
   commitlog_directory: /var/lib/cassandra/commitlog
   cdc_enabled: false
   disk_failure_policy: stop
   commit_failure_policy: stop
   prepared_statements_cache_size_mb:  
   key_cache_size_in_mb:  
   key_cache_save_period: 14400
   row_cache_size_in_mb: 0
   row_cache_save_period: 0
   counter_cache_size_in_mb:  
   counter_cache_save_period: 7200
   saved_caches_directory: /var/lib/cassandra/saved_caches

Inicialização do Cassandra

[hadoop@datax ~]$ ./cassandra #Inicia o Cassandra

Conexão com o CQLSH

[hadoop@datax ~]$ cqlsh
   Connected to Test Cluster at 127.0.0.1:9042
   [cqlsh 6.0.0 | Cassandra 4.0.0 | CQL spec 3.4.5 | Native protocol v5]
   Use HELP for help.
   cqlsh>

Verificação da Versão do Cassandra

cqlsh> show VERSION
   [cqlsh 6.0.0 | Cassandra 4.0.0 | CQL spec 3.4.5 | Native protocol v5]
   cqlsh>

Encerramento do Processo

[hadoop@datax bin]$ ./stop-server
   echo "Por favor, leia o script stop-server antes de usá-lo"
   user=`whoami`  
   pgrep -u $user -f cassandra | xargs kill -9

Instalação via Docker

  1. Pull a imagem do Cassandra do Docker Hub:
docker pull cassandra:latest
  1. Crie uma rede para o Cassandra:
docker network create cassandra
  1. Inicie um contêiner do Cassandra:
docker run --rm -d --name cassandra --hostname cassandra --network cassandra cassandra
  1. Criar arquivo data.cql:
CREATE KEYSPACE IF NOT EXISTS store WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : '1' };
       CREATE TABLE IF NOT EXISTS store.shopping_cart (
       userid text PRIMARY KEY,
       item_count int,
       last_update_timestamp timestamp
       );
       INSERT INTO store.shopping_cart
       (userid, item_count, last_update_timestamp)
       VALUES ('9876', 2, toTimeStamp(now()));
       INSERT INTO store.shopping_cart
       (userid, item_count, last_update_timestamp)
       VALUES ('1234', 5, toTimeStamp(now()));
  1. Carregar dados usando CQLSH:
docker run --rm --network cassandra -v "$(pwd)/data.cql:/scripts/data.cql" -e CQLSH_HOST=cassandra -e CQLSH_PORT=9042 -e CQLVERSION=3.4.5 nuvo/docker-cqlsh
  1. Interativo com CQLSH:
docker run --rm -it --network cassandra nuvo/docker-cqlsh cqlsh cassandra 9042 --cqlversion='3.4.5'
  1. Selecionar dados:
SELECT * FROM store.shopping_cart;
  1. Inserir mais dados:
INSERT INTO store.shopping_cart (userid, item_count) VALUES ('4567', 20);
  1. Limpeza:
docker kill cassandra
       docker network rm cassandra

Tags: Cassandra Instalação Docker CQLSH

Publicado em 8-10 02:57