어디에 쓰이나요?
- 전문 검색: 문서, 게시글, 상품 등에서 키워드로 검색 (형태소 분석, 유사어 검색 지원)
- 로그 분석: 서버 로그, 애플리케이션 로그를 수집하고 분석 (ELK 스택의 E를 대체)
- 실시간 분석: 대량의 데이터를 실시간으로 집계하고 시각화
LIKE 검색은 데이터가 많아지면 느려집니다. OpenSearch는 데이터를 역인덱스(Inverted Index) 구조로 저장하여, 수백만 건의 문서에서도 빠른 검색이 가능합니다.
OpenSearch Dashboards는 OpenSearch에 저장된 데이터를 시각화하고 관리할 수 있는 웹 UI입니다.
Docker Compose
docker-compose.yml
OpenSearch 2.12 이상에서는
OPENSEARCH_INITIAL_ADMIN_PASSWORD 환경 변수가 필수입니다. 비밀번호는 대문자, 소문자, 숫자, 특수문자를 포함해야 합니다.실행
접속 확인
기본 정보
| 항목 | 값 |
|---|---|
| REST API 포트 | 9200 |
| 성능 분석 포트 | 9600 |
| Dashboards 포트 | 5601 |
| 기본 사용자 | admin |
| 기본 비밀번호 | Admin1234! |
환경 변수
| 변수 | 설명 |
|---|---|
discovery.type | 클러스터 모드 (single-node 또는 multi-node) |
OPENSEARCH_INITIAL_ADMIN_PASSWORD | admin 계정 비밀번호 (2.12+) |
OPENSEARCH_JAVA_OPTS | JVM 힙 메모리 설정 |
plugins.security.disabled | true로 설정하면 보안 플러그인 비활성화 |
보안 비활성화 (개발 환경)
개발 환경에서는 보안 플러그인을 비활성화하여 HTTP로 접속할 수 있습니다.http://localhost:9200으로 인증 없이 접속할 수 있습니다.
사전 요구사항
호스트 시스템에서vm.max_map_count 값을 설정해야 합니다.
/etc/sysctl.conf에 추가합니다.
라이선스
| 구분 | 내용 |
|---|---|
| 라이선스 | Apache License 2.0 |
| 개인 사용 | 자유롭게 사용 가능 |
| 상업적 사용 | 자유롭게 사용 가능, 수정/재배포/상업적 서비스 제공 모두 가능 |
참고
설치 점검 목록
docker compose up -d후docker compose ps로 컨테이너 상태를 확인했습니다.- 기본 포트/계정/비밀번호를 문서대로 점검했습니다.
- 운영용으로 사용할 때 기본 비밀번호/시크릿 값을 변경했습니다.
- 장애 분석을 위해
docker compose logs -f확인 방법을 숙지했습니다.
문제 해결 가이드
- 컨테이너가 실행되지 않으면
docker compose logs -f로 오류 원인을 먼저 확인합니다. - 포트 충돌이 나면 기존 프로세스를 종료하거나 포트 매핑 값을 변경합니다.
- 이미지 pull 실패 시 네트워크 연결 및 레지스트리 접근 권한을 확인합니다.
- 설정 변경 후 문제가 지속되면
docker compose down후 다시up -d로 재기동합니다.
관련 문서
Setup 홈
운영체제별 설치 흐름을 다시 확인합니다.
다음: Qdrant
다음 설치 단계를 이어서 진행합니다.

