Ubuntu 14.04에서 Cassandra를 설치하고 단일 노드 클러스터를 실행하는 방법
소개
Cassandra 또는 Apache Cassandra는 확장성이 뛰어난 오픈 소스 NoSQL 데이터베이스 시스템으로 다중 노드 설정에서 뛰어난 성능을 발휘합니다.
이 튜토리얼에서는 Ubuntu 14.04에서 단일 노드 클러스터를 실행하기 위해 이를 설치하고 사용하는 방법을 배웁니다.
전제 조건
이 자습서를 완료하려면 다음이 필요합니다.
- 우분투 14.04 물방울
- Sudo 권한이 있는 루트가 아닌 사용자(Ubuntu 14.04의 초기 서버 설정에 설정 방법이 설명되어 있음)
1단계 - Oracle Java Virtual Machine 설치
Cassandra에는 Oracle Java SE Runtime Environment(JRE)가 설치되어 있어야 합니다. 따라서 이 단계에서는 기본 JRE를 설치하고 확인합니다.
Oracle JRE 패키지를 사용 가능하게 하려면 다음 명령을 사용하여 PPA(Personal Package Archives)를 추가해야 합니다.
- sudo add-apt-repository ppa:webupd8team/java
패키지 데이터베이스를 업데이트합니다.
- sudo apt-get update
그런 다음 Oracle JRE를 설치합니다. 이 특정 패키지를 설치하면 패키지가 설치될 뿐만 아니라 기본 JRE가 됩니다. 메시지가 표시되면 사용권 계약에 동의합니다.
- sudo apt-get install oracle-java8-set-default
설치 후 기본 JRE인지 확인합니다.
- java -version
다음과 유사한 출력이 표시되어야 합니다.
Outputjava version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)
2단계 - 카산드라 설치
공식 Apache Software Foundation 리포지토리의 패키지를 사용하여 Cassandra를 설치하므로 시스템에서 패키지를 사용할 수 있도록 리포지토리를 추가하는 것으로 시작합니다. Cassandra 2.2.2는 이 게시 시점의 최신 버전입니다. 최신 버전과 일치하도록 22x
를 변경합니다. 예를 들어 Cassandra 2.3이 최신 버전인 경우 23x
를 사용합니다.
- echo "deb http://www.apache.org/dist/cassandra/debian 22x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
저장소의 소스를 추가합니다.
- echo "deb-src http://www.apache.org/dist/cassandra/debian 22x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
패키지 업데이트 중 패키지 서명 경고를 방지하려면 패키지 리포지토리와 연결된 Apache Software Foundation의 공개 키 3개를 추가해야 합니다.
다음 명령 쌍을 사용하여 첫 번째 명령을 추가하십시오. 이 명령은 차례로 실행되어야 합니다.
- gpg --keyserver pgp.mit.edu --recv-keys F758CE318D77295D
- gpg --export --armor F758CE318D77295D | sudo apt-key add -
그런 다음 두 번째 키를 추가합니다.
- gpg --keyserver pgp.mit.edu --recv-keys 2B5C1B00
- gpg --export --armor 2B5C1B00 | sudo apt-key add -
그런 다음 세 번째를 추가하십시오.
- gpg --keyserver pgp.mit.edu --recv-keys 0353B12C
- gpg --export --armor 0353B12C | sudo apt-key add -
패키지 데이터베이스를 다시 한 번 업데이트합니다.
- sudo apt-get update
마지막으로 Cassandra를 설치합니다.
- sudo apt-get install cassandra
3단계 - Cassandra 문제 해결 및 시작
일반적으로 Cassandra는 이 시점에서 자동으로 시작되어야 합니다. 그러나 버그로 인해 그렇지 않습니다. 실행되고 있지 않은지 확인하려면 다음을 입력하십시오.
- sudo service cassandra status
실행 중이 아니면 다음 출력이 표시됩니다.
Output* could not access pidfile for Cassandra
이는 Ubuntu의 최신 버전 Cassandra에서 잘 알려진 문제입니다. 몇 가지 수정을 시도해 보겠습니다. 먼저 init 스크립트를 편집하여 시작합니다. 수정할 매개변수는 해당 스크립트의 60행에 있으므로 다음을 사용하여 엽니다.
- sudo nano +60 /etc/init.d/cassandra
해당 줄은 다음과 같아야 합니다.
/etc/init.d/cassandraCMD_PATT="cassandra.+CassandraDaemon"
다음으로 변경:
/etc/init.d/cassandra
CMD_PATT="cassandra"
파일을 닫고 저장한 다음 서버를 재부팅합니다.
- sudo reboot
또는:
- sudo shutdown -r now
다시 로그인하면 이제 Cassandra가 실행 중이어야 합니다. 확인하다:
- sudo service cassandra status
성공하면 다음이 표시됩니다.
Output* Cassandra is running
4단계 - 클러스터에 연결
Cassandra를 성공적으로 시작할 수 있으면 클러스터의 상태를 확인하십시오.
- sudo nodetool status
출력에서 UN은 Up and Normal을 의미합니다.
OutputDatacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 127.0.0.1 142.02 KB 256 ? 2053956d-7461-41e6-8dd2-0af59436f736 rack1
Note: Non-system keyspaces don't have the same replication settings, effective ownership information is meaningless
그런 다음 대화형 명령줄 인터페이스 cqlsh
를 사용하여 연결합니다.
- cqlsh
다음과 같이 연결되는 것을 볼 수 있습니다.
OutputConnected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 2.2.2 | CQL spec 3.3.1 | Native protocol v4]
Use HELP for help.
cqlsh>
종료하려면 exit
를 입력하십시오.
- exit
결론
축하해요! 이제 Ubuntu 14.04에서 실행되는 단일 노드 Cassandra 클러스터가 있습니다. Cassandra에 대한 자세한 내용은 프로젝트 웹사이트에서 확인할 수 있습니다.