Discover

Get Started

Developers

Industries

Upgrade INNORIX

INNORIX는 Docker Container 기반으로 운영되며, 새로운 버전의 Container Image를 적용하는 방식으로 업그레이드를 수행합니다.

업그레이드 작업 전 기존 운영 환경을 보호하기 위해 사전 백업을 수행하고, 서비스 영향도를 확인한 후 안전하게 진행해야 합니다.

본 장에서는 INNORIX 버전 업그레이드를 위한 준비, Container Image 업데이트, 서비스 적용 및 업그레이드 검증 절차를 안내합니다.

업그레이드 준비

업그레이드를 진행하기 전에 현재 운영 환경과 시스템 상태를 확인합니다.

사전 확인 항목

항목확인 내용
Current Version현재 설치된 INNORIX 버전 확인
System Status서비스 정상 운영 여부 확인
Storage업그레이드 작업 공간 확보
NetworkContainer Image 다운로드 가능 여부 확인
Backup시스템 구성 및 데이터 백업 여부 확인

업그레이드 전 준비 사항

업그레이드 전에 다음 작업을 수행합니다.

  • 현재 INNORIX 설정 백업
  • 운영 데이터 백업
  • Docker 환경 상태 확인
  • 관리자 작업 일정 확인
  • 서비스 중단 필요 여부 검토

안정적인 업그레이드를 위해 운영 환경에서는 유지보수 시간에 작업하는 것을 권장합니다.

컨테이너 이미지 업데이트

INNORIX 업그레이드는 최신 Container Image를 로드하여 적용하는 방식으로 진행합니다.

Container Image 업데이트 절차

  1. Docker 환경 상태 확인
  2. 최신 INNORIX Container Image 로드
  3. 기존 Image와 신규 Image 확인
  4. 업데이트 대상 Image 적용

확인 항목

항목설명
Image Version신규 Container Image 버전
Storage UsageImage 저장 공간
Compatibility현재 환경과 버전 호환 여부

주의 사항

  • 업그레이드 전 기존 Image 삭제를 권장하지 않습니다.
  • 문제 발생 시 롤백을 위해 이전 Image를 유지합니다.

서비스 업그레이드

최신 Container Image를 반영한 후 기존 서비스를 새로운 버전으로 교체합니다.

업그레이드 과정에서 기존 환경 설정, 네트워크 및 영구 스토리지는 그대로 유지되며, Container만 새로운 버전으로 교체됩니다.

업그레이드를 수행하기 전에 반드시 시스템 구성 및 운영 데이터를 백업하는 것을 권장합니다.

서비스 업그레이드 절차

Step 1. 현재 서비스 상태 확인

현재 배포된 서비스와 실행 상태를 확인합니다.

bash
1
docker stack services exacoola

각 서비스의 REPLICAS 값(예: node-app 3/3)이 정상인지 확인합니다.

개별 Container(태스크) 단위로 확인하려면 다음 명령을 사용합니다.

bash
1
docker stack ps exacoola

Step 2. 최신 Container Image 반영

INNORIX 서비스는 오프라인 이미지(.tar) 방식으로 배포됩니다.

전달받은 최신 이미지 파일을 로드합니다.

bash
1
docker load -i ./exacoola-images.tar

로드가 완료되면 새로운 Image가 정상적으로 저장되었는지 확인합니다.

bash
1
docker images

Step 3. 서비스 업그레이드 (재배포)

로드한 최신 Container Image를 사용하여 서비스를 재배포합니다.

bash
1
sudo docker stack deploy -c docker-compose.yml exacoola

Docker Swarm은 변경된 Image를 감지하여 node-app 서비스를 1개씩 순차적으로(롤링 업데이트) 교체합니다.

기존 Volume 및 운영 데이터는 그대로 유지된 상태로 Container만 교체됩니다.

Step 4. 서비스 실행 확인

Container가 정상적으로 재배포되었는지 확인합니다.

bash
1
docker stack services exacoola

node-appREPLICAS3/3으로 표시되면 정상입니다.

태스크별 상태와 재배포 시점을 확인하려면 다음 명령을 사용합니다.

bash
1
docker stack ps exacoola

Step 5. 서비스 로그 확인

업그레이드 과정에서 오류가 발생하지 않았는지 로그를 확인합니다.

bash
1
docker service logs exacoola_node-app

실시간 로그 및 최근 로그만 확인하려면 다음 명령을 사용합니다.

bash
1
docker service logs -f --tail=100 exacoola_node-app

다른 서비스의 로그도 동일한 방식으로 확인할 수 있습니다.

bash
1
docker service logs exacoola_mysql
bash
1
docker service logs exacoola_redis

Docker Swarm 기반 업그레이드

INNORIX는 Docker Swarm(단일 노드) 를 이용하여 모든 서비스를 관리합니다.

업그레이드 시 docker stack deploy는 기존 설정을 유지한 상태에서 변경된 Image만 반영하여 Container를 재생성합니다.

유지되는 구성 항목

