기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon DocumentDB에 연결하고 이를 통해 시작하는 방법에는 여러 가지가 있습니다. 이 안내서는 사용자가 당사의 강력한 도큐먼트 데이터베이스를 사용하는 가장 빠르고 간단하고 쉬운 방법을 발견했기 때문에 작성되었습니다. 이 가이드는 Amazon Elastic Compute Cloud(Amazon EC2)를 사용하여 AWS Management Console에서 Amazon DocumentDB 클러스터를 직접 연결하고 쿼리합니다. AWS 프리 티어 자격이 있는 신규 고객은 Amazon DocumentDB 및 Amazon EC2를 무료로 사용할 수 있습니다. Amazon EC2 환경 또는 Amazon DocumentDB 클러스터가 프리 티어 이외의 리소스를 사용하는 경우 해당 리소스에 대한 일반 AWS 요금이 부과됩니다. 이 안내서를 통해 15분 이내에 Amazon DocumentDB를 시작할 수 있습니다.
참고
이 안내서의 지침은 특별히 Amazon DocumentDB 인스턴스 기반 클러스터를 만들고 연결하기 위한 것입니다. Amazon DocumentDB 탄력성 클러스터를 생성하고 연결하려면 Amazon DocumentDB 엘라스틱 클러스터 시작하기을 참조하십시오.
주제
Amazon EC2 인스턴스에 대한 SSH 연결을 생성하여 로컬 시스템에서 Amazon DocumentDB에 연결하려면 섹션을 참조하세요Amazon EC2를 사용하여 연결.
사전 조건
첫 번째 Amazon DocumentDB 클러스터를 작성하기 전에 다음 작업을 수행해야 합니다:
- Amazon Web Services(AWS) 계정 만들기
-
Amazon DocumentDB 사용을 시작하기 전에 Amazon Web Services(AWS) 계정이 있어야 합니다. AWS 계정은 무료입니다. 사용하는 서비스 및 리소스에 대해서만 비용을 지불하는 것입니다.
이 없는 경우 다음 단계를 AWS 계정완료하여 생성합니다.
에 가입하려면 AWS 계정
https://portal.aws.amazon.com/billing/signup
을 엽니다. 온라인 지시 사항을 따릅니다.
등록 절차 중 전화를 받고 전화 키패드로 확인 코드를 입력하는 과정이 있습니다.
에 가입하면 AWS 계정AWS 계정 루트 사용자이 생성됩니다. 루트 사용자에게는 계정의 모든 AWS 서비스 및 리소스에 액세스할 권한이 있습니다. 보안 모범 사례는 사용자에게 관리 액세스 권한을 할당하고, 루트 사용자만 사용하여 루트 사용자 액세스 권한이 필요한 작업을 수행하는 것입니다.
- 필요한 AWS Identity and Access Management (IAM) 권한을 설정합니다.
-
클러스터, 인스턴스 및 클러스터 파라미터 그룹과 같은 Amazon DocumentDB 리소스를 관리하기 위한 액세스에는가 요청을 인증하는 데 사용할 AWS 수 있는 자격 증명이 필요합니다. 자세한 내용은 Amazon DocumentDB의 ID 및 액세스 관리 단원을 참조하십시오.
-
의 검색 창에서 IAM을 AWS Management Console입력하고 나타나는 드롭다운 메뉴에서 IAM을 선택합니다.
-
IAM 콘솔에 들어가면 탐색 창에서 사용자를 선택합니다.
-
사용자 이름을 선택합니다.
-
권한 추가 버튼을 클릭합니다.
-
기존 정책 직접 연결을 선택합니다.
-
검색 창에
AmazonDocDBFullAccess
을 입력하고 검색 결과에 표시되면 선택합니다. -
하단에서 다음: 검토라고 표시된 파란색 버튼을 클릭합니다.
-
하단에서 권한 추가라고 표시된 파란색 버튼을 클릭합니다.
-
- Amazon Virtual Private Cloud (Amazon VPC) 생성
-
AWS 계정에는 각 리전에 기본 VPC가 포함되어 있습니다. 이 단계는 기본 Amazon VPC 사용을 선택하는 경우에만 필요합니다. 이 경우 Amazon VPC 사용 설명서의 Amazon VPC 생성 주제의 단계를 완료합니다.
- Amazon EC2 인스턴스 시작하기
-
Amazon Elastic Compute Cloud 사용 설명서의 Amazon EC2 시작하기 주제의 1단계와 2단계를 완료합니다.
1단계: Amazon DocumentDB 클러스터 생성
이 단계에서 Amazon DocumentDB 클러스터를 생성합니다.
-
Amazon DocumentDB 관리 콘솔의 클러스터에서 생성을 선택합니다.
-
Amazon DocumentDB 클러스터 생성 페이지의 클러스터 유형 섹션에서 인스턴스 기반 클러스터(기본 옵션)를 선택합니다.
-
구성 섹션에서:
클러스터 식별자 에
mydocdbcluster
와 같은 고유한 이름을 입력합니다. 콘솔은 모든 클러스터 이름을 입력 방식에 관계없이 소문자로 변경합니다.엔진 버전의 경우 5.0.0을 선택합니다.
인스턴스 클래스에서 db.t3.medium을 선택합니다. 프리 AWS 티어를 사용할 수 있습니다.
인스턴스 수에 1 인스턴스를 선택합니다. 인스턴스 하나를 선택하면 비용을 최소화하는 데 도움이 됩니다. 프로덕션 시스템인 경우 고가용성을 위해 세 개의 인스턴스를 프로비저닝하는 것이 좋습니다.
-
클러스터 스토리지 구성 섹션에서 Amazon DocumentDB 표준(기본 옵션입니다)을 선택합니다.
-
연결 섹션에서 다음을 수행합니다.
Connect to an EC2 compute resource(EC2 컴퓨팅 리소스에 연결)를 선택합니다.
EC2 인스턴스의 경우 사전 조건에서 생성한 EC2 인스턴스를 선택합니다.
-
인증 섹션에서 기본 사용자의 사용자 이름을 입력한 다음 AWS 관리형 암호 또는 자체 관리형 암호를 선택합니다.
AWS Secrets Manager 옵션을 선택하는 경우 직접 생성하거나 Secrets Manager가 생성하는 키를 사용하여 KMS 키를 구성합니다.
기본 사용자의 암호를 자체 관리하도록 선택한 경우 암호를 입력한 다음 확인합니다.
-
다른 모든 옵션을 기본값으로 두고 클러스터 생성을 선택합니다.
참고
EC2 인스턴스와 Amazon DocumentDB 데이터베이스 간의 연결을 설정하는 경우 Amazon DocumentDB는 EC2 인스턴스 및 Amazon DocumentDB 데이터베이스에 대한 VPC 보안 그룹을 자동으로 구성합니다. 자세한 내용은 EC2 인스턴스와의 자동 연결 개요 단원을 참조하십시오.
Amazon DocumentDB는 이제 클러스터를 프로비저닝하고 있으며, 완료하는 데 몇 분 정도 걸릴 수 있습니다. 클러스터와 인스턴스 상태가 모두 사용 가능으로 표시되면 클러스터에 연결할 수 있습니다.
참고
2단계: mongo 쉘 설치
사전 조건에서 생성한 Amazon EC2 인스턴스에 mongo 쉘을 설치합니다. 몽고 쉘은 Amazon DocumentDB 클러스터를 연결하고 쿼리하는 데 사용하는 명령줄 유틸리티입니다.
Amazon EC2 인스턴스에 연결하고 명령 프롬프트에서 다음 명령을 사용하여 리포지토리 파일을 생성합니다.
echo -e "[mongodb-org-5.0] \nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/amazon/2023/mongodb-org/5.0/x86_64/\ngpgcheck=1 \nenabled=1 \ngpgkey=https://pgp.mongodb.com/server-5.0.asc" | sudo tee /etc/yum.repos.d/mongodb-org-5.0.repo
완료되면 다음 명령을 사용하여 mongo 쉘을 설치합니다:
sudo yum install -y mongodb-org-shell
3단계: Amazon DocumentDB 클러스터에 연결
이제 2단계에서 설치한 mongo 쉘을 사용하여 Amazon DocumentDB 클러스터에 연결합니다.
-
Amazon DocumentDB 관리 콘솔의 클러스터에서 클러스터를 찾습니다. 클러스터 식별자를 클릭하여 생성한 클러스터를 선택합니다.
-
전송 중 암호화는 기본적으로 Amazon DocumentDB에서 활성화됩니다. 선택적으로 TLS를 비활성화할 수 있습니다. 클러스터에 인증하는 데 필요한 현재 인증서를 다운로드하려면 연결 및 보안 탭의 연결 섹션의 클러스터에 인증하는 데 필요한 Amazon DocumentDB CA(Certificate Authority) 인증서 다운로드에서 제공된 명령을 복사합니다. Amazon EC2 인스턴스로 돌아가 명령을 붙여 넣습니다.
-
Amazon DocumentDB 콘솔의 연결 및 보안 탭에 있는 연결 섹션의 mongo 셸을 사용하여이 클러스터에 연결에서 제공된 연결 문자열을 복사합니다. 연결할 때 몽고 쉘에서 암호를 입력하라는 메시지가
<insertYourPassword>
표시되도록 복사를 생략하십시오.Amazon EC2 인스턴스로 돌아가 연결 문자열을 붙여 넣습니다.
암호를 입력할 때 프롬프트에 rs0:PRIMARY>
가 표시되면 Amazon DocumentDB 클러스터에 성공적으로 연결된 것입니다.
참고
흐름 문제 해결에 대한 자세한 내용은 Amazon DocumentDB 문제 해결을 참조하십시오.
4단계: 데이터 삽입 및 쿼리
이제 클러스터에 연결되었으므로 몇 가지 쿼리를 실행하여 문서 데이터베이스 사용에 익숙해질 수 있습니다.
-
단일 문서를 삽입하려면 다음을 입력합니다:
db.collection.insert({"hello":"DocumentDB"})
-
출력은 다음과 같습니다:
WriteResult({ "nInserted" : 1 })
-
findOne()
명령으로 작성한 문서를 읽을 수 있습니다 (단일 문서만 반환하기 때문). 다음 내용을 입력합니다.db.collection.findOne()
-
다음과 같은 출력내용을 얻게 됩니다.
{ "_id" : ObjectId("5e401fe56056fda7321fbd67"), "hello" : "DocumentDB" }
-
쿼리를 몇 개 더 수행하려면 게임 프로필 사용 사례를 고려해 보세요. 먼저
profiles
이라는 제목의 컬렉션에 몇 개의 항목을 삽입합니다. 다음 내용을 입력합니다.db.profiles.insertMany([ { "_id" : 1, "name" : "Matt", "status": "active", "level": 12, "score":202}, { "_id" : 2, "name" : "Frank", "status": "inactive", "level": 2, "score":9}, { "_id" : 3, "name" : "Karen", "status": "active", "level": 7, "score":87}, { "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27} ])
-
다음과 같은 출력내용을 얻게 됩니다.
{ "acknowledged" : true, "insertedIds" : [ 1, 2, 3, 4 ] }
-
find()
명령을 사용하여 프로필 컬렉션의 모든 문서를 반환합니다. 다음 내용을 입력합니다.db.profiles.find()
-
5단계에서 입력한 데이터와 일치하는 출력이 출력됩니다.
-
필터를 사용하여 단일 문서에 대한 쿼리를 사용하세요. 다음을 입력합니다:
db.profiles.find({name: "Katie"})
-
다음 출력이 나타나야 합니다:
{ "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27}
-
이제 프로필을 찾아
findAndModify
명령을 사용하여 해당 프로필을 수정해 보겠습니다. 다음 코드를 사용하여 사용자 Matt에게 10점을 추가로 주겠습니다:db.profiles.findAndModify({ query: { name: "Matt", status: "active"}, update: { $inc: { score: 10 } } })
-
다음과 같은 결과가 출력됩니다 (참고로 그의 점수는 아직 오르지 않았습니다):
{ "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 202 }
-
다음 쿼리를 통해 그의 점수가 변경되었는지 확인할 수 있습니다:
db.profiles.find({name: "Matt"})
-
출력은 다음과 같습니다.
{ "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 212 }
5단계: 살펴보기
축하합니다! Amazon DocumentDB에 대한 시작 안내서를 성공적으로 완료했습니다.
다음 단계? 몇 가지 인기 있는 기능을 통해 이 데이터베이스를 최대한 활용하는 방법을 알아보십시오:
참고
이 시작 연습을 통해 생성한 클러스터는 해당 내용을 삭제하지 않는 한 계속 비용이 누적됩니다. 자세한 지침은 Amazon DocumentDB 클러스터 삭제를 참조하십시오.