Tableau Server 데이터 백업

Tableau Server의 정기적인 백업은 서버의 적절한 운영과 관리에서 중요한 단계입니다. tsm maintenance restore 명령을 사용하면 tsm maintenance backup 명령을 사용하여 만든 Tableau Server 백업을 복원할 수 있습니다. 다른 방법으로 만든 데이터베이스 백업과 가상 컴퓨터 스냅샷은 Tableau Server 복원에 사용할 수 있는 유효한 원본이 아니므로 최신 백업을 생성하는 것이 중요합니다.

 

실행 중인 서버와 동일한 유형의 ID 저장소가 있는 백업에서만 복원할 수 있습니다. 예를 들어 로컬 인증을 사용하는 서버의 백업은 로컬 인증으로 초기화된 Tableau Server로 복원될 수 있지만 Active Directory 인증을 사용하는 서버의 백업은 로컬 인증으로 초기화된 서버로 복원할 수 없습니다.

Tableau Server 데이터에는 데이터 추출 파일과 Tableau PostgreSQL 데이터베이스(통합 문서 및 사용자 메타데이터가 포함됨) 및 구성 데이터가 포함됩니다. TSM을 사용하여 백업을 만들면 이러한 모든 데이터가 확장명이 .tsbak인 단일 파일에 저장됩니다. Tableau Server의 분산 설치를 실행하는 경우 모든 노드의 데이터가 백업됩니다.

백업 빈도는 서버의 사용량과 콘텐츠 및 사용자가 변경되는 정도와 빈도를 비롯하여 환경에 따라 결정됩니다. 시스템 장애가 발생하고 Tableau Server를 복원해야 하는 경우 백업 후에 발생한 모든 변경 사항이나 업데이트가 손실됩니다. 서버에서 이루어지는 활동이 많을수록 서버를 더 자주 백업해야 합니다.

정기적인 백업과 더불어, Tableau Server를 새 버전으로 업그레이드하기 전에도 항상 백업을 만들어야 합니다. 업그레이드 프로세스에서는 PostGRES의 버전이 업데이트되는 경우를 제외하고 백업이 만들어지지 않으며 내부에서 사용할 PostGRES 전용 백업만 만들어집니다.

데이터 손실을 방지하려면 백업을 만든 후 Tableau Server 설치 환경에 속하지 않는 컴퓨터에 .tsbak 파일을 저장해야 합니다.

백업의 디스크 공간 사용량

백업을 만드는 데 필요한 디스크 여유 공간은 Tableau Server 리포지토리 및 파일 저장소 서비스의 데이터 양과 tabadmincontroller 서비스가 같은 위치에 있는지에 따라 달라집니다. 백업하는 동안 오래된 추출을 정리하기 위한 백그라운드 작업이 일시적으로 중지됩니다. 즉, 백업하는 동안 추출 새로 고침이 불필요한 파일을 그대로 유지하기 때문에 디스크 공간 사용량이 늘어납니다. 백업에 오랜 시간이 걸리거나 조직에서 정기적으로 업데이트되는 추출을 많이 사용하는 경우 임시 디스크 공간 사용량이 상당히 증가할 수 있습니다. 이러한 임시 파일은 백업이 완료된 후 제거됩니다.

다음 표에는 노드가 리포지토리, 파일 저장소, 컨트롤러 또는 이들의 조합을 호스팅하는지 여부를 기준으로 백업에 대한 디스크 공간 요구 사항이 나와 있습니다. 다중 노드 Tableau Server 환경에서는 각 노드의 필요 디스크 공간을 예측해야 합니다.

리포지토리파일 저장소컨트롤러필요한 디스크 공간
  

3x 리포지토리 데이터 + 250MB

리포지토리 데이터의 예상 크기를 얻으려면 <data directory>/pgsql/data/base 디렉터리의 크기를 확인하십시오.

리포지토리 데이터의 정확한 크기를 구하려면 백업 파일을 열고 workgroup.pg_dump 파일 크기를 사용하십시오.

  

1.5x 파일 저장소 데이터