항목설명
Configuration기존 서비스 설정 유지
Environment환경 변수 설정 유지
NetworkOverlay Network 구성 유지
Volume영구 스토리지 및 운영 데이터 유지
WorkspaceWorkspace 구성 정보 유지
License적용된 License 정보 유지

업그레이드 후 확인 사항

업그레이드가 완료되면 다음 항목을 확인합니다.

  • 모든 서비스의 REPLICAS가 정상(node-app 3/3)인지 확인
  • Web Console 정상 접속 여부 확인
  • 관리자 로그인 가능 여부 확인
  • Workspace 정상 조회 여부 확인
  • License 정상 적용 여부 확인
  • Hyperlink Agent 정상 동작 여부 확인
  • 파일 전송 작업 생성 및 실행 여부 확인

권장 사항

운영 환경에서는 다음 사항을 권장합니다.

  • 업그레이드 전 시스템 구성 및 운영 데이터 백업
  • 기존 Container Image 보관
  • 운영 시간 외 유지보수 시간에 업그레이드 수행
  • 업그레이드 완료 후 서비스 로그 확인
  • 실제 파일 전송 테스트를 통해 정상 동작 여부 검증

업그레이드 확인

업그레이드 완료 후 서비스가 정상적으로 동작하는지 확인합니다.

서비스 확인 항목

항목확인 내용
Deployment Status신규 서비스·컨테이너 정상 배포 여부
Service StatusINNORIX 서비스 정상 동작 여부
Web Console관리자 화면 접근 여부
Configuration기존 설정 유지 여부
File Transfer파일 전송 기능 정상 여부

기능 테스트

업그레이드 후 다음 기능을 확인합니다.

  • 관리자 로그인 정상 여부
  • Workspace 정보 유지 여부
  • 사용자 정보 유지 여부
  • 파일 전송 작업 생성 가능 여부
  • 파일 전송 완료 상태 확인

롤백 절차

업그레이드 후 문제가 발생하는 경우 이전 버전의 Container Image를 사용하여 서비스를 이전 상태로 복원할 수 있습니다.

롤백을 수행하기 전에 현재 서비스 상태와 로그를 확인하고, 이전 버전의 Image가 서버에 존재하는지 확인합니다.

롤백 절차

Step 1. 현재 서비스 상태 확인

현재 배포된 서비스와 실행 상태를 확인합니다.

bash
1
docker stack services exacoola

개별 Container(태스크) 단위로 확인하려면 다음 명령을 사용합니다.

bash
1
docker stack ps exacoola

Step 2. 현재 로그 확인

업그레이드 과정에서 발생한 오류를 확인합니다.

bash
1
docker service logs exacoola_node-app

실시간 로그를 확인하려면 다음 명령을 사용합니다.

bash
1
docker service logs -f --tail=100 exacoola_node-app

Step 3. 이전 버전 Image 확인

로컬에 보관되어 있는 이전 버전의 Image와 Tag를 확인합니다.

bash
1
docker images

목록에서 롤백 대상 버전(예: exacoola-node:v3.1.0)이 존재하는지 확인합니다.

예)

text
1
2
exacoola-node v3.2.0 (현재 버전) exacoola-node v3.1.0 (롤백 대상)

이전 버전 Image가 목록에 없는 경우, 보관된 이미지 tar 파일을 먼저 로드합니다.

bash
1
docker load -i ./exacoola-images-v3.1.0.tar

Step 4. 이전 버전 적용

docker-compose.yml에서 이전 버전으로 되돌릴 서비스의 Image Tag를 변경합니다.

node-appnode-init은 동일한 Image를 사용하므로 두 서비스 모두 변경합니다.

예)

yaml
1
image: exacoola-node:v3.1.0

설정을 저장한 후, 변경된 Image로 서비스를 재배포합니다.

bash
1
sudo docker stack deploy -c docker-compose.yml exacoola

Docker Swarm은 변경된 Image Tag를 감지하여 서비스를 이전 버전으로 재배포합니다.

기존 Volume 및 운영 데이터는 그대로 유지됩니다.

Step 5. 서비스 실행 확인

Container가 이전 버전으로 정상 재배포되었는지 확인합니다.

bash
1
docker stack services exacoola

IMAGE 컬럼이 롤백 대상 버전(exacoola-node:v3.1.0)으로 표시되고, node-appREPLICAS3/3으로 표시되면 정상입니다.

태스크별 상태와 재배포 시점을 확인하려면 다음 명령을 사용합니다.

bash
1
docker stack ps exacoola

참고
node-init 서비스는 초기화 전용 서비스로, Shutdown 또는 Complete 상태로 표시되는 것이 정상입니다.

Step 6. 서비스 로그 확인

롤백 후 오류 없이 서비스가 시작되었는지 확인합니다.

bash
1
docker service logs exacoola_node-app

특정 서비스만 확인하려면 다음 명령을 사용합니다.

bash
1
docker service logs exacoola_mysql
bash
1
docker service logs exacoola_redis

롤백 완료 확인

확인 항목상태
서비스 상태 확인 완료
이전 버전 Image 확인 완료
이전 버전 서비스 재배포 완료
서비스 실행 확인 완료
로그 확인 완료