웹사이트 검색

CentOS 7에서 Riak KV NoSQL 데이터베이스 클러스터를 설정하는 방법


이 페이지에서

  1. 전제 조건
  2. 우리가 할 일\n
  3. 1단계 - CentOS 7에 Riak KV 설치
  4. 2단계 - 기본 구성 Riak KV
  5. 3단계 - Riak KV 클러스터 설정
  6. 4단계 - 테스트
  7. 참조

Riak은 고가용성, 내결함성, 운영 단순성 및 확장성을 제공하는 분산 NoSQL 데이터베이스입니다. Riak은 Erlang으로 작성되었으며 Riak KV(키-값), Riak TS(IoT/시계열에 최적화됨) 및 Riak CS(Riak Cloud Storage)를 포함하는 Basho 제품 라인의 일부입니다.

이 튜토리얼에서는 CentOS 7 서버에 NoSQL 데이터베이스 Riak KV를 설치하고 구성하는 방법을 보여드리겠습니다. 3개의 CentOS 서버로 Riak KV 클러스터를 생성합니다.

전제 조건

  • 3개의 서버 CentOS 7
    • riak01 10.1.1.10
    • riak02 10.1.1.11
    • riak03 10.1.1.12

    우리가 할 일

    1. CentOS 7에 Riak KV 설치
    2. 기본 Riak KV 구성
    3. Riak KV 클러스터 설정
    4. 테스트

    1단계 - CentOS 7에 Riak KV 설치

    이 가이드에서 수행할 첫 번째 단계는 Riak KV 패키지를 세 개의 CentOS 서버 모두에 설치하는 것이므로 모든 서버에서 이 단계의 모든 명령을 실행합니다.

    우리는 패키지 클라우드 리포지토리에서 Riak KV를 설치하고 CentOS 7 서버용 Riak KV 패키지를 사용할 것입니다.

    아래 명령을 실행하여 저장소를 추가하십시오.

    curl -s https://packagecloud.io/install/repositories/basho/riak/script.rpm.sh | sudo bash

    이 명령은 riak 리포지토리와 키를 시스템에 다운로드합니다.

    이제 아래의 yum 명령을 사용하여 Riak KV 패키지를 설치하십시오.

    sudo yum install riak-2.2.3-1.el7.centos.x86_64

    설치를 기다립니다.

    2단계 - 기본 구성 Riak KV

    이 단계에서는 NoSQL 클러스터용 Riak KV를 구성합니다. Riak KV 자체를 구성하기 전에 Ubuntu 시스템에서 열린 파일 제한을 설정해야 합니다.

    vim 편집기를 사용하여 /etc/security/limits.conf 파일을 편집합니다.

    vim /etc/security/limits.conf

    이제 아래 구성을 파일 끝에 붙여넣습니다.

    riak soft nofile 65536
    riak hard nofile 200000

    저장 및 종료.

    이제 /etc/riak 디렉토리로 이동하여 기본 구성 파일인 riak.conf를 편집하십시오.

    cd /etc/riak/
    vim riak.conf

    기본 노드 이름[email 을 변경합니다.

    nodename = 

    이제 아래 스케줄러 행의 주석을 제거하십시오.

    erlang.schedulers.force_wakeup_interval = 500
    erlang.schedulers.compaction_of_load = false

    ring_size 행의 주석을 제거하고 기본값 64로 둡니다.

    ring_size = 64

    ServerIP로 HTTP 수신기 및 프로토콜 버퍼를 변경합니다.

    listener.http.internal = 10.1.1.10:8098
    listener.protobuf.internal = 10.1.11.10:8087

    저장 및 종료.

    이제 riak 구성을 테스트하고 riak 서비스를 시작하십시오.

    riak chkconfig
    riak start

    결과는 다음과 같습니다.

    다음으로 아래 명령을 실행하여 riak 서비스 구성을 테스트합니다.

    riak ping
    curl -v http://10.1.1.10:8098/types/default/props

    riak ping 명령에서 pong 결과를 얻었는지 확인하고 curl 명령에서 HTTP 상태 코드 200을 얻었는지 확인하십시오.

    Riak KV 분산 NoSQL의 기본 구성이 완료되었으며 Riak KV 클러스터를 설정할 준비가 되었습니다.

    메모:

    • 모든 서버 노드에서 이 단계의 모든 명령을 실행합니다.\n

    3단계 - Riak KV 클러스터 설정

    이 단계에서는 riak02 및 riak03 노드를 첫 번째 노드에 결합하여 클러스터를 설정합니다.

    - 두 번째 노드

    riak02 노드에서 아래의 riak-admin을 실행합니다.

    riak-admin cluster join 

    이제 riak01 노드로 돌아가서 아래의 riak-admin 명령을 실행합니다.

    riak-admin cluster plan
    riak-admin cluster commit

    그리고 riak02 노드가 클러스터에 추가되었으니 아래 명령어로 확인해보세요.

    riak-admin cluster status

    - 세 번째 노드

    riak03 노드에서 아래의 riak-admin 명령을 실행합니다.

    riak-admin cluster join 

    이제 riak01 노드로 돌아가서 아래의 riak-admin 명령을 실행합니다.

    riak-admin cluster plan
    riak-admin cluster commit

    모든 서버 노드 riak02 및 riak03이 클러스터에 추가되었습니다. 아래 명령을 사용하여 다시 확인하십시오.

    riak-admin cluster status

    Riak KV 클러스터 설치 및 구성이 완료되었습니다.

    4단계 - 테스트

    Riak KV NoSQL 클러스터가 생성되었으므로 이제 클러스터에 데이터 이미지를 업로드하여 클러스터를 테스트하고 모든 노드 간의 데이터 복제를 보장하기 위해 다른 노드에서 액세스하도록 테스트하려고 합니다.

    riak01 서버에서 아래의 wget 명령을 사용하여 이미지를 다운로드합니다.

    cd ~/
    wget https://vignette.wikia.nocookie.net/nichijou/images/a/a0/113407.jpg -O hakase.jpg

    이제 curl 명령을 사용하여 Riak KV 클러스터에 이미지를 업로드합니다.

    curl -XPUT http://10.1.1.10:8098/riak/images/hakase.jpg -H "Content-type: image/jpg" --data-binary @hakase.jpg

    웹 브라우저를 열고 다른 노드의 IP 주소를 입력하면 동일한 이미지가 표시됩니다.

    riak02.

    riak03.

    이미지 데이터를 삭제하려면 아래의 curl 명령어를 사용하세요.

    curl -XDELETE 'http://10.1.1.10:8098/riak/images/hakase.jpg'

    CentOS 7에서 Riak KV 클러스터 설치 및 구성이 성공적으로 완료되었습니다.

    참조

    • http://docs.basho.com/riak/kv/2.2.3/