Logpresso 메이저 패치 가이드 (SNR4 → SNR5)

개요

  • SNR4에서 SNR5로 메이저 업그레이드(v4.0.2507.2 → v5.0.2605.0)하는 절차 가이드입니다.
  • 수집·전달·분석 노드로 구성된 클러스터 환경을 가정하고 문서 작성하였으며, 각 서버를 정해진 순서대로 서비스 중지 → 백업 → 패키지 교체 → 설정 확인 → 서비스 시작 순으로 패치합니다.
  • 분석서버는 패키지 교체 후 sonar.migrate 마이그레이션이 추가로 필요하며, 문제 발생 시 백업본 기반 롤백 절차를 제공합니다.
  • 본 가이드는 SNR4 운영 시점부터 현재까지 동일하게 JDK 21을 사용해 온 환경을 전제로 작성하였으며, 신규 패키지 파일 반입만 ****진행하면 됩니다.

주의 사항

  • 마이그레이션(sonar.migrate)은 분석서버 Standby 노드에서만 수행합니다.
  • 패키지 압축 해제 후 etc/logpresso.conf의 메모리 설정이 신규 버전 기준에 맞는지 반드시 확인 후 기동하세
  • 로그 경로(/opt/logpresso/log)의 기동 로그를 확인하여 정상 부팅 여부를 판단합니다.
  • 패치 진행 시간 동안 로그 유실 및 보안 정책 탐지 제한 가능성이 있으므로, 사전 고지가 필요합니다.
  • 버전 및 고객사 환경에 따라 패치가 원활하게 진행되지 않을 수 있으므로, 고객사 패치 이전에 반드시 내부 테스트를 진행해 주시기를 요청드립니다.
  • 특히 사이트 전용 패키지의 경우 DB 스키마 버전 차이로 인해 메이저 패치가 원활하지 않을 수 있으니, 이 점 유의하여 검토 부탁드립니다.

적용 대상

  • 제품: Logpresso Sonar (SNR)
  • 버전:
    • 기존 버전: 4.0.2507.2
    • 신규(패치) 버전: 5.0.2605.0
    • 패키지 파일명: logpresso-SNR-5.0.2605.0-u3129.zip
  • 대상 환경:
    • OS/배포판: Rocky Linux 9.6 (Blue Onyx)
    • JDK: JDK 21
    • 반입 대상: 신규 패키지 파일 1종 (logpresso-snr-5.0.2605.0-u3129.zip)
    • 구성(클러스터, 각 서버군 이중화):
      • 분석서버 2식 (Standby / Active)
      • 전달서버 2식 (Standby / Active)
      • 수집서버 2식 (Standby / Active)
  • 업무 중단 여부: Y (중단 있음)
  • 작업 영향 범위:
    • 패치 작업 시간 동안 일부 로그 유실 가능성 존재
    • 패치 작업 시간 동안 보안 정책 탐지 기능이 일시적으로 제한될 가능성 존재

테스트 환경 경로

  • 본 가이드의 명령어는 아래 경로를 기준으로 검증되었습니다. (사이트별 실제 경로로 교체 필요)

    구분 경로
    패키지(package) /opt/logpresso
    로그(log) /opt/logpresso/log
    데이터(data) /data/logpresso-data
    백업(backup) /data/backup/yyyyMMdd

사전 준비 / 체크리스트

  • 신규 패키지(logpresso-snr-5.0.2605.0-u3129.zip) 반입 및 무결성 확인 (반입 대상은 신규 패키지 파일뿐)
  • JDK 21 운영 여부 확인 (SNR4 때부터 JDK 21 사용 · 기존 JDK 그대로 유지)

작업 순서 (전체 흐름)

  • 서버 그룹은 아래 순서로 패치를 진행합니다.

    전달서버(Standby → Active) → 수집서버(Standby → Active) → 분석서버(Standby → Active)
    
    
  • 모든 서버군은 이중화(2식) 구성이며, 각 그룹에서 반드시 Standby 노드를 먼저 작업한 후 Active 노드를 작업합니다.

  • 전달서버·수집서버는 동일한 표준 패치 절차를 사용합니다.

  • 분석서버는 표준 절차 + DB 백업(mysqldump) + 마이그레이션(sonar.migrate) 이 추가됩니다.


상세 패치 절차

1) 수집서버 패치 (2식)

전달서버 패치 완료 후 진행합니다. 이중화 구성이므로 Standby 노드 → Active 노드 순으로, 전달서버와 동일한 절차로 패치합니다.

  1. 서비스 중지

    cd /opt/logpresso
    ./logpresso stop
    
    
  2. 백업 진행

    mkdir -p /data/backup/yyyyMMdd
    cp -rp /data/logpresso-data/araqne-confdb /data/backup/yyyyMMdd/araqne-confdb
    mv /opt/logpresso/cache        /data/backup/yyyyMMdd
    mv /opt/logpresso/bundles.sig  /data/backup/yyyyMMdd
    mv /opt/logpresso/version.json /data/backup/yyyyMMdd
    cp -rp /opt/logpresso/plugin   /data/backup/yyyyMMdd
    cp -rp /opt/logpresso/etc      /data/backup/yyyyMMdd
    
    
  3. 신규 패키지 압축 해제

    unzip /opt/logpresso/logpresso-snr-5.0.2605.0-u3129.zip
    
    
  4. 스크립트 수정 및 설정 확인 (메모리 설정 등)

    vi etc/logpresso.conf
    
    
  5. 서비스 실행

    cd /opt/logpresso
    ./logpresso start
    
    