파일 저장소 데이터(추출, 흐름 등)의 예상 크기를 얻으려면 <data directory>/dataengine 디렉터리의 크기를 확인하십시오.

  3x 리포지토리 데이터 + 250MB + 2.5x 파일 저장소 데이터
 3x 리포지토리 데이터 + 250MB + 1.5x 파일 저장소 데이터
 3x 리포지토리 데이터 + 250MB + 1.5x 파일 저장소 데이터
 3x 리포지토리 데이터 + 250MB + 2.5x 파일 저장소 데이터
3x 리포지토리 데이터 + 250MB + 1.5x 파일 저장소 데이터

Tableau Server 백업 최적화

백업 효율성을 극대화할 수 있는 몇 가지 방법이 있습니다. 하지만 이러한 방법의 효율성은 환경에 따라 달라지므로 데이터를 테스트하여 가장 효율적인 방법이 무엇인지 확인해야 합니다.

토폴로지 구성으로 최적화:

  • 관리 컨트롤러와 동일한 노드에 파일 저장소를 함께 배치하면 백업 프로세스 중에 노드 간에서 데이터를 전송해야 할 필요성이 줄어들거나 없어져 Tableau Server를 백업하는 데 걸리는 기간을 줄일 수 있습니다. 특히 조직이 많은 추출을 사용하는 경우 효과적입니다.
  • 관리 컨트롤러 노드와 함께 리포지토리(pgsql)를 배치하면 백업 시간도 줄일 수 있지만 시간 절약 효과는 파일 저장소만큼 크지 않습니다.

초기 노드 장애가 발생하여 컨트롤러를 다른 노드로 이동하지 않은 한 관리 컨트롤러는 일반적으로 초기 노드에 있습니다.

백업 전략으로 최적화:

백업은 리소스를 많이 사용하는 프로세스입니다. 가능하면 사용량이 적은 시간에 백업을 수행하는 것이 일반적으로 좋은 전략입니다. 하지만 전략은 사용자 요구 사항, Tableau Server 데이터 업데이트 빈도 및 복원 요구 사항에 따라 달라집니다. 백업 및 재해 복구에 대한 자세한 설명은 Tableau Server 재해 복구를 참조하십시오. 다음은 몇 가지 백업 전략이며, 사용자 요구 사항에 따라 이러한 전략을 수정하십시오.

  • 저장소 유형: 일반적으로 SSD(Solid State Disk)가 백업에 권장됩니다. SSD를 사용하면 전통적인 회전 디스크에 비해 훨씬 빠르게 백업을 완료할 수 있습니다.
  • 백업 압축: 압축을 사용하여 백업을 실행하는 옵션이 있습니다. 압축을 사용하여 백업을 수행하면 백업 크기가 비교적 작아지지만 성능이 저하될 수 있습니다. 백업 목표에서 속도가 더 중요하다면 --skip-compression 옵션을 선택하십시오.

    Tableau Server를 백업할 때 --skip-compression 옵션을 사용합니다. 이렇게 하면 압축을 사용하지 않고 더 큰 백업 파일이 만들어지지만 백업을 완료하는 데 걸리는 시간을 줄일 수 있습니다. 자세한 내용은 tsm maintenance backup을 참조하십시오.

  • 스냅샷 백업: 이 옵션은 Tableau Server를 외부 파일 저장소로 구성한 경우에만 사용할 수 있습니다. 스냅샷 백업의 성능은 NAS(Network Attached Storage) 유형에 따라 다르지만 일반적으로 스냅샷 백업은 전통적인 Tableau Server 백업보다 빠릅니다. 자세한 내용은 Tableau Server 외부 파일 저장소를 참조하십시오.

 

TSM CLI(명령줄 인터페이스)를 사용하여 백업 만들기

tsm maintenance backup 명령을 사용하여 Tableau Server에 의해 관리되는 데이터의 백업을 만듭니다. 이 데이터에는 데이터 추출 파일과 Tableau PostgreSQL 데이터베이스(통합 문서 및 사용자 메타데이터가 포함됨)가 포함됩니다.

