Cassandra - Instalación
Se puede acceder a Cassandra usando cqlsh, así como controladores de diferentes idiomas. Este capítulo explica cómo configurar los entornos cqlsh y java para trabajar con Cassandra.
Configuración previa a la instalación
Antes de instalar Cassandra en un entorno Linux, necesitamos configurar Linux usando ssh(Cubierta segura). Siga los pasos que se indican a continuación para configurar el entorno Linux.
Crear un usuario
Al principio, se recomienda crear un usuario separado para Hadoop para aislar el sistema de archivos Hadoop del sistema de archivos Unix. Siga los pasos que se indican a continuación para crear un usuario.
Abra la raíz usando el comando “su”.
Cree un usuario desde la cuenta raíz usando el comando “useradd username”.
Ahora puede abrir una cuenta de usuario existente usando el comando “su username”.
Abra la terminal de Linux y escriba los siguientes comandos para crear un usuario.
$ su
password:
# useradd hadoop
# passwd hadoop
New passwd:
Retype new passwd
Configuración de SSH y generación de claves
La configuración de SSH es necesaria para realizar diferentes operaciones en un clúster, como iniciar, detener y distribuir operaciones de shell de demonio. Para autenticar a diferentes usuarios de Hadoop, es necesario proporcionar un par de claves pública / privada para un usuario de Hadoop y compartirlo con diferentes usuarios.
Los siguientes comandos se utilizan para generar un par clave-valor mediante SSH:
- copie el formulario de claves públicas id_rsa.pub a allowed_keys,
- y proporcionar propietario,
- permisos de lectura y escritura en el archivo autorizado_keys respectivamente.
$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
- Verificar ssh:
ssh localhost
Instalación de Java
Java es el principal requisito previo para Cassandra. En primer lugar, debe verificar la existencia de Java en su sistema usando el siguiente comando:
$ java -version
Si todo funciona bien, obtendrá el siguiente resultado.
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b13)
Java HotSpot(TM) Client VM (build 25.0-b02, mixed mode)
Si no tiene Java en su sistema, siga los pasos que se indican a continuación para instalar Java.
Paso 1
Descargue java (JDK <última versión> - X64.tar.gz) desde el siguiente enlace:
Then jdk-7u71-linux-x64.tar.gz will be downloaded onto your system.
Paso 2
Generalmente, encontrará el archivo java descargado en la carpeta Descargas. Verifíquelo y extraiga eljdk-7u71-linux-x64.gz archivo usando los siguientes comandos.
$ cd Downloads/
$ ls
jdk-7u71-linux-x64.gz
$ tar zxf jdk-7u71-linux-x64.gz
$ ls
jdk1.7.0_71 jdk-7u71-linux-x64.gz
Paso 3
Para que Java esté disponible para todos los usuarios, debe moverlo a la ubicación “/ usr / local /”. Abra root y escriba los siguientes comandos.
$ su
password:
# mv jdk1.7.0_71 /usr/local/
# exit
Paso 4
Para configurar PATH y JAVA_HOME variables, agregue los siguientes comandos a ~/.bashrc archivo.
export JAVA_HOME = /usr/local/jdk1.7.0_71
export PATH = $PATH:$JAVA_HOME/bin
Ahora aplique todos los cambios en el sistema en ejecución actual.
$ source ~/.bashrc
Paso 5
Utilice los siguientes comandos para configurar alternativas de Java.
# alternatives --install /usr/bin/java java usr/local/java/bin/java 2
# alternatives --install /usr/bin/javac javac usr/local/java/bin/javac 2
# alternatives --install /usr/bin/jar jar usr/local/java/bin/jar 2
# alternatives --set java usr/local/java/bin/java
# alternatives --set javac usr/local/java/bin/javac
# alternatives --set jar usr/local/java/bin/jar
Ahora usa el java -version comando desde el terminal como se explicó anteriormente.
Marcando el camino
Establezca la ruta de la ruta de Cassandra en "/.bashrc" como se muestra a continuación.
[hadoop@linux ~]$ gedit ~/.bashrc
export CASSANDRA_HOME = ~/cassandra
export PATH = $PATH:$CASSANDRA_HOME/bin
Descarga Cassandra
Apache Cassandra está disponible en Download Link Cassandra usando el siguiente comando.
$ wget http://supergsego.com/apache/cassandra/2.1.2/apache-cassandra-2.1.2-bin.tar.gz
Descomprima Cassandra usando el comando zxvf Como se muestra abajo.
$ tar zxvf apache-cassandra-2.1.2-bin.tar.gz.
Cree un nuevo directorio llamado cassandra y mueva el contenido del archivo descargado a él como se muestra a continuación.
$ mkdir Cassandra
$ mv apache-cassandra-2.1.2/* cassandra.
Configurar Cassandra
Abre el cassandra.yaml: archivo, que estará disponible en el bin directorio de Cassandra.
$ gedit cassandra.yaml
Note - Si ha instalado Cassandra desde un paquete deb o rpm, los archivos de configuración se ubicarán en /etc/cassandra directorio de Cassandra.
El comando anterior abre el cassandra.yamlarchivo. Verifique las siguientes configuraciones. De forma predeterminada, estos valores se establecerán en los directorios especificados.
data_file_directories “/var/lib/cassandra/data”
commitlog_directory “/var/lib/cassandra/commitlog”
directorio_cachés_ guardado “/var/lib/cassandra/saved_caches”
Asegúrese de que estos directorios existan y se puedan escribir en ellos, como se muestra a continuación.
Crear directorios
Como superusuario, crea los dos directorios /var/lib/cassandra y /var./log/cassandra en el que Cassandra escribe sus datos.
[root@linux cassandra]# mkdir /var/lib/cassandra
[root@linux cassandra]# mkdir /var/log/cassandra
Dar permisos a las carpetas
Otorgue permisos de lectura y escritura a las carpetas recién creadas como se muestra a continuación.
[root@linux /]# chmod 777 /var/lib/cassandra
[root@linux /]# chmod 777 /var/log/cassandra
Inicio Cassandra
Para iniciar Cassandra, abra la ventana de terminal, navegue hasta el directorio de inicio de Cassandra / inicio, donde desempaquetó Cassandra, y ejecute el siguiente comando para iniciar su servidor Cassandra.
$ cd $CASSANDRA_HOME
$./bin/cassandra -f
El uso de la opción –f le dice a Cassandra que permanezca en primer plano en lugar de ejecutarse como un proceso en segundo plano. Si todo va bien, puede ver que se inicia el servidor Cassandra.
Entorno de programación
Para configurar Cassandra mediante programación, descargue los siguientes archivos jar:
- slf4j-api-1.7.5.jar
- cassandra-driver-core-2.0.2.jar
- guava-16.0.1.jar
- metrics-core-3.0.2.jar
- netty-3.9.0.Final.jar
Colócalos en una carpeta separada. Por ejemplo, estamos descargando estos frascos en una carpeta llamada“Cassandra_jars”.
Establezca la ruta de clase para esta carpeta en “.bashrc”archivo como se muestra a continuación.
[hadoop@linux ~]$ gedit ~/.bashrc
//Set the following class path in the .bashrc file.
export CLASSPATH = $CLASSPATH:/home/hadoop/Cassandra_jars/*
Entorno Eclipse
Abra Eclipse y cree un nuevo proyecto llamado Cassandra _Examples.
Haga clic derecho en el proyecto, seleccione Build Path→Configure Build Path Como se muestra abajo.
Abrirá la ventana de propiedades. En la pestaña Bibliotecas, seleccioneAdd External JARs. Navegue hasta el directorio donde guardó sus archivos jar. Seleccione los cinco archivos jar y haga clic en Aceptar como se muestra a continuación.
En Bibliotecas de referencia, puede ver todos los frascos necesarios agregados como se muestra a continuación:
Dependencias de Maven
A continuación se muestra el pom.xml para construir un proyecto de Cassandra usando maven.
<project xmlns = "http://maven.apache.org/POM/4.0.0"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>com.datastax.cassandra</groupId>
<artifactId>cassandra-driver-core</artifactId>
<version>2.0.2</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>16.0.1</version>
</dependency>
<dependency>
<groupId>com.codahale.metrics</groupId>
<artifactId>metrics-core</artifactId>
<version>3.0.2</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty</artifactId>
<version>3.9.0.Final</version>
</dependency>
</dependencies>
</project>