Guia de tecnologias

Instalar o Apache Cassandra no CentOS 7

4 min read Banco de Dados Atualizado 21 Oct 2025
Instalar Apache Cassandra no CentOS 7
Instalar Apache Cassandra no CentOS 7

O que é o Cassandra

Apache Cassandra é um sistema de banco de dados NoSQL distribuído e open source. Armazena grandes volumes de dados em clusters descentralizados com alta disponibilidade e sem ponto único de falha. Definição rápida: Cassandra é um banco orientado a colunas, tolerante a falhas e escalável horizontalmente.

Variantes de busca (intenção primária e relacionadas)

  • instalar apache cassandra centos 7
  • instalar cassandra centos
  • cassandra 3.11 centos 7
  • como instalar cassandra no linux
  • configurar cassandra e cqlsh

Pré-requisitos e checklist antes de começar

  • Acesso root ou sudo no servidor CentOS 7
  • Conexão de rede estável e repositórios atualizados
  • 4 GB+ de RAM recomendado para nós de produção
  • Verificar SELinux e firewall (ajustar conforme necessário)
  • Espaço em disco suficiente e relógio do sistema sincronizado

Importante: Em ambientes de produção, teste em um nó isolado antes de aplicar em cluster.

Passo 1 - Instalar o Java

Atualize os pacotes e repositórios primeiro.

yum -y update

No tutorial original usamos o Oracle JDK 8u131. Para baixar e instalar o RPM do Oracle JDK, execute:

wget --no-cookies --no-check-certificate --header "Cookie:oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm"

Se não tiver wget instalado, instale-o com:

yum -y install wget

Instale o RPM do Oracle JDK:

yum -y localinstall jdk-8u131-linux-x64.rpm

Verifique a versão do Java:

java -version

Saída esperada:

[root@liptan-pc ~]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

Confirme a variável de ambiente JAVA_HOME:

echo $JAVA_HOME

Se estiver vazia, adicione ao perfil do usuário. Editaremos o .bash_profile com nano:

nano ~/.bash_profile

Adicione no final do arquivo:

export JAVA_HOME=/usr/java/jdk1.8.0_131/
export JRE_HOME=/usr/java/jdk1.8.0_131/jre

Atualize o ambiente:

source ~/.bash_profile

Verifique novamente:

[root@liptan-pc ~]# echo $JAVA_HOME
/usr/java/jdk1.8.0_131/

Nota sobre alternativas: Para muitos casos, o OpenJDK é uma alternativa adequada e mais simples de instalar via repositório:

yum -y install java-1.8.0-openjdk-devel

Use OpenJDK especialmente em produção quando licenciamento do Oracle JDK for uma preocupação.

Passo 2 - Instalar o Cassandra

Adicione o repositório do Apache Cassandra criando um arquivo de repositório:

nano /etc/yum.repos.d/cassandra.repo

Cole o conteúdo abaixo no arquivo:

[cassandra]
name=Apache Cassandra
baseurl=https://www.apache.org/dist/cassandra/redhat/311x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://www.apache.org/dist/cassandra/KEYS

Instale o pacote Cassandra:

yum -y install cassandra

Recarregue os daemons do systemd:

systemctl daemon-reload

Inicie o serviço Cassandra:

systemctl start cassandra

Habilite para iniciar automaticamente no boot:

systemctl enable cassandra

Verifique o status do nó com nodetool:

nodetool status

Exemplo de saída quando o nó está UP:

[root@ip-172-31-7-136 ~]# nodetool status
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address    Load       Tokens       Owns (effective)  Host ID                               Rack
UN  127.0.0.1  136.29 KiB  256          100.0%            b3d26649-9e10-4bee-9b3c-8e81c4394b2e  rack1

Solução rápida para erro de conexão nodetool

Se o nodetool gerar erro como:

nodetool: Failed to connect to '127.0.0.1:7199' - ConnectException: 'Connection refused (Connection refused)'.

Edite o arquivo de ambiente do Cassandra e configure o hostname RMI:

nano /etc/cassandra/default.conf/cassandra-env.sh

Encontre a linha:

# JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname="

Descomente e defina para o IP localhost ou hostname apropriado:

JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=127.0.0.1"

Reinicie o Cassandra:

systemctl restart cassandra

Verifique logs se continuar com problemas:

journalctl -u cassandra -xe

Também verifique portas e firewall:

ss -ltnp | grep 9042
firewall-cmd --permanent --add-port=9042/tcp
firewall-cmd --permanent --add-port=7199/tcp
firewall-cmd --reload

Usando a cqlsh e exemplo básico de CQL

Cassandra inclui a shell cqlsh para executar queries CQL.

cqlsh

Saída esperada:

[root@liptan-pc ~]# cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.0 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.

Exemplo simples para criar um keyspace e uma tabela:

CREATE KEYSPACE IF NOT EXISTS exemplo WITH replication = {'class': 'SimpleStrategy', 'replication_factor' : 1};
USE exemplo;
CREATE TABLE IF NOT EXISTS usuarios (id uuid PRIMARY KEY, nome text, email text);
INSERT INTO usuarios (id, nome, email) VALUES (uuid(), 'Alice', '[email protected]');
SELECT * FROM usuarios;

Critérios de aceitação para instalação bem-sucedida

  • Cassandra responde em nodetool status com pelo menos um nó UP
  • cqlsh conecta-se ao endereço 127.0.0.1:9042
  • Serviço cassandra está ativo no systemctl

Boas práticas e segurança

  • Bind de interface: ajuste seeds, listen_address e rpc_address em /etc/cassandra/default.conf/cassandra.yaml
  • Autenticação: habilite autenticação interna (authenticator: PasswordAuthenticator) para produção
  • Criptografia: habilite SSL/TLS para comunicação entre nós e clientes quando necessário
  • Usuários e permissões: crie usuários com permissões mínimas
  • Monitore: configure métricas e backups regulares

Exemplo de comandos firewall para portas comuns:

firewall-cmd --permanent --add-port=7000/tcp
firewall-cmd --permanent --add-port=7001/tcp
firewall-cmd --permanent --add-port=7199/tcp
firewall-cmd --permanent --add-port=9042/tcp
firewall-cmd --reload

Diagnóstico e recuperação rápida

  • Verifique status do serviço:
systemctl status cassandra
  • Logs do Cassandra:
journalctl -u cassandra -b
tail -n 200 /var/log/cassandra/system.log
  • Se um nó não responder, isole problemas de rede, sincronize relógio (ntpd/chrony) e verifique configuração de seeds.

Plano de rollback simples

  • Pare o serviço Cassandra:
systemctl stop cassandra
  • Reverter alterações recentes em cassandra.yaml e cassandra-env.sh
  • Restaurar backup de dados se necessário (procedimento depende do método de backup utilizado)
  • Reiniciar o serviço e validar nodetool status

Checklist por função

  • Administrador de sistema: atualizar SO, configurar firewall, instalar Java, systemd
  • DBA/engenheiro de dados: configurar keyspaces, políticas de replicação, backups
  • DevOps: automação da instalação, monitoramento e alertas

Quando este procedimento falha

  • Se nodetool não conectar após ajustar RMI, verifique SELinux e permissões dos arquivos de configuração
  • Se cqlsh não conectar, confirme se native_transport está habilitado em cassandra.yaml e porta 9042 está aberta

Alternativas e migração

  • Considere usar pacotes do fornecedor ou imagens Docker oficiais para ambientes conteinerizados
  • Para novas implantações, verifique imagens do Cassandra no Docker Hub e orquestração Kubernetes

Conclusão

Apache Cassandra deve estar instalado e funcionando no seu servidor CentOS 7 após seguir estes passos. Para ambientes de produção, aplique as recomendações de segurança, monitoração e teste de failover antes de aceitar tráfego real.

Resumo final

  • Instale Java (Oracle JDK ou OpenJDK) e defina JAVA_HOME
  • Adicione repositório do Cassandra e instale o pacote
  • Inicie e habilite o serviço, verifique com nodetool e cqlsh
  • Aplique hardening e monitoração para produção
Autor
Edição

Materiais semelhantes

Criar perfil público no Snapchat
Redes Sociais

Criar perfil público no Snapchat

Alternativas open source essenciais para migrar ao Linux
Linux

Alternativas open source essenciais para migrar ao Linux

Instalar CyanogenMod no Lenovo P780
Android

Instalar CyanogenMod no Lenovo P780

Instalador USB do Snow Leopard — Guia
Mac

Instalador USB do Snow Leopard — Guia

Yubby: criar canal com vídeos de 30 sites
Ferramentas

Yubby: criar canal com vídeos de 30 sites

Mostrar barra de espaço livre no Windows 10
Windows

Mostrar barra de espaço livre no Windows 10