Cassandra-インストール

Cassandraには、cqlshおよびさまざまな言語のドライバーを使用してアクセスできます。この章では、Cassandraと連携するようにcqlsh環境とjava環境の両方をセットアップする方法について説明します。

インストール前のセットアップ

Linux環境にCassandraをインストールする前に、を使用してLinuxをセットアップする必要があります。 ssh(セキュアシェル)。Linux環境をセットアップするには、以下の手順に従ってください。

ユーザーを作成する

最初に、HadoopファイルシステムをUnixファイルシステムから分離するために、Hadoop用に別のユーザーを作成することをお勧めします。以下の手順に従って、ユーザーを作成します。

  • コマンドを使用してrootを開きます “su”

  • コマンドを使用してrootアカウントからユーザーを作成します “useradd username”

  • これで、コマンドを使用して既存のユーザーアカウントを開くことができます “su username”

Linuxターミナルを開き、次のコマンドを入力してユーザーを作成します。

$ su
password:
# useradd hadoop
# passwd hadoop
New passwd:
Retype new passwd

SSHセットアップとキー生成

SSHセットアップは、開始、停止、分散デーモンシェル操作など、クラスターでさまざまな操作を実行するために必要です。Hadoopのさまざまなユーザーを認証するには、Hadoopユーザーに公開鍵と秘密鍵のペアを提供し、それをさまざまなユーザーと共有する必要があります。

次のコマンドは、SSHを使用してキーと値のペアを生成するために使用されます-

  • id_rsa.pubからauthorized_keysに公開鍵をコピーします。
  • 所有者を提供し、
  • それぞれauthorized_keysファイルへの読み取りおよび書き込み権限。
$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
  • sshを確認します。
ssh localhost

Javaのインストール

JavaはCassandraの主な前提条件です。まず、次のコマンドを使用して、システムにJavaが存在することを確認する必要があります-

$ java -version

すべてが正常に機能する場合は、次の出力が得られます。

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)

システムにJavaがない場合は、以下の手順に従ってJavaをインストールしてください。

ステップ1

次のリンクからjava(JDK <最新バージョン> -X64.tar.gz)をダウンロードします。

Then jdk-7u71-linux-x64.tar.gz will be downloaded onto your system.

ステップ2

通常、ダウンロードしたJavaファイルはDownloadsフォルダーにあります。それを確認し、抽出しますjdk-7u71-linux-x64.gz 次のコマンドを使用してファイルします。

$ 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

ステップ3

すべてのユーザーがJavaを使用できるようにするには、Javaを「/ usr / local /」の場所に移動する必要があります。rootを開き、次のコマンドを入力します。

$ su
password:
# mv jdk1.7.0_71 /usr/local/
# exit

ステップ4

設定用 PATH そして JAVA_HOME 変数については、次のコマンドを追加してください ~/.bashrc ファイル。

export JAVA_HOME = /usr/local/jdk1.7.0_71
export PATH = $PATH:$JAVA_HOME/bin

次に、すべての変更を現在実行中のシステムに適用します。

$ source ~/.bashrc

ステップ5

次のコマンドを使用して、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

今使用します java -version 上で説明したように端末からのコマンド。

パスの設定

以下に示すように、「/。bashrc」にCassandraパスのパスを設定します。

[hadoop@linux ~]$ gedit ~/.bashrc

export CASSANDRA_HOME = ~/cassandra
export PATH = $PATH:$CASSANDRA_HOME/bin

Cassandraをダウンロードする

Apache Cassandraは、次のコマンドを使用してダウンロードリンクCassandraから入手できます。

$ wget http://supergsego.com/apache/cassandra/2.1.2/apache-cassandra-2.1.2-bin.tar.gz

コマンドを使用してCassandraを解凍します zxvf 以下に示すように。

$ tar zxvf apache-cassandra-2.1.2-bin.tar.gz.

以下に示すように、cassandraという名前の新しいディレクトリを作成し、ダウンロードしたファイルの内容をそのディレクトリに移動します。

$ mkdir Cassandra
$ mv apache-cassandra-2.1.2/* cassandra.

Cassandraを構成する

を開きます cassandra.yaml: ファイルは、で利用可能になります bin カサンドラのディレクトリ。

$ gedit cassandra.yaml

Note − debまたはrpmパッケージからCassandraをインストールした場合、構成ファイルは次の場所にあります。 /etc/cassandra カサンドラのディレクトリ。

上記のコマンドは、 cassandra.yamlファイル。次の構成を確認します。デフォルトでは、これらの値は指定されたディレクトリに設定されます。

  • data_file_directories “/var/lib/cassandra/data”

  • commitlog_directory “/var/lib/cassandra/commitlog”

  • saved_caches_directory “/var/lib/cassandra/saved_caches”

以下に示すように、これらのディレクトリが存在し、書き込み可能であることを確認してください。

ディレクトリを作成する

スーパーユーザーとして、2つのディレクトリを作成します /var/lib/cassandra そして /var./log/cassandra Cassandraがデータを書き込む場所。

[root@linux cassandra]# mkdir /var/lib/cassandra
[root@linux cassandra]# mkdir /var/log/cassandra

フォルダにアクセス許可を与える

以下に示すように、新しく作成されたフォルダーに読み取り/書き込み権限を付与します。

[root@linux /]# chmod 777 /var/lib/cassandra
[root@linux /]# chmod 777 /var/log/cassandra

Cassandraを起動します

Cassandraを起動するには、ターミナルウィンドウを開き、Cassandraを解凍したCassandraホームディレクトリ/ホームに移動し、次のコマンドを実行してCassandraサーバーを起動します。

$ cd $CASSANDRA_HOME
$./bin/cassandra -f

–fオプションを使用すると、Cassandraは、バックグラウンドプロセスとして実行するのではなく、フォアグラウンドにとどまるように指示されます。すべてがうまくいけば、Cassandraサーバーが起動していることがわかります。

プログラミング環境

プログラムでCassandraをセットアップするには、次の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

それらを別のフォルダーに配置します。たとえば、これらのjarファイルをという名前のフォルダーにダウンロードしています。“Cassandra_jars”

このフォルダのクラスパスをで設定します “.bashrc”以下に示すようにファイルします。

[hadoop@linux ~]$ gedit ~/.bashrc

//Set the following class path in the .bashrc file.

export CLASSPATH = $CLASSPATH:/home/hadoop/Cassandra_jars/*

Eclipse環境

Eclipseを開き、Cassandra_Examplesという新しいプロジェクトを作成します。

プロジェクトを右クリックして、 Build Path→Configure Build Path 以下に示すように。

プロパティウィンドウが開きます。[ライブラリ]タブで、[Add External JARs。jarファイルを保存したディレクトリに移動します。以下に示すように、5つのjarファイルをすべて選択し、[OK]をクリックします。

参照ライブラリの下に、以下に示すように追加されたすべての必要なjarを確認できます-

Mavenの依存関係

以下に示すのは、Mavenを使用してCassandraプロジェクトをビルドするためのpom.xmlです。

<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>