우분투 기준으로 설명
1. AWS EC2 인스턴스 생성
2. Data 디렉토리로 사용할 100 GB EBS 생성
3. EBS 인스턴스에 마운트
ubuntu@ip-10-0-160-31:~$ sudo file -s /dev/xvdc
ubuntu@ip-10-0-160-31:~$ sudo mkfs -t xfs /dev/xvdc
ubuntu@ip-10-0-160-31:~$ sudo mkdir /journal
ubuntu@ip-10-0-160-31:~$ sudo mount /dev/xvdc /journal
ubuntu@ip-10-0-160-31:~$ sudo file -s /dev/xvdc
ubuntu@ip-10-0-160-31:~$ sudo lsblk -f
4. 인스턴스에 mongodb 다운로드
Install MongoDB Community Edition on Ubuntu — MongoDB Manual
Docs Home → MongoDB Manual MongoDB AtlasMongoDB Atlas is a hosted MongoDB service option in the cloud which requires no installation overhead and offers a free tier to get started.Use this tutorial to install MongoDB 7.0 Community Edition on LTS (long-te
www.mongodb.com
5. ulimit 풀어주기 → ubuntu/etc/security/limits.conf에 다음을 추가
* soft nofile 64000
* hard nofile 64000
* soft fsize unlimited
* hard fsize unlimited
* soft cpu unlimited
* hard cpu unlimited
* soft as unlimited
* hard as unlimited
* soft memlock unlimited
* hard memlock unlimited
* soft nproc 64000
* hard nproc 64000
재접속 하면 적용됨
적용된 내용은 ulimit -a 명령어로 확인 가능
https://www.mongodb.com/docs/manual/reference/ulimit/
UNIX ulimit Settings — MongoDB Manual
Docs Home → MongoDB Manual Most UNIX-like operating systems, including Linux and macOS, provide ways to limit and control the usage of system resources such as threads, files, and network connections on a per-process and per-user basis. These "ulimits" p
www.mongodb.com
6. dbpath를 mount한 EBS 디렉토리로 변경
mongod.conf에서 dbpath를 변경해줍니다.
dbpath를 변경하고, dbpath에 대해서 mongod가 접근하여 데이터를 쓸 수 있도록 권한을 줘야함.
log 파일도 마찬가지.
권한이 없으면 에러 발생 ㅇㅇ
7. mongod 시작
sudo systemctl start mongod.service
8. mongod 접속 후 유저 생성
mongosh
use admin
db.createUser({user: "boong_u", pwd: "1234A", roles:[{role:"root", db:"admin"}], passwordDigestor:"server"});
9. mongod.conf 에 authorization: enabled로 설정 변경
security:
authorization: 'enabled'
10. mongosh 접속
mongosh -u boong_u -p 1234A
11. application 에서 사용할 데이터베이스 생성 및 유저 생성
use pickshot
db.createUser({user: "developer", pwd:"developer", roles:["readWrite"]});
12. 나와서 접속해보기 및 mongodb compass 터널링 설정
끝
'Database > MongoDB' 카테고리의 다른 글
MongoDB Journaling (1) | 2024.10.09 |
---|---|
MongoDB Replication (1) | 2024.09.15 |
MongoDB의 Failover (0) | 2023.11.19 |
MongoDB 로그 관리 : logRotate와 로그파일 권한 (1) | 2023.11.16 |
MongoDB는 1 Petabyte를 저장할 수 있을까? (0) | 2023.08.26 |