참고: Linux 기반 Tableau Server를 네트워크 위치에 백업하는 경우 권한이 없는 사용자가 백업 파일이 기록되는 네트워크 공유에 액세스하고 쓸 수 있어야 합니다. 그렇지 않으면 백업이 실패합니다.

서버 구성 데이터를 백업하려면 tsm settings 명령을 사용합니다. tsm maintenance backup 명령을 사용하면 현재 날짜가 백업 파일에 추가됩니다.

tsm maintenance backup -f <backup_file> -d

자세한 내용은 tsm maintenance backup을 참조하십시오.

업그레이드 전 백업 만들기

Tableau Server를 업그레이드하기 직전에 항상 백업을 만들어야 합니다. Tableau Server가 실행 중일 때 백업을 만들어 업그레이드 중에 서버를 사용할 수 없는 기간을 최소화할 수 있습니다. 업그레이드 전 백업을 만드는 프로세스는 정기적인 백업을 만드는 프로세스와 동일하지만 분산 설치 환경의 경우 추가적인 고려 사항 하나가 있습니다.

참고: 이전 노드와 새 설치가 충돌하지 않도록 새 설치에 포함되지 않는 모든 노드에서 Tableau Server를 제거합니다.

업그레이드 중 백업

필요한 경우 Tableau Server 업그레이드 중에 업그레이드의 일부로 발생하는 마이그레이션을 허용하기 위해 데이터베이스의 임시 백업이 만들어집니다. 이 작업은 업그레이드 중에 수행되며 대부분의 경우 업그레이드 프로세스에 눈에 띄는 영향을 미치지 않습니다. 특별한 경우에는 다음과 같은 추가 영향이 있을 수 있습니다.

  • 버전 2021.4 이하에서 Tableau Server 2022.1 이상으로 업그레이드 - 블루/그린 업그레이드를 수행하거나 tsm maintenance(backup 및 restore) 메서드를 사용하여 Tableau Server 2021.4 이하를 수동으로 업그레이드하는 경우 Tableau Server 2022.1 이상으로 복원하려면 먼저 legacy-identity-mode를 사용하도록 설정해야 합니다. 자세한 내용은 ID 마이그레이션 관련 문제 해결을 참조하십시오.
  • 주 버전 pgsql 업데이트 - 업그레이드에 Tableau 리포지토리에 사용되는 데이터베이스에 대한 주 버전 업데이트가 포함된 경우 시간을 절약하기 위해 내부 업그레이드 백업이 압축하지 않고 수행됩니다. 따라서 업그레이드 프로세스 중에 추가적인 임시 디스크 공간이 필요합니다.

    주 버전 데이터베이스 업데이트가 포함된 Tableau Server 버전은 2020.4입니다.

백업 일정 예약 및 관리

2020.4.0부터 tsm 명령을 사용하여 백업 일정을 예약할 수 있습니다. 이 작업은 명령줄에서 수행해야 합니다(백업 일정을 예약하기 위한 TSM UI가 없음). tsm maintenance backup 명령을 사용하면 백업 일정을 만들고 업데이트할 수 있습니다. tsm schedules 명령을 사용하면 일정을 보고, 삭제하고, 일시 중지하고, 다시 시작하고, 업데이트할 수 있습니다.

백업 일정을 예약하려면:

  1. 초기 노드(TSM이 설치된 노드)에서 관리자로 명령 프롬프트를 엽니다.

  2. 다음 명령을 실행합니다.

    tsm maintenance backup -f <backup-file> -sr <recurrence> -st <time-to-run> -sd <days-to-run> -sn <schedule-name>
    

    예를 들어 매월 15일 오전 2시에 실행되는 "monthly-backup"이라는 백업 일정을 만들고 <yyyy.mm.dd.hh.mm>-ts-mid_month_backup.tsbak라는 파일을 생성하려면 다음과 같이 하십시오.

    tsm maintenance backup -f ts-mid_month_backup -sr monthly -st 02:00 -sd 15 -sn monthly-backup
    

