패키지 설치
이제 모든 핵심 참고 문서를 확인했습니다. 답변을 작성하겠습니다.
exemONE 패키지 설치 방법 개요 및 설치 모드 종류
참고 문서:
1. 설치 개요
exemONE은 통합 모니터링 플랫폼으로, 제품 설치 및 패치 시 진행 절차에 대해 가이드를 제공하며, 통합 패키지와 각 모듈, 에이전트에 대한 설치 및 패치를 지원합니다.
exemONE 수집 서버는 총 16개 모듈로 구성되며, 설치 후 모든 모듈이 running 상태여야 정상적으로 동작합니다.

2. 공통 시스템 요구사항
2-1. 서버 사양
| 구분 | CPU | Memory | SSD - Storage(월) |
|---|---|---|---|
| 최소 | 8 core | 16 GB | 0.5 TB |
| 권장 | 16 core | 32 GB | 1 TB |
인스턴스 개수별 사양:
| 인스턴스 | CPU | Memory | Storage(월) |
|---|---|---|---|
| 5개 | 2 core | 4 GB | 125GB |
| 10개 | 4 core | 8 GB | 250GB |
| 20개 | 8 core | 16 GB | 0.5 TB |
| 40개 | 16 core | 32 GB | 1 TB |
- HDD의 경우 성능이 심하게 떨어지기 때문에 SSD 권장
- 디스크 사용량은 모니터링 대상과 수집 양에 따라 다를 수 있으므로, 구축 후 일별 사용량을 체크하여 필요 시 디스크 증설 또는 보관 주기 수정 필요
- 데이터 없이 Docker만 설치 시 10GB로 설치 가능
2-2. 화면 해상도
| 구분 | 해상도 |
|---|---|
| 기본(권장) | 1920 x 1080 |
| 최소 | 1366 x 768 (코드상 1200 x 768) |
최소 사이즈 이하로 작아질 경우 내부 스크롤이 발생합니다.
2-3. 주요 포트 정보
| target | 출발지 | 도착지 | Type | Port | 포트 사용 내용 |
|---|---|---|---|---|---|
| exem-host-agent | unix 장비 | Receiver | TCP | 9010 | 범용 TCP 요청 및 응답 |
| exem-host-agent | linux, windows 장비 | Receiver | gRPC | 9009 | 범용 gRPC 요청 및 응답 |
| exem-k8s-agent | 모니터링 대상 장비 | Receiver | gRPC | 9009 | 범용 gRPC 요청 및 응답 |
| exem-container-agent | 모니터링 대상 장비 | Receiver | gRPC | 9009 | 범용 gRPC 요청 및 응답 |
| exem-db-agent | 수집 서버 | Target DB | TCP | DB Listener Port | DB 지표 수집 |
| exem-java-agent | 모니터링 대상 장비 | Receiver | TCP | 9010 | 범용 TCP 요청 및 응답 |
| Cloud | - | Receiver | TCP | 443 | 클라우드 데이터 수집 |
| 모니터링 사용자 PC | 사용자 PC | Gateway | HTTPS | 8443 | WEB UI 접속 포트 |
| HTTP | 8080 | ||||
| ClickHouse | TCP | 8123 | 수집 데이터 저장 | ||
| PostgreSQL | TCP | 5432 | 메타 데이터 저장 |
3. 설치 모드 종류 (3가지)
exemONE은 운영 환경에 따라 Binary, Docker, Kubernetes 3가지 설치 모드를 제공합니다.
3-1. Binary 모드
| 항목 | 내용 |
|---|---|
| 지원 OS | Rocky 8, Rocky 9만 지원 |
| Docker 필요 여부 | 불필요 |
| 설치 파일 | exemone-pkg-v{설치버전}.tar.gz |
| 설치 명령어 | ./onectl install |
| 관리 도구 | onectl (start/stop/restart/status/version/log) |
설치 절차 요약:
- 패키지 압축 해제:
tar -zxvf exemone-pkg-v3-0-507-0.tar.gz - exemone 폴더 이동:
cd exemone - 설치 진행:
./onectl install→ OS 버전 선택 (rocky8/rocky9) → View 모드 선택 (maxgauge/exemone) - 상태 확인:
./onectl status - 버전 확인:
./onectl version all
특징:
- Docker 없이 바이너리로 직접 실행
- Rocky 8/9만 지원하므로 OS 제약이 있음
onectlCLI 도구로 모든 모듈 관리
상세 가이드: Binary 신규 설치 가이드
3-2. Docker 모드
| 항목 | 내용 |
|---|---|
| 지원 OS | CentOS 7 이상, Rocky 8.x 이상, Ubuntu 20.x 이상, Amazon Linux 2023 이상 |
| Docker 필요 여부 | 필수 (Docker + Docker-compose) |
| 설치 파일 | exemone-installer-v.tar.gz + Docker 이미지 파일 |
| 설치 명령어 | ./install.sh |
| 관리 도구 | Docker / Docker-compose 명령어 |
설치 절차 요약:
- 사전 설정 (root 권한):
- Timezone 설정
- exemone 계정 생성
sudo groupadd -g 1201 exemone
sudo adduser -u 1201 -g 1201 exemone
sudo passwd exemone
usermod -aG root exemone - Docker 설치:
tar -xzvf docker-[version].tgz
sudo cp docker/* /usr/bin
sudo nohup dockerd &
sudo groupadd -g 1001 docker
sudo usermod -aG docker exemone
sudo chown root:docker /var/run/docker.sock - Docker-compose 설치:
sudo cp docker-compose-2.24.6 /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose - 제품 설치 (exemone 계정):
su - exemone
cd /home/exemone/
tar -zxvf exemone-installer-v.tar.gz - Docker 이미지 로드:
ls *.tar.gz | xargs -L 1 docker load -i - 설치 실행:
./install.sh - 설치 확인:
docker ps

특징:
- 가장 넓은 OS 호환성 제공
- 인터넷 접속 불가능한 환경에서도 오프라인 설치 가능
- Docker 컨테이너 기반으로 모듈 격리 및 관리
상세 가이드: Docker 신규 설치 가이드
3-3. Kubernetes 모드
| 항목 | 내용 |
|---|---|
| 지원 환경 | Kubernetes 클러스터 (docker 또는 containerd 런타임) |
| 설치 파일 | exemone-kubernetes-pkg-{version}.tar.gz |
| 설치 명령어 | sh generate.sh → sh apply.sh |
| 관리 도구 | kubectl 명령어 |
제약조건:
- exemone-api와 exemone-receiver Pod는 동일한 Node에서 실행되어야 합니다.
- Worker Node에 라벨 설정 후 Deployment의 nodeSelector로 제어:
kubectl label nodes worker-node1 workload=exemone-k8s
설치 절차 요약:
사전 설정:
- Storage Class 생성
- Namespace 생성:
kubectl create namespace exemone-k8s
패키지 압축 해제:
tar xvzf exemone-kubernetes-pkg-v3.0.1.0.tar.gz

이미지 로드 (모든 Node에):
- Docker 사용 시:
docker load -i <이미지>.tar.gz - containerd 사용 시:
ctr -n k8s.io images import <이미지>.tar.gz
- Docker 사용 시:
generate.sh 실행 (yaml 파일 생성):
sh generate.sh
# SET NAME: 폴더 이름
# NAMESPACE: exemone-k8s
# CLUSTER_DOMAIN: cluster.local
# STORAGE_CLASS_NAME: local-storage-exemone-k8sapply.sh 실행 (설치):
sh apply.sh
# SET NAME 입력배포 확인:
kubectl get pods -n exemone-k8s
kubectl get pvc -n exemone-k8s
# api와 receiver 동일 노드 확인
kubectl get pods -n exemone-k8s -o wide | grep -E 'exemone-api|exemone-receiver'
삭제 방법:
sh delete.sh로 모든 서비스 모듈 및 데이터 삭제- 데이터(PVC) 유지가 필요하면
delete.sh에서kubectl delete -f ./$SET_NAME/pvc.yaml라인을 주석 처리
특징:
- Kubernetes 네이티브 환경에서의 배포
- Storage Class, Namespace 등 K8s 리소스 사전 구성 필요
- PVC를 통한 데이터 영속성 관리
generate.sh+apply.sh스크립트 기반 자동화 설치
상세 가이드: Kubernetes 신규 설치 가이드
4. 설치 모드 비교 요약
| 비교 항목 | Binary | Docker | Kubernetes |
|---|---|---|---|
| 지원 OS | Rocky 8/9만 | CentOS 7+, Ubuntu 20+, Amazon Linux 2023+ 등 | K8s 클러스터 |
| Docker 필요 | X | O (필수) | O (또는 containerd) |
| 설치 방식 | onectl install | ./install.sh | generate.sh + apply.sh |
| 모듈 관리 | onectl CLI | docker / docker-compose | kubectl |
| OS 호환성 | 제한적 | 광범위 | K8s 환경 의존 |
| 사전 요구사항 | 최소 | Docker/Docker-compose 설치 | K8s 클러스터, StorageClass, Namespace |
| 적합한 환경 | Rocky Linux 전용 서버 | 일반 Linux 서버 | 컨테이너 오케스트레이션 환경 |
5. 주의사항
- 설치 파일 준비: 패키지 파일은 제품기술팀에 문의하여 준비하세요.
- SSD 필수: HDD 사용 시 심각한 성능 저하가 발생합니다.
- 인터넷 불가 환경: Docker/Kubernetes 모드 모두 오프라인 설치를 지원하지만, 사전에 이미지 파일을 준비하여 수동 로드해야 합니다.
- Kubernetes 제약: exemone-api와 exemone-receiver Pod는 반드시 동일 Node에 배포되어야 합니다.
- Binary 모드 OS 제한: Binary 모드는 Rocky 8/9만 지원하므로, 다른 OS에서는 Docker 또는 Kubernetes 모드를 사용하세요.
- 모듈 전체 기동: 설치 모드에 관계없이, 수집 서버의 16개 모듈 전체가 정상 기동(running)되어야 서비스가 정상 동작합니다.