몽고DB mongod.cfg 설정 옵션들 의미
- Database
- 2023. 3. 21.
MongoDB를 설치하면 리눅스의 경우 mongod.conf가, 윈도우는 mongod.cfg 파일이 생성됩니다. 해당 파일은 몽고DB 서버의 옵션과 설정하는 파일입니다.
mongod.cfg
몽고DB의 데몬 프로세스를 mongod라고 부릅니다. 그러니 mongod.cfg 또는 mongod.conf는 몽고DB 프로세스의 configuration(구성)을 의미합니다. 이 파일은 YAML 형식입니다.
mongod.cfg 옵션들
1. systemlog
시스템 로그를 쌓는 위치와 로그 레벨을 결정합니다.
systemLog:
destination: file
path: /var/log/mongodb/mongod.log
logAppend: true
verbosity: 1
2. processManagement
몽고db 서버에 대한 fork 활성화 여부, PID 파일 경로, 시간정보 등 프로세스 구성을 정합니다.
processManagement:
fork: true
pidFilePath: /var/run/mongod.pid
timeZoneInfo: /usr/share/zoneinfo
3. cloud
클라우드 설정을 구성합니다. 클라우드 공급자 설정, 모니터링을 활성화 할 수 있습니다.
cloud:
provider: AWS
monitoring:
state: on
4. net
몽고db 서버에 대한 네트워크 설정을 정합니다.
net:
bindIp: 127.0.0.1,192.168.0.1
port: 27017
ssl:
mode: preferSSL
PEMKeyFile: /etc/ssl/mongodb.pem
5. security
몽고db에 대한 보안 설정을 구성합니다. 인증을 활성화할 수 있습니다.
security:
authorization: enabled
clusterAuthMode: keyFile
keyFile: /etc/mongodb-keyfile
6. setParameter
몽고db 서버에 대한 런타임 매개변수를 설정합니다.
setParameter:
maxConnections: 200
maxBsonSize: 16777216
7. storage
스토리지 설정을 구성합니다. db가 저장되는 경로를 정할 수 있습니다.
storage:
dbPath: /var/lib/mongodb
journal:
enabled: true
directoryPerDB: true
8. operationProfiling
프로파일링 설정을 구성합니다.
operationProfiling:
mode: slowOp
slowOpThresholdMs: 100
9. replication
복제 설정을 구성합니다.
replication:
replSetName: rs0
oplogSizeMB: 1024
members:
- _id: 0
host: mongodb1.example.com:27017
- _id: 1
host: mongodb2.example.com:27017
10. sharding
샤딩 설정을 구성합니다. 샤딩은 여러 서버에 걸쳐 데이터를 수평으로 분할하는 방법을 말합니다. 대규모 데이터를 다루기 위해 사용됩니다.
sharding:
clusterRole: shardsvr
configDB: cfg1.example.com:27019,cfg2.example.com:27019,cfg3.example.com:27019
11. auditLog
감사 로그 설정을 구성합니다.
auditLog:
destination: file
format: JSON
path: /var/log/mongodb-audit.log
filter:
users:
- { user: alice, db: test }
- { user: bob, db: admin }
12. snmp
SNMP(Simple Network Management Protocol) 설정을 구성합니다.
snmp:
subagent: true
master: true
port: 9161
community: public
설정 파일 수정 시 주의사항
1. 구성 파일이 YAML 형식을 따른 다는 걸 염두해야 합니다.
YAML에서는 들여쓰기에 탭 문자를 지원하지 않습니다. 공백(스페이스바)를 이용해야 합니다. 따옴표("") 사용에 유의해야 합니다. 예를 들어, security 섹션에서 아래와 같이 설정하면 몽고db가 시작되지 않는 오류가 발생합니다. 설정을 문자열로 인식하기 때문입니다.
authorization: "enabled"
아래와 같이 설정해야 정상 인식합니다.
authorization: enabled
2. 구성 설정을 바꾼 뒤에는 몽고db를 재시작해야 변경 값이 반영됩니다.
각 옵션에 대한 자세한 사항은 아래의 몽고db 매뉴얼을 참고해보세요.
https://docs.mongodb.com/manual/reference/configuration-options/
'Database' 카테고리의 다른 글
SQL, CASE WHEN THEN 구문 사용법 (0) | 2023.04.04 |
---|---|
MS SQL Server MDF, LDF 저장 위치 / 변경 방법 (0) | 2023.03.27 |
MYSQL DB 서버 이관하는 방법 (리눅스) (0) | 2023.03.12 |
DELETE, TRUNCATE 테이블 데이터 삭제 차이 (0) | 2022.12.31 |
HeidiSQL 세션 연결하는 방법 (0) | 2022.12.19 |