DAOS 계층 2 스토리지 사용 되돌리기

현재 HCL Domino는 계층 2 스토리지에서 계층 1 스토리지로 DAOS 오브젝트를 이동하는 자동화된 방법을 제공하지 않습니다. 아래에서는 수동으로 되돌리는 방법을 설명합니다.

이 태스크 정보

전체 단계는 다음과 같습니다. 자세한 정보는 상세 단계를 참조하십시오.
  1. DAOS 계층 2를 사용하지 않도록 설정합니다.
  2. 계층 2에 오브젝트가 있는지 확인합니다.
  3. 모든 계층 2 오브젝트를 계층 1 스토리지로 복사합니다.
  4. 빠른 재동기화를 수행합니다.
  5. DAOS에 더 이상 계층 2 참조가 없는지 확인합니다.
  6. 계층 2 오브젝트를 삭제합니다.
  7. 전체 재동기화를 수행합니다.

프로시저

  1. DAOS 계층 2 스토리지를 사용하지 않도록 설정:
    1. 서버 문서의 DAOS 탭에서 DAOS 계층 2 필드를 사용하지 않도록 설정합니다.
    2. 변경사항을 적용한 Domino 서버를 다시 시작합니다.
      restart server
    3. 서버가 구동되면 서버 콘솔에 다음 명령을 입력합니다.
      tell daosmgr status
      출력이 DAOS Tier2 is Disabled와 같이 표시되는지 확인합니다.
      주: 계층 2가 사용하지 않도록 설정되었긴 하나, 여기에 저장된 기존 오브젝트는 여전히 Domino가 다운로드할 수 있습니다. 오브젝트 색인은 해당 오브젝트가 계층 2에 저장되어 있다는 사실을 여전히 알고 있기 때문입니다. 하지만 이 시점에서는 더 이상 다른 오브젝트가 계층 2로 푸시되지 않습니다.
  2. 서버 콘솔에서 다음 명령을 실행하여 계층 2에 DAOS 오브젝트가 있는지 확인합니다. 를 참조하십시오.
    tell daosmgr objectinfo summary
    출력에서 계층 2 오브젝트가 없다고 표시될 경우 이 프로시저의 나머지 단계를 건너뜁니다. 다음 출력 예는 32개의 계층 2 오브젝트가 있다고 표시합니다.
    [1998:0002-082C] DAOS TIERED STORAGE SUMMARY
    [1998:0002-082C] TIER 1 STORAGE:
    [1998:0002-082C] 	OBJECTS      - 0
    [1998:0002-082C] 	MB           - 0 MB
    [1998:0002-082C] TIER 2 STORAGE:
    [1998:0002-082C] 	OBJECTS      - 32
    [1998:0002-082C] 	MB           - 70 MB
    [1998:0002-082C] TOTAL STORAGE :
    [1998:0002-082C] 	OBJECTS      - 32
    [1998:0002-082C] 	MB           - 70 MB
    [1998:0002-082C] 	AVERAGE AGE  - 1521 days
  3. 모든 계층 2 오브젝트를 계층 1 스토리지로 복사합니다. 이 단계는 AWS CLI(명령행 인터페이스)가 설치되고 구성되어 있으며 이를 사용하고 있다고 가정합니다. 이 밖에도 S3 백엔드에서 작동하는 어떤 도구를 사용하여 복사해도 됩니다.
    1. 프로파일 이름을 확인합니다. AWS CLI(명령행 인터페이스)에는 사용자 홈 디렉토리 아래의 ".aws" 서브디렉토리에 있는 파일 "credentials"의 S3 신임 정보를 가져올 것입니다. 신임 정보 파일에는 여러 개의 신임 정보가 있을 수 있습니다. 각각의 신임 정보는 대괄호로 묶인 프로파일 이름(예: [dominocos]), aws_access_key_idaws_secret_access_key를 갖습니다. [default] 신임 정보를 사용하는 경우에는 프로파일 이름에 신경 쓰지 않아도 됩니다. 그렇지 않은 경우에는 S3 명령에 올바른 프로파일 이름을 지정해야 합니다.
    2. 추가로 필요한 정보를 수집하려면 서버 콘솔에서 다음 명령을 실행하십시오.
       tell daosmgr status
      명령 출력에서 다음 정보를 수집합니다.
      • 기본 계층 1 스토리지 경로: 출력에 baseStoragePath로 표시됩니다.
      • S3 엔드포인트: 출력에 DAOS Tier2 Endpoint로 표시됩니다. AWS S3를 사용하는 경우에는 엔드포인트가 필요하지 않을 수 있습니다. MinIO를 사용하는 경우에는 MinIO 서버의 엔드포인트(예: https://minio.myserver.renovations.com)를 사용하십시오.
      • S3 버킷: 출력에 DAOS Tier2 Bucket로 표시됩니다.
      • S3 서버 ID: 출력에 DAOS Tier2 Server ID로 표시됩니다.
    3. (선택 사항) 모든 계층 2 오브젝트를 나열하려면 다음과 같은 형식으로 명령을 구성하십시오. 이 명령을 완료하는 데는 상당한 시간이 소요될 수 있다는 점에 유의하십시오.
      aws s3 [--profile <profile-name>] [--endpoint-url <s3-endpoint>] ls 
         s3://<s3-bucket>/obj/<s3-server-id>/<s3-server-id>/ --recursive
      주: 소스 경로와 (Windows 이외의 시스템의 경우) 대상 경로의 대/소문자가 정확하게 일치해야 합니다.

      예를 들어, 다음과 같습니다.

      aws s3 --profile dominocos ls 
         s3://aws-hcl-dominocos/obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
         96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/ --recursive
      오브젝트 2개를 나열하는 출력 예. 더 많은 오브젝트가 있을 수 있습니다.
      2019-10-09 15:55:02    1777421 obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
         96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
         040E4598A2A287490B8DD7784FEB7150B876313E001B1D64.nlo
      2019-10-09 15:55:01    1771669 obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
         96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
         0E597BF9C316422FCA869567755CD882C8DCC469001B06EC.nlo
    4. 계층 2 오브젝트를 계층 1로 복사합니다. 그 어떤 하위 컨테이너도 Domino 서버의 대상 디렉토리로 선택할 수 있습니다. 이 예에서는 0001을 선택했다고 가정합니다. 다음과 같은 형식의 명령을 실행합니다. 이 명령을 완료하는 데는 상당한 시간이 소요될 수 있습니다.
      aws s3 [--profile <profile-name>] [--endpoint-url <s3-endpoint>] cp s3://<s3-bucket>/obj/<s3-server-id>/
         <s3-server-id>/<base-tier1-storage-path>/0001 --recursive
      예를 들어, 다음과 같습니다.
      aws s3 --profile dominocos cp 
         s3://aws-hcl-dominocos/obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
         96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/ C:\Domino\MyServer\Data\DAOS\0001 --recursive
      콘솔 출력 예:
      download: 
      s3://aws-hcl-dominocos/obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
         96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
         1FAE990C593D66B44923C1C0E41740F9628DDD170000D902.nlo to .\
         1FAE990C593D66B44923C1C0E41740F9628DDD170000D902.nlo
      download:
      s3://aws-hcl-dominocos/obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
         96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
         11FCA4B81120D5650D67C9427C80D6B8256AFCF30000D902.nlo to .\
         11FCA4B81120D5650D67C9427C80D6B8256AFCF30000D902.nlo
  4. 서버 콘솔에서 다음 명령을 실행하여 빠른 재동기화를 수행합니다.
    tell daosmgr resync quick force

    이렇게 하면 DAOS가 계층 1과 계층 2에서 오브젝트 색인을 새로 고치지만 전체 재동기화는 수행하지 않습니다. tell daosmgr status 명령을 실행하면 결과가 catalogState = RESYNCING과 같이 표시됩니다. DAOS가 계속해서 이 상태로 작동하지만 삭제된 오브젝트를 물리적으로 삭제하지는 않습니다.

  5. 서버 콘솔에서 다음 명령을 실행하여 더 이상 계층 2 오브젝트가 없는 것을 확인합니다.
    tell daosmgr objectinfo summary
    출력에는 0개의 계층 2 오브젝트가 표시되어야 합니다. 예:
    [1D1C:0002-6170] DAOS TIERED STORAGE SUMMARY
    [1D1C:0002-6170] TIER 1 STORAGE:
    [1D1C:0002-6170]        OBJECTS      - 32
    [1D1C:0002-6170]        MB           - 70 MB
    [1D1C:0002-6170] TIER 2 STORAGE:
    [1D1C:0002-6170]        OBJECTS      - 0
    [1D1C:0002-6170]        MB           - 0 MB
    [1D1C:0002-6170] TOTAL STORAGE :
    [1D1C:0002-6170]        OBJECTS      - 32
    [1D1C:0002-6170]        MB           - 70 MB
    [1D1C:0002-6170]        AVERAGE AGE  - 1521 days
  6. 다음과 같은 형식의 명령을 실행하여 S3에서 계층 2 오브젝트를 삭제합니다. 이 명령은 3c단계에서 계층 2 오브젝트를 나열하기 위해 사용한 명령에서 ls 플래그를 rm으로 바꾼 것입니다.
    aws s3 [--profile <profile-name>] [--endpoint-url <s3-endpoint>] rm 
       s3://<s3-bucket>/obj/<s3-server-id>/<s3-server-id>/ --recursive
    예를 들어, 다음과 같습니다.
    aws s3 --profile dominocos rm s3://aws-hcl-dominocos/obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
       96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/ --recursive

    콘솔 출력 예:

    delete:
    s3://aws-hcl-dominocos/obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
       96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
       040E4598A2A287490B8DD7784FEB7150B876313E001B1D64.nlo
    delete:
    s3://aws-hcl-dominocos/obj/96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
       96A6456FB0F12AE91178C9A8AE0DAB7DB6F1130D/
       11FCA4B81120D5650D67C9427C80D6B8256AFCF30000D902.nlo
  7. 다음 방법 중 하나를 사용하여 전체 DAOS 재동기화를 수행합니다.
    • tell daosmgr resync 명령을 실행하도록 스케줄된 Domino 디렉토리 프로그램 문서가 있다면 실행할 때까지 기다립니다.
    • 그렇지 않다면 서버 콘솔에서 tell daosmgr resync force 명령을 실행합니다. 전체 재동기화가 완료되려면 상당한 시간이 소요될 수 있으므로 가급적 업무 시간 외에 실행하십시오.
    주: 4단계에서 실행한 tell daosmgr resync quick force 명령은 DAOS에 모든 기존 오브젝트의 색인이 있다고 가정했습니다. 하지만 이 명령은 오브젝트에 대한 모든 참조 개수가 정확하다고 가정하지 않습니다. 정확한 참조 개수를 위해서는 전체 재동기화가 필요한데, 그러려면 DAOS를 사용하도록 설정된 모든 데이터베이스에서 모든 첨부 파일 참조에 대해 반복함으로써 오브젝트 색인을 다시 처음부터 빌드해야 합니다.