Cassandra 2.1.2 설치하기.
카산드라(Cassandra)는 분산 데이터 스토리지 시스템 입니다. 아파치 재단에서 오픈소스로 만들어 배포하고 있고, 자바기반으로 제작되었습니다. peer to peer 프로토콜을 이용한 고가용성이 구현되어 있습니다.
이 문서는 카산드라(Cassandra) 2.1.2 에 싱글(Single) 노드를 위한 설치에 대한 것입니다. 설치환경은 CentOS 입니다.
jdk 7 update 75
카산드라(Cassandra) 2.1.2 는 jdk 7 update 75 버전 이상을 필요로 합니다. 만일 idk 버전 이하를 사용한다면 시작스크립트에서 오류를 내며 작동하지 않습니다. Oracle 홈페이지에서 jdk 7 update 75 를 다운받아 다음과 같이 압축을 해제합니다.
1 2 3 |
tar xvzf jdk-7u75-linux-x64.tar.gz -C /opt cd /opt ln -s jdk1.7.0_75 jdk |
카산드라(Cassandra) 2.1.2 설치
카산드라(Cassandra) 는 리눅스의 슈퍼유저인 root 로 실행할 필요가 없습니다. 카산드라(Cassandra) 를 운영하기 위한 시스템 계정을 만들고 그 시스템 계정으로 운영하면 됩니다.
1 2 |
useradd cassandra su - cassandra |
카산드라(Cassandra) 2.1.2 는 홈페이지에서 다운로드 받을 수 있습니다.
다운로드: 카산드라(Cassandra) 2.1.2
설치는 별도의 진행이 필요 없이 압축을 해제하면 됩니다.
1 2 |
tar xvzf apache-cassandra-2.1.2-bin.tar.gz ln -s apache-cassandra-2.1.2 cassandra |
이제 카산드라(Cassandra) 에서 사용할 디렉토리를 생성해야 합니다. 필요한 디렉토리는 다음과 같습니다.
- data_file_directories: /home/cassandra/data
- commitlog_directory: /home/cassandra/commitlog
- saved_caches_directory: /home/cassandra/saved_caches
1 2 3 |
mkdir /home/cassandra/data mkdir /home/cassandra/commitlog mkdir /home/cassandra/saved_caches |
카산드라(Cassandra) 에서 위 디렉토리를 설정하기 위해서 설정파일을 편집해 줍니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# vim cassandra/conf/cassandra.yaml # Directories where Cassandra should store data on disk. Cassandra # will spread data evenly across them, subject to the granularity of # the configured compaction strategy. # If not set, the default directory is $CASSANDRA_HOME/data/data. data_file_directories: - /home/cassandra/data # commit log. when running on magnetic HDD, this should be a # separate spindle than the data directories. # If not set, the default directory is $CASSANDRA_HOME/data/commitlog. commitlog_directory: /home/cassandra/commitlog # saved caches # If not set, the default directory is $CASSANDRA_HOME/data/saved_caches. saved_caches_directory: /home/cassandra/saved_caches |
시작 스크립트
jdk 7 update 75 에 대해 시스템 java 설정을 해주면 별도로 필요가 없지만 카산드라(Cassandra) 에서만 쓰게 하기위해서는 시작스크립트를 작성하고 jdk 7 update 75 를 인식시켜줘야 합니다.
1 2 3 4 5 6 7 8 |
#!/bin/sh export HOME=/home/cassandra export JAVA_HOME=/opt/jdk export JRE_HOME=/opt/jdk/jre export PATH=$PATH:/opt/jdk/bin:/opt/jdk/jre/bin $HOME/cassandra/bin/cassandra |