웹사이트 검색

CentOS 8에 Apache CouchDB를 설치하는 방법


Erlang 언어로 작성된 Apache CouchDB는 기본적으로 JSON 형식의 데이터를 지원하는 신뢰할 수 있는 무료 NoSQL 데이터베이스 엔진입니다. 이를 통해 MySQL과 같은 기존 SQL 관계형 데이터베이스와 달리 데이터 모델링이 더욱 확장 가능하고 쉬워집니다. CouchDB의 가장 큰 특징은 광범위한 컴퓨팅 장치와 다양한 컴퓨팅 환경에 걸쳐 데이터에 대한 고가용성과 주문형 액세스를 제공하는 복제입니다.

이 가이드에서는 CentOS 8에서 Apache CouchDB를 설치하고 구성하는 방법에 대한 단계별 절차를 안내합니다.

1단계: EPEL 리포지토리 설치

CouchDB 설치의 첫 번째 단계는 다음 yum 명령을 사용하여 CentOS 8EPEL 저장소를 설치하는 것입니다.

yum install epel-release

2단계: CouchDB 저장소 활성화

EPEL 패키지를 성공적으로 설치했으면 이제 표시된 대로 먼저 저장소 파일을 생성하여 CouchDB 저장소를 활성화하고 활성화하세요.

vi /etc/yum.repos.d/apache-couchdb.repo

다음으로 아래 구성을 저장소 파일에 붙여넣고 저장합니다.

[bintray--apache-couchdb-rpm]
name=bintray--apache-couchdb-rpm
baseurl=http://apache.bintray.com/couchdb-rpm/el$releasever/$basearch/
gpgcheck=0
repo_gpgcheck=0
enabled=1

3단계: CentOS 8에 CouchDB 설치

구성 파일에 CouchDB 저장소가 정의되어 있으면 이제 명령을 사용하여 CouchDB를 설치하고 진행하세요.

yum install couchdb

CouchDB 패키지 및 해당 종속성을 성공적으로 설치한 후 시작하고 CouchDB를 활성화하여 부팅 시 시작하고 명령을 실행하여 상태를 확인합니다.

systemctl start couchdb
systemctl enable couchdb
systemctl status couchdb

또한 표시된 대로 netstat 명령을 사용하여 CouchDB 수신 대기 포트 5984를 확인할 수 있습니다.

netstat -pnltu

4단계: CentOS 8에서 CouchDB 구성

CouchDB는 독립형 모드 또는 클러스터형 모드로 구성할 수 있습니다. 하지만 이 가이드에서는 단일 모드 구성으로 CouchDB 서버를 구성하겠습니다. 또한 웹 브라우저를 통해 액세스할 수 있도록 CouchDB를 구성하겠습니다.

CouchDB의 구성 파일은 /opt/couchdb/etc/ 디렉터리에 있습니다. local.ini 파일에서 몇 가지 구성을 만들어 보겠습니다. 즐겨찾는 편집기를 사용하여 파일을 엽니다.

vi /opt/couchdb/etc/local.ini

[admins] 섹션에서 바로 아래 줄의 주석 처리를 제거하여 관리자 계정을 생성하고 형식에 관리자 비밀번호를 정의합니다.

[admins]
admin = mypassword

그런 다음 [chttpd] 섹션으로 스크롤하세요. 포트 및 바인드 주소 값의 주석 처리를 제거하십시오. 또한, 외부 IP 주소에서의 접속을 허용하려면 바인딩 주소를 0.0.0.0으로 설정하세요. 나중에 보안상의 이유로 이 값을 변경할 수 있습니다.

[chttpd]
port = 5984
bind_address = 0.0.0.0

변경 사항을 저장하고 구성 파일을 종료합니다. 변경 사항을 적용하려면 CouchDB를 다시 시작하세요.

systemctl restart couchdb

서버에서 방화벽을 실행 중인 경우 CouchDB 트래픽을 허용하려면 포트 5984를 열어야 합니다.

firewall-cmd --zone=public --permanent --add-port=5984/tcp
firewall-cmd --reload

5단계: CouchDB 웹 인터페이스에 액세스

구성에 따르면 CouchDBlocalhost:5984에서 실행되어야 합니다. CouchDB가 예상대로 작동하는지 확인하려면 컬 명령을 사용하여 CouchDB 정보를 JSON 형식으로 인쇄하세요.

curl http://127.0.0.1:5984/

브라우저를 실행하고 표시된 대로 서버의 IP 주소를 찾아보면 모든 것이 계획대로 진행되었는지 확인할 수 있습니다.

http://server-ip:5984/_utils/

local.ini 파일에 정의한 대로 사용자 이름비밀번호를 사용하여 로그인하라는 메시지가 아래 웹페이지에 표시되어야 합니다. >입력…

아래와 같이 대시보드가 표시됩니다.

지금까지 데이터베이스를 생성하지 않았기 때문에 아무것도 표시되지 않습니다. 다음 섹션에서는 몇 가지 데이터베이스를 생성하겠습니다.

6단계. CouchDB에서 데이터베이스 생성

터미널의 CouchDB에 데이터베이스를 생성하려면 표시된 구문에 따라 컬 명령을 사용하세요.

curl -u ADMINUSER:PASSWORD -X PUT http://127.0.0.1:5984

tecmint_db, users_dbproduction_db라는 3개의 데이터베이스를 생성하겠습니다.

curl -u admin:P@ssword123 -X PUT http://127.0.0.1:5984/production_db
curl -u admin:P@ssword123 -X PUT  http://127.0.0.1:5984/tecmint_db
curl -u admin:P@ssword123 -X PUT http://127.0.0.1:5984/users_db

각 명령에 대해 아래 출력이 표시되어야 합니다.

{“Ok”: true}

명령에서 GET 매개변수를 사용하여 생성된 데이터베이스를 확인합니다.

curl -u admin:P@ssword123 -X GET http://127.0.0.1:5984/production_db
curl -u admin:P@ssword123 -X GET  http://127.0.0.1:5984/tecmint_db
curl -u admin:P@ssword123 -X GET http://127.0.0.1:5984/users_db
curl -u admin:P@ssword123 -X GET http://127.0.0.1:5984/_all_dbs 

브라우저에서 데이터베이스를 보려면 브라우저를 새로 고치거나 다시 로드하면 됩니다.

데이터베이스를 삭제하려면 표시된 대로 delete 매개변수를 사용하세요. 예를 들어, 이 명령은 users_db 데이터베이스를 삭제합니다.

curl -u admin:P@ssword123 -X DELETE http://127.0.0.1:5984/users_db

다시 데이터베이스를 확인하려면 다음을 실행하세요.

curl -u admin:P@ssword123 -X GET http://127.0.0.1:5984/_all_dbs 

보시다시피 users_db 데이터베이스를 삭제했기 때문에 두 개의 데이터베이스만 존재합니다.

이것으로 이 튜토리얼을 마치겠습니다. CentOS 8 시스템에서 CouchDB를 편안하게 설치하고 구성할 수 있기를 바랍니다.