2) 전달서버 패치 (2식)

이중화 구성입니다. Standby 노드를 먼저 패치한 후 Active 노드를 동일 절차로 패치합니다.

  1. 서비스 중지

    cd /opt/logpresso
    ./logpresso stop
    
    
  2. 백업 진행

    mkdir -p /data/backup/yyyyMMdd
    cp -rp /data/logpresso-data/araqne-confdb /data/backup/yyyyMMdd/araqne-confdb
    mv /opt/logpresso/cache        /data/backup/yyyyMMdd
    mv /opt/logpresso/bundles.sig  /data/backup/yyyyMMdd
    mv /opt/logpresso/version.json /data/backup/yyyyMMdd
    cp -rp /opt/logpresso/plugin   /data/backup/yyyyMMdd
    cp -rp /opt/logpresso/etc      /data/backup/yyyyMMdd
    
    
  3. 신규 패키지 압축 해제

    unzip /opt/logpresso/logpresso-snr-5.0.2605.0-u3129.zip
    
    
  4. 스크립트 수정 및 설정 확인 (메모리 설정 등)

    vi etc/logpresso.conf
    
    
  5. 서비스 실행

    cd /opt/logpresso
    ./logpresso start
    
    

3) 분석서버 패치 (2식)

분석 Standby → 분석 Active 순으로 진행합니다. 절차에 DB 백업마이그레이션이 추가됩니다.

  1. 서비스 중지

    cd /opt/logpresso
    ./logpresso stop
    
    
  2. 백업 진행 (confdb / 캐시 / 설정 + MySQL DB)

    mkdir -p /data/backup/yyyyMMdd
    cp -rp /data/logpresso-data/araqne-confdb /data/backup/yyyyMMdd/araqne-confdb
    mv /opt/logpresso/cache        /data/backup/yyyyMMdd
    mv /opt/logpresso/bundles.sig  /data/backup/yyyyMMdd
    mv /opt/logpresso/version.json /data/backup/yyyyMMdd
    cp -rp /opt/logpresso/plugin   /data/backup/yyyyMMdd
    cp -rp /opt/logpresso/etc      /data/backup/yyyyMMdd
    mysqldump -u root -p sonar > /data/backup/yyyyMMdd/sonar.sql
    
    
  3. 신규 패키지 압축 해제

    unzip /opt/logpresso/logpresso-snr-5.0.2605.0-u3129.zip
    
    
  4. 스크립트 수정 및 설정 확인 (메모리 설정 등)

    vi etc/logpresso.conf
    
    
  5. 서비스 실행

    cd /opt/logpresso
    ./logpresso start
    
    
  6. 마이그레이션 진행 (Standby 노드에서만 진행)

    ssh root@localhost -p 7022
    # logpresso@logpresso logpresso> sonar.migrate
    
    
  7. 서비스 재시작 (Standby 노드에서만 진행)

    cd /opt/logpresso
    ./logpresso stop
    ./logpresso start
    
    

복구 (롤백) 절차

업그레이드 작업 중 문제가 발생하는 경우, 백업본을 기준으로 복구합니다.

  1. 서비스 중지

    cd /opt/logpresso
    ./logpresso stop
    
    
  2. 데이터베이스 삭제 (분석서버 Active에서만 진행)

    mysql -u root -p
    # > drop database sonar;
    # > create database sonar default character set utf8 collate utf8_general_ci;
    
    
  3. 데이터베이스 복구 (분석서버 Active에서만 진행)

    mysql -u root -p sonar < /data/backup/yyyyMMdd/sonar.sql
    
  4. 백업 패키지 복구

    # /data/backup/yyyyMMdd 경로에 백업한 파일들(cache, bundles.sig, version.json 등)을
    # 원래 패키지 경로(/opt/logpresso)로 이동
    
    
  5. 구동 및 구동 상태 확인

    cd /opt/logpresso
    ./logpresso start
    ps -ef | grep araqne
    
    

검증

  1. 서비스/프로세스 상태 확인

    ps -ef | grep araqne
    
    
  2. 패치 이후 araqne.log 확인

    # /opt/logpresso/log/araqne.log 에 오류가 없는지, 정상 부팅되었는지 확인
    tail -f /opt/logpresso/log/araqne.log
    
    
  3. 로그 수집 현황 확인

    # 로그가 정상 인입 및 적재되는지 확인
    
    
  4. 리소스 사용량 확인

    # 성능 모니터를 활용해 CPU / 메모리 / 디스크 등 리소스 사용량이 정상 범위인지 확인
    
    

상기 패치를 고객사 패치 이전에 반드시 내부 테스트를 진행해 주시기를 요청드립니다.

동일하게 진행했는데 오류가 납니다. restart는 없는거 같아요.

수정 작업 진행하였습니다. 피드백 감사합니다.

다운로드 받으면 logpresso-SNR-5.0.2605.0-u3129.zip 와 같이 SNR이 대문자인데 꼭 소문자로 바꿔야 하나요?