LoginSignup
4
5

More than 5 years have passed since last update.

CentOS6.5にcassandra2系をインストール

Posted at

cassandraちゃんの動物本も買ったまま放置でしたので。
手元にある本は1.xの事が書いておりますが、とりあえず最新の方が(気分的に)良いの2.0.9を準備してきます。

CentOS 6.5
32bit
です。

cassandraのダウンロード
$ cd /usr/local

$ wget http://ftp.meisei-u.ac.jp/mirror/apache/dist/cassandra/2.0.9/apache-cassandra-2.0.9-bin.tar.gz
$ tar zxvf apache-cassandra-2.0.9-bin.tar.gz

$ mkdir -p /var/log/cassandra
$ mkdir -p /var/lib/cassandra

おしまい。
解答したフォルダ名は適宜変更。
$ mv -f apache-cassandra-2.0.9 cassandra

実行
$ /usr/local/cassandra/bin/cassandra -f
Cassandra 2.0 and later require Java 7 or later.

java7にしろと言われたのでそちらを行います。
参考URL:http://tecadmin.net/steps-to-install-java-on-centos-5-6-or-rhel-5-6/
多分上見た方が早い

$ cd /opt/
$ wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/7u65-b17/jdk-7u65-linux-i586.tar.gz"

$ tar xzf jdk-7u60-linux-i586.tar.gz
$ cd /opt/jdk1.7.0_65/
$ alternatives --install /usr/bin/java java /opt/jdk1.7.0_65/bin/java 2
$ alternatives --config java

2 プログラムがあり 'java' を提供します。

選択 コマンド

*+ 1 /usr/lib/jvm/jre-1.6.0-openjdk/bin/java
2 /opt/jdk1.7.0_65/bin/java

Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:2

$ alternatives --install /usr/bin/jar jar /opt/jdk1.7.0_65/bin/jar 2
$ alternatives --install /usr/bin/javac javac /opt/jdk1.7.0_65/bin/javac 2
$ alternatives --set jar /opt/jdk1.7.0_65/bin/jar
$ alternatives --set javac /opt/jdk1.7.0_65/bin/javac
$ java -version

java version "1.7.0_65"
Java(TM) SE Runtime Environment (build 1.7.0_65-b17)
Java HotSpot(TM) Client VM (build 24.65-b04, mixed mode)

※64bitの方をダウンロードしてると実行できないので注意です
$ java -version
-bash: /usr/bin/java: バイナリファイルを実行できません

$ export JAVA_HOME=/opt/jdk1.7.0_65
$ export JRE_HOME=/opt/jdk1.7.0_65/jre
$ export PATH=$PATH:/opt/jdk1.7.0_65/bin:/opt/jdk1.7.0_65/jre/bin

cassandra再度起動
$ bin/cassandra -f
Cassandra 2.0 and later require Java 7 or later.

まだjava7にしろと怒られます。
念のため、再度上のexportを一通り実行しておきます。

再挑戦
$ bin/cassandra -f
エラー: エージェントが例外をスローしました : java.lang.NullPointerException

怒られなくなりましたが、怒られます。
また色々調整です。

cassandra.batのXms,Xmxが1Gだと動かないことがあるそうなので、それぞれ512Mに編集します。
$ vi cassandra/bin/cassandra.bat
REM ***** JAVA options *****
set JAVA_OPTS=-ea^
-javaagent:"%CASSANDRA_HOME%\lib\jamm-0.2.5.jar"^
-Xms1G^
-Xmx1G^
=>
REM ***** JAVA options *****
set JAVA_OPTS=-ea^
-javaagent:"%CASSANDRA_HOME%\lib\jamm-0.2.5.jar"^
-Xms512M^
-Xmx512M^

まだ怒られるので、cassandra.in.shを編集します。
$ echo $JAVA_HOME
これで出力されたやつをメモ
$ vi apache-cassandra-2.0.9/bin/cassandra.in.sh

JAVA_HOME can optionally be set here
JAVA_HOME=「echo $JAVA_HOMEで出力されたパスを記入」

これで怒られなくなりました。
echo $JAVA_HOMEで何も出ないという人は上のexportをやり直そう。

cassandra実行
$ ./bin/cassandra-cli
Exception connecting to 127.0.0.1/9160. Reason: 接続を拒否されました.
Welcome to Cassandra CLI version 2.0.9

拒否されました。
とりあえずファイアウォール的なの調整してみます。
$ vi /etc/sysconfig/iptables
追記
-A INPUT -p tcp -m tcp --dport 9160 -j ACCEPT

$ /etc/init.d/iptables restart

まだ拒否されます。
なんだかPIDに追加だかなんだかがいるみたいなので下記を実行
$ ./bin/cassandra -p /var/run/cassandra.pid

cassandra再度起動
$ ./bin/cassandra-cli

Column Family assumptions read from /root/.cassandra/assumptions.json
Connected to: "Test Cluster" on 127.0.0.1/9160
Welcome to Cassandra CLI version 2.0.9

The CLI is deprecated and will be removed in Cassandra 3.0. Consider migrating to cqlsh.
CQL is fully backwards compatible with Thrift data; see http://www.datastax.com/dev/blog/thrift-to-cql3

Type 'help;' or '?' for help.
Type 'quit;' or 'exit;' to quit.

[default@unknown]

無事出来ました。
動けば満足な駄目えんじにーあなので細かいことは気にしません。

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5