사전 준비
본격적인 설치에 앞서 다음 사항을 준비합니다.
배포 구성도
배포 구성을 참고해 로그프레소 소나로 구성할 클러스터의 네트워크 구성도를 작성하고 운영 환경에 적합한지 검토하세요.
호스트 이름
로그프레소 소나를 설치할 모든 서버에 대해 고유한 호스트 이름을 미리 결정하세요.
클러스터를 구성할 노드 페어가 여러 개인 경우, c1a/c1b, d1a/d1b, d2a/d2b, f1a/f1b 등으로 노드 페어 식별자와 노드 식별자를 조합해 호스트 이름을 부여하는 것이 좋습니다. 예를 들어, 분석 노드 페어 1조(c1), 수집 노드 페어 2조(d1, d2), 전달 노드 페어 1조(f1)로 구성된 클러스터라면 다음과 같이 호스트 이름을 사용할 수 있습니다.
| 노드 페어 | 호스트 이름 | 설명 |
|---|---|---|
| c1 | c1a | 분석 노드 페어 c1의 노드 A |
| c1 | c1b | 분석 노드 페어 c1의 노드 B |
| d1 | d1a | 수집 노드 페어 d1의 노드 A |
| d1 | d1b | 수집 노드 페어 d1의 노드 B |
| d2 | d2a | 수집 노드 페어 d2의 노드 A |
| d2 | d2b | 수집 노드 페어 d2의 노드 B |
| f1 | f1a | 전달 노드 페어 f1의 노드 A |
| f1 | f1b | 전달 노드 페어 f1의 노드 B |
IP 주소 할당
각 노드와 노드 페어에 사용할 IP 주소와 서브넷을 미리 할당하세요.
L4 스위치/로드 밸런서 설정
고가용성 구성 시 분석 노드 페어 또는 전달 노드 페어의 상단에 배치할 L4 스위치(또는 라우터)/로드 밸런서에서 목적지 포트가 514/udp, 123/udp, 8514/udp인 통신에 대해 출발지 IP 주소 해시 방식으로 부하를 분산할 수 있도록 설정하세요.
방화벽 정책 설정
인바운드
각 노드로 들어오는 통신을 허용하도록 방화벽 정책을 설정하세요.
분석 노드
분석 노드의 수신 포트는 다음과 같습니다.
| 출발지 | 통신 포트 | 용도 |
|---|---|---|
| 관리자 단말기 | 22/tcp | SSH 접속 |
| 운영자 단말기 | 443/tcp | 웹 콘솔 접속(목적지: 분석 노드 대표 IP 주소) |
| 전달/수집 노드 | 443/tcp | 소나 페더레이션(목적지: 분석 노드 대표 IP 주소) |
| 운영자 단말기 | 8443/tcp | ENT 웹 콘솔 접속 |
| 임직원 단말기 | 18443/tcp | 소명 작성 및 검토(목적지: 분석 노드 대표 IP 주소) |
| 127.0.0.1 | 3306/tcp | MariaDB 접속(Unix 소켓으로 대체 가능) |
| 피어 노드 | 4444/tcp, 4567-4568/tcp | MariaDB Galera 접속 |
| 피어 노드 | 443/tcp | 분석 노드 A, B 간 상호 상태 확인 |
| 전달/수집 노드 | 7140/tcp | RPC 및 수집된 로그 전송 |
| 모든 노드, 센트리 | 44300/tcp | 인증서 갱신, 센트리 설치(목적지: 분석 노드 대표 IP 주소) |
- MariaDB를 Unix 소켓을 이용해 접속하도록 설정하면 방화벽에서 3306/tcp 포트를 개방하지 않아도 됩니다. MariaDB를 TCP 포트를 이용해 접속하도록 설정하면 방화벽에서 3306/tcp 포트를 개방해야 합니다.
- 피어 노드는 분석 노드 페어를 함께 구성하는 상대 노드를 의미합니다. 노드 A의 피어는 노드 B, 노드 B의 피어는 노드 A입니다.
- "전달/수집 노드"는 로그프레소 클러스터의 구성에 따라 전달 노드 또는 수집 노드를 의미합니다.
수집 노드
수집 노드의 수신 포트는 다음과 같습니다.
| 출발지 | 통신 포트 | 용도 |
|---|---|---|
| 관리자 단말기 | 22/tcp | SSH 접속 |
| 운영자 단말기 | 8443/tcp | 웹 관리콘솔 및 API 점검 |
| 분석 노드 | 8443/tcp | 소나 페더레이션 |
| 피어 노드 | 8443/tcp | 수집 노드 A, B 간 상호 상태 확인 |
| 전달 노드 | 7140/tcp | RPC 및 수집된 로그 전송 |
| 센트리 | 7140/tcp | (전달 노드가 없을 때) RPC 및 수집된 로그 전송 |
| 로그 수집 대상 | 514/udp | (전달 노드가 없을 때) Syslog 수신 |
| 로그 수집 대상 | 8514/udp | (전달 노드가 없을 때) Syslog over DTLS 수신(포트는 가변적) |
| 로그 수집 대상 | 162/udp | (전달 노드가 없을 때) SNMP TRAP |
- 피어 노드(peer node)는 수집 노드 페어를 함께 구성하는 상대방을 의미합니다. 노드 A의 입장에서 노드 B가 피어 노드이고, 노드 B의 입장에서 노드 A가 피어 노드입니다.
전달 노드
전달 노드의 수신 포트는 다음과 같습니다.
| 출발지 | 통신 포트 | 용도 |
|---|---|---|
| 관리자 단말기 | 22/tcp | SSH 접속 |
| 운영자 단말기 | 8443/tcp | 웹 관리콘솔 및 API 점검 |
| 분석 노드 | 8443/tcp | 소나 페더레이션 |
| 피어 노드 | 8443/tcp | 전달 노드 A, B 간 상호 상태 확인 |
| 센트리 | 7140/tcp | RPC 및 수집된 로그 전송 |
| 로그 수집 대상 | 514/udp | Syslog 수신 |
| 로그 수집 대상 | 8514/udp | Syslog over DTLS 수신(포트는 가변적) |
| 로그 수집 대상 | 162/udp | SNMP TRAP |
- 피어 노드(peer node)는 전달 노드 페어를 함께 구성하는 상대방을 의미합니다. 노드 A의 입장에서 노드 B가 피어 노드이고, 노드 B의 입장에서 노드 A가 피어 노드입니다.
아웃바운드
각 노드에서 나가는 통신을 허용하도록 방화벽 정책을 설정하세요.
| 출발지 | 목적지 | 통신 포트 | 용도 |
|---|---|---|---|
| 모든 노드 | NTP 서버 | 123/udp | NTP 시간 동기화 |
| 분석 노드 | cti.logpresso.com | 443/tcp | 로그프레소 CTI 서비스 |
| 전달 노드 | 로그 수집 대상 호스트 | 22/tcp | SFTP 로그 수집 |
| 전달 노드 | 로그 수집 대상 호스트 | 161/udp | SNMP |
| 전달 노드 | 로그 수집 대상 MySQL | 3306/tcp | JDBC 로그 수집 |
| 전달 노드 | 로그 수집 대상 PostgreSQL | 5432/tcp | JDBC 로그 수집 |
| 전달 노드 | 로그 수집 대상 Oracle | 1521/tcp | JDBC 로그 수집 |
- 전달 노드에 구성할 수집기의 로그 수집 방식에 따라 추가적인 아웃바운드 통신이 필요할 수 있습니다.
서버 반입
설치 요구사항을 참고하여 준비한 베어메탈 또는 가상머신을 예정된 위치에 반입하여 설치하세요.
- 반입할 환경이 폐쇄망인 경우, 미리 운영체제 및 데이터베이스 RPM 패키지를 다운로드해 폐쇄망에 반입하세요.
- 비상 대응 시 즉시 전원 이중화 구성을 위해 비상 전원 공급 장치(UPS)를 설치하는 것이 좋습니다.
JDK 다운로드
Adoptium에서 Temurin JDK 21을 다운로드해 서버에 반입하세요. 운영체제가 기본 제공하는 OpenJDK 21(LTS)도 사용할 수 있습니다.
로그프레소 소나 패키지 다운로드
로그프레소 스토어에서 로그프레소 소나 최신 버전의 패키지를 다운로드하세요. 모든 노드는 동일한 버전을 사용해야 합니다.