예약된 백업을 보려면:

  1. 초기 노드(TSM이 설치된 노드)에서 관리자로 명령 프롬프트를 엽니다.

  2. 다음 명령을 실행합니다.

    tsm schedules list 
    

    --next-run 또는 --schedule-name 옵션을 사용하여 예약된 실행 시간, 가장 이른 일정부터 가장 늦은 일정 또는 이름 기준으로 일정을 정렬할 수 있습니다. --schedule-id 옵션을 사용하여 단일 일정에 대한 세부 정보를 번갈아 표시할 수 있습니다. 단일 일정을 볼 때 만들어진 시간, 실행된 횟수, 실행 시 사용된 특정 옵션을 비롯한 관련 추가 세부 정보를 볼 수 있습니다. 작업 옵션은 JSON 형식에서 "Job args"로 표시됩니다.

예약된 백업을 업데이트하려면:

  1. 초기 노드(TSM이 설치된 노드)에서 관리자로 명령 프롬프트를 엽니다.

  2. 다음 명령을 실행합니다.

    tsm schedules update --schedule-id <ID> --schedule-time <time-to-run> --schedule-recurrence <frequency> --schedule-days <day-to-run>
    

    참고: 이름을 추가하거나 변경하려면 tsm-maintenance-backup 명령을 사용합니다.

백업 일정을 일시 중단하거나 다시 시작하려면:

  1. 초기 노드(TSM이 설치된 노드)에서 관리자로 명령 프롬프트를 엽니다.

  2. 다음 명령 중 하나를 실행합니다.

    • 일정을 일시 중단하려면:

      tsm schedules suspend --schedule-id <scheduleID>
      
    • 일시 중단된 일정을 다시 시작하려면:

      tsm schedules resume --schedule-id <scheduleID>
      

백업 프로세스 스크립트 작성

자주 백업하는 경우 자동으로 백업 및 관련 작업을 수행하는 스크립트를 만들 수 있습니다. 이러한 작업에는 다음이 포함됩니다.

  • 백업을 실행하기 전에 파일 및 폴더를 정리합니다.

  • 백업 자체를 실행합니다.

  • 백업 파일을 별도의 컴퓨터에 복사하여 안전하게 보관합니다.

이 섹션에서는 조합하여 사용하여 백업 및 관련 작업을 수행할 수 있는 tsm 명령에 대해 설명합니다.

로그 파일 제거 및 임시 폴더 정리

오래된 Tableau Server 로그 파일과 임시 파일을 정리하여 백업을 만드는 데 걸리는 시간을 줄이고 백업 파일의 크기를 최소화할 수 있습니다.

며칠 이상 지난 로그 파일을 정리하려면 다음 명령을 실행합니다.

tsm maintenance cleanup

백업 실행

참고: Linux 기반 Tableau Server를 네트워크 위치에 백업하는 경우 권한이 없는 사용자가 백업 파일이 기록되는 네트워크 공유에 액세스하고 쓸 수 있어야 합니다. 그렇지 않으면 백업이 실패합니다.

백업을 만들려면 tsm maintenance backup 명령을 사용합니다.

tsm maintenance backup --file <backup_file> --append-date

이 명령에서 다음 사항에 유의합니다.

  • 백업 파일 이름에 날짜를 포함하려면 명령에 --append-date를 추가합니다.

  • 백업 파일은 데이터 디렉터리의 임시 위치에서 결합된 후 TSM basefilepath.backuprestore 변수에 정의된 디렉터리에 저장됩니다.

    /var/opt/tableau/tableau_server/data/tabsvc/files/backups/<filename>.tsbak

    백업 파일이 저장되는 위치와 해당 위치를 변경하는 방법에 대한 자세한 내용은 tsm 파일 경로를 참조하십시오. 참고: 백업 위치를 변경한 경우에도 백업 프로세스는 데이터 디렉터리의 임시 위치를 사용하여 백업 파일을 결합합니다.

백업 파일을 다른 컴퓨터에 복사

가장 좋은 방법은 백업을 만든 후 백업 파일을 Tableau Server와 분리된 다른 위치에 복사하는 것입니다.

피드백을 제공해 주셔서 감사합니다!귀하의 피드백이 제출되었습니다. 감사합니다!