Project: LanScope Cat DB 이행 작업

Windows Server・SQL Server・Azure・Microsoft 365

On-premise System

프로젝트 소개

Data Migration 배경

고객 측의 온프레미스 서버 지원 종료가 임박하여, 새로운 환경 구축이 필요했습니다. 최신 버전의 관리 시스템을 구축하고 기존 데이터를 이전함으로써, 지속적인 운영이 필수적인 요건이었습니다. 따라서 20TB의 데이터를 새 서버로 문제없이 이전하는 것이 이 프로젝트의 핵심 포인트였습니다.

프로젝트 체제

저는 멤버 포지션으로 프로젝트에 참여하게 되었습니다. 저 외에도 고객 측과의 커뮤니케이션을 담당하는 선배 엔지니어 2명과 함께 총 3명으로 프로젝트를 진행하였습니다. 협력 회사의 엔지니어 분들도 데이터 이전 작업에 협력해 주셨습니다. 주로 네트워크 트래픽 관련 리스크 관리를 담당해 주었습니다.

프로젝트 업무 내용

WBS 작성:

이미 고객 측과의 요구 사항 정의가 끝난 상태에서 프로젝트에 참여하게 되었고, 이때 처음으로 WBS (Work Breakdown Structure, 작업 분류 구조) 의 존재를 알게 되었습니다. 이전 프로젝트에서도 엑셀을 사용해 작업 일정 및 진행 관리를 담당했었지만, 이번에는 프로젝트를 본격적으로 세분화하여 일정을 구성하는 경험을 할 수 있었습니다. 클라이언트의 환경 조사부터 실제 구현 작업에 이르기까지, 문제가 발생할 가능성을 고려하여, 일정에 여유를 가지고 스케줄을 짰던 것을 기억합니다.

현장 조사:

  1. 클라이언트의 프로덕션 환경(온프레미스) 조사
  2. Windows Server 2012 사용, 통합 매니저 서버 1대, 서브 매니저 서버 4대 구성 확인
  3. PowerShell 을 통한 서버의 Feature(구성 요소 및 기능) 추출
  4. 데이터 이전할 관리 시스템의 정보 및 설정 요소 캡처
  5. 약 300장의 현장 캡처 이미지 확보
  6. 설정 파일 수동 캡처 작업 수행

Microsoft Azure 환경에서 테스트:

  1. 인프라 구조 구축
    • 가상 네트워크 배포
    • 가상 머신 배포
  2. Active Directory 설정
    • 서버 설정
    • 도메인 가입
    • 이름 해석 확인
  3. SQL Server 이전
    • SQL Server 설치
    • 애플리케이션 설정
  4. IT 자산 관리 시스템 설치
  5. 백업 및 복원
    • 초기 상태의 시스템 백업
    • 단말기 등록 및 시스템 소통 확인
    • 시스템 복원

Data Migration 계획서 및 메뉴얼 작성:

  1. 백업 및 복원 기능 검증 완료 후 이전 계획서와 절차서 본격 작성 시작
  2. 절차서는 검증 기간 동안 점진적으로 작성하며, 이 시점에서 받은 피드백을 통해 여러 차례 수정
  3. 최종적으로 고객에게 프레젠테이션할 최종 버전 완성
  4. 이전 계획서는 절차서의 주요 항목을 시각화하여, 구성도와 일정표 형태의 PPT로 제작

테스트 사양서 작성:

  1. 프로젝트에서 가장 어려웠던 작업 중 하나는 테스트 사양서의 작성
  2. 테스트 사양서 자체를 본 적이 없어 작성 방법을 전혀 몰랐음
  3. 이 때, 시니어 엔지니어의 많은 조언과 지도를 받음

테스트 계획:

  • 목적: 해당 소프트웨어의 기능과 성능을 검증하기 위한 테스트를 진행합니다.
  • 범위: 테스트 대상이 되는 기능이나 부분을 명시합니다.
  • 스케줄: 테스트 시작 예정일과 종료 예정일, 주요한 마일스톤 등을 포함합니다.
  • 리소스: 테스트에 필요한 리소스(인력, 기기 등)를 명기합니다.
  • 테스트 방법: 사용하는 테스트 방법이나 도구에 대해 설명합니다.

대상 환경:

  • 하드웨어: 테스트에 사용되는 컴퓨터, 서버, 네트워크 장비 등의 리스트와 사양.
  • 소프트웨어: OS, 미들웨어, 데이터베이스, 그 외 필요한 소프트웨어의 버전과 설정 정보.
  • 네트워크: 테스트 환경의 네트워크 구성과 토폴로지.

단위 테스트:

  • 목적: 각각의 모듈 기능을 독립적으로 검증합니다.
  • 테스트 케이스: 주요한 테스트 시나리오와 그에 대한 예상되는 결과를 기술합니다.
  • 실행 방법: 각 테스트 케이스의 실행 방법이나 절차에 대해 설명합니다.

통합 테스트:

  • 목적: 다양한 모듈이 정확히 통합되어 전체 시스템이 원활하게 작동하는지를 검증합니다.
  • 테스트 케이스: 통합에 관한 주요 시나리오와 예상되는 결과를 기술합니다.
  • 실행 방법: 통합 테스트의 실행 방법이나 절차에 대해 설명합니다.

문의 대응:

해당 시스템에 대해 벤더로부터 제공받은 공식 문서가 있었지만, 놓치고 있는 부분이 있을 수 있어서, 직접 벤더에 현재 준비 중인 절차서의 누락된 부분이나 주의점 등을 문의했습니다.이전 작업에서 중요했던 것은 과거 데이터의 일관성이었기 때문에, 그 부분에 특별히 주의를 기울이며 기술 지원 담당자와 여러 차례 대화를 나누었습니다.

프레젠테이션:

엔지니어로서의 경력에서 처음으로, 고객 앞에서 이전 작업에 대한 프레젠테이션을 진행했습니다. 이전 계획서나 절차서 등, 사전에 준비해온 성과물을 고객과 협력 회사 분들이 참석한 회의에서 차례대로 설명했습니다.

Data Migration 작업:

다행히 문제가 발생하지 않아, 본격적인 이전 작업은 순조로웠습니다. 다음의 프로세스를 따라 이전 작업을 진행했습니다.

  • 준비해둔 절차서에 따라 작업 실행
  • VPN 연결로 대상 서버에 접속
  • 데이터베이스와 관리 시스템을 순서대로 설치
  • 사전에 백업한 데이터를 사용하여 관리 시스템을 복원
  • 시스템 정상 작동 체크
  • 기존 데이터의 복원 완료
  • 추가적인 시스템 설정
  • 테스트 계획서를 바탕으로 기능 테스트 실행

성과물 제출

실제 작업과 테스트가 끝난 후, 납품할 문서를 수정합니다. 검증 단계에서 생성된 문서를 바탕으로, 프로덕션 환경에서의 작업 중 발견된 오류나 절차의 문제를 메모하고, 이를 고려하여 문서를 최종 수정한 뒤 고객에게 제출합니다.

이렇게 또 하나의 프로젝트가 마무리되었습니다. 요구사항 정의 프로세스는 경험해보지 못했지만
그럼에도 불구하고 이전 작업의 설계부터 최종 문서의 제출에 이르기까지 직접 프로젝트 전반에 관여할 수 있었습니다.