Skip to main content
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

잠재적으로 손실된 개체를 검색하여 복원합니다

기여자

개체 손실(손실) 경보와 * 개체 손실 * 경고를 트리거하고 잠재적으로 분실된 것으로 식별된 개체를 찾아서 복원할 수 있습니다.

필요한 것
  • "손실된 객체 조사"에서 식별된 대로 손실된 객체의 UUID가 있어야 합니다.

  • "passwords.txt" 파일이 있어야 합니다.

이 작업에 대해

이 절차에 따라 그리드의 다른 위치에서 손실된 개체의 복제된 복사본을 찾을 수 있습니다. 대부분의 경우 손실된 개체를 찾을 수 없습니다. 그러나 경우에 따라 즉각적인 조치를 취할 경우 손실된 복제 개체를 찾아 복원할 수 있습니다.

중요함 이 절차에 대한 지원은 기술 지원 부서에 문의하십시오.
단계
  1. 관리 노드에서 감사 로그에서 가능한 객체 위치를 검색합니다.

    1. 그리드 노드에 로그인합니다.

      1. ssh admin@grid_node_ip' 명령을 입력한다

      2. "passwords.txt" 파일에 나열된 암호를 입력합니다.

      3. 루트로 전환하려면 다음 명령을 입력합니다

      4. "passwords.txt" 파일에 나열된 암호를 입력합니다. 루트로 로그인하면 프롬프트가 '$'에서 '#'로 바뀝니다.

    2. 감사 로그가 있는 디렉토리로 변경합니다: 'cd /var/local/audit/export/'

    3. grep를 사용하여 잠재적으로 손실된 개체와 관련된 감사 메시지를 추출하고 출력 파일로 보냅니다. ' grep uuid-valueaudit_file_name > output_file_name ' 을 입력합니다

      예를 들면 다음과 같습니다.

      Admin: # grep 926026C4-00A4-449B-AC72-BCCA72DD1311 audit.log > messages_about_lost_object.txt
    4. grep를 사용하여 이 출력 파일에서 LLST(Location Lost) 감사 메시지를 추출합니다. 'grep LLST output_file_name'을 입력합니다

      예를 들면 다음과 같습니다.

      Admin: # grep LLST messages_about_lost_objects.txt

      LLST 감사 메시지는 이 샘플 메시지와 같습니다.

      [AUDT:\[NOID\(UI32\):12448208\][CBIL(UI64):0x38186FE53E3C49A5]
      [UUID(CSTR):"926026C4-00A4-449B-AC72-BCCA72DD1311"][LTYP(FC32):CLDI]
      [PCLD\(CSTR\):"/var/local/rangedb/1/p/17/11/00rH0%DkRs&LgA%\#3tN6"\]
      [TSRC(FC32):SYST][RSLT(FC32):NONE][AVER(UI32):10][ATIM(UI64):
      1581535134379225][ATYP(FC32):LLST][ANID(UI32):12448208][AMID(FC32):CLSM]
      [ATID(UI64):7086871083190743409]]
    5. LLST 메시지에서 PCLD 필드와 noid 필드를 찾습니다.

      PCLD 값이 있는 경우 누락된 복제 객체 복사본에 대한 디스크의 전체 경로입니다. noid 값은 개체의 복사본을 찾을 수 있는 LDR의 노드 ID입니다.

      개체 위치를 찾으면 개체를 복원할 수 있습니다.

    6. 이 LDR 노드 ID의 스토리지 노드를 찾습니다.

      노드 ID를 사용하여 스토리지 노드를 찾는 방법에는 두 가지가 있습니다.

      • Grid Manager에서 * 지원 * > * 도구 * > * 그리드 토폴로지 * 를 선택합니다. 그런 다음 *데이터 센터 * > *스토리지 노드 * > * LDR * 을 선택합니다. LDR 노드 ID는 Node Information 테이블에 있습니다. 이 LDR을 호스팅하는 스토리지 노드를 찾을 때까지 각 스토리지 노드에 대한 정보를 검토하십시오.

      • 그리드에 대한 복구 패키지를 다운로드하고 압축을 풉니다. 해당 패키지에 _\docs_directory가 있습니다. index.html 파일을 열면 서버 요약에 모든 그리드 노드의 모든 노드 ID가 표시됩니다.

  2. 감사 메시지에 표시된 스토리지 노드에 객체가 있는지 확인합니다.

    1. 그리드 노드에 로그인합니다.

      1. ssh admin@grid_node_ip' 명령을 입력한다

      2. "passwords.txt" 파일에 나열된 암호를 입력합니다.

      3. 루트로 전환하려면 다음 명령을 입력합니다

      4. "passwords.txt" 파일에 나열된 암호를 입력합니다.

루트로 로그인하면 프롬프트가 '$'에서 '#'로 바뀝니다.

  1. 개체의 파일 경로가 있는지 확인합니다.

객체의 파일 경로에 LLST 감사 메시지의 PCLD 값을 사용한다.

예를 들어 다음을 입력합니다.

ls '/var/local/rangedb/1/p/17/11/00rH0%DkRs&LgA%#3tN6'
  • 참고 *: 특수 문자를 이스케이프하려면 항상 명령에서 개체 파일 경로를 작은따옴표로 묶어야 합니다.

  • 개체 경로를 찾을 수 없으면 개체가 손실되어 이 절차를 사용하여 복원할 수 없습니다. 기술 지원 부서에 문의하십시오.

  • 개체 경로가 발견되면 단계를 계속 진행합니다 개체를 StorageGRID 로 복원합니다. 검색된 객체를 다시 StorageGRID로 복원할 수 있습니다.

    1. 개체 경로가 발견되면 개체를 StorageGRID에 복원해 보십시오.

      1. 동일한 스토리지 노드에서 StorageGRID에서 관리할 수 있도록 객체 파일의 소유권을 변경합니다. 'chown LDR-user: bycast 'file_path_of_object''를 입력합니다

      2. LDR 콘솔에 액세스하려면 localhost 1402에 Telnet을 사용합니다. telnet 0 1402 를 입력한다

      3. 'cd/proc/Stor'를 입력합니다

      4. 'Object_found' file_path_of_object''를 입력합니다

        예를 들어 다음을 입력합니다.

      Object_Found '/var/local/rangedb/1/p/17/11/00rH0%DkRs&LgA%#3tN6'

      + "Object\_found" 명령을 실행하면 오브젝트 위치를 그리드에 알린다. 또한 활성 ILM 정책을 트리거하여 정책에 지정된 대로 추가 복사본을 만듭니다.

  • 참고 *: 객체를 찾은 스토리지 노드가 오프라인인 경우 온라인 상태인 스토리지 노드에 객체를 복사할 수 있습니다. 객체를 온라인 스토리지 노드의 /var/local/rangedb 디렉토리에 배치합니다. 그런 다음 객체의 파일 경로를 사용하여 'Object\_found' 명령을 실행합니다.

    • 개체를 복원할 수 없으면 "Object\_found" 명령이 실패합니다. 기술 지원 부서에 문의하십시오.

    • 개체가 StorageGRID로 복원되면 성공 메시지가 나타납니다. 예를 들면 다음과 같습니다.

      ade 12448208: /proc/STOR > Object_Found '/var/local/rangedb/1/p/17/11/00rH0%DkRs&LgA%#3tN6'
      
      ade 12448208: /proc/STOR > Object found succeeded.
      First packet of file was valid. Extracted key: 38186FE53E3C49A5
      Renamed '/var/local/rangedb/1/p/17/11/00rH0%DkRs&LgA%#3tN6' to '/var/local/rangedb/1/p/17/11/00rH0%DkRt78Ila#3udu'

      단계를 계속 진행합니다 새 위치가 생성되었는지 확인합니다

      1. 객체가 StorageGRID에 성공적으로 복구되었으면 새 위치가 생성되었는지 확인합니다.

        1. 'cd/proc/OBRP'를 입력한다

        2. 'ObjectByUUID_value'를 입력합니다

다음 예에서는 UUID 926026C4-00A4-449B-AC72-BCCA72DD1311이 있는 개체의 위치가 두 가지임을 보여 줍니다.

ade 12448208: /proc/OBRP > ObjectByUUID 926026C4-00A4-449B-AC72-BCCA72DD1311

{
    "TYPE(Object Type)": "Data object",
    "CHND(Content handle)": "926026C4-00A4-449B-AC72-BCCA72DD1311",
    "NAME": "cats",
    "CBID": "0x38186FE53E3C49A5",
    "PHND(Parent handle, UUID)": "221CABD0-4D9D-11EA-89C3-ACBB00BB82DD",
    "PPTH(Parent path)": "source",
    "META": {
        "BASE(Protocol metadata)": {
            "PAWS(S3 protocol version)": "2",
            "ACCT(S3 account ID)": "44084621669730638018",
            "*ctp(HTTP content MIME type)": "binary/octet-stream"
        },
        "BYCB(System metadata)": {
            "CSIZ(Plaintext object size)": "5242880",
            "SHSH(Supplementary Plaintext hash)": "MD5D 0xBAC2A2617C1DFF7E959A76731E6EAF5E",
            "BSIZ(Content block size)": "5252084",
            "CVER(Content block version)": "196612",
            "CTME(Object store begin timestamp)": "2020-02-12T19:16:10.983000",
            "MTME(Object store modified timestamp)": "2020-02-12T19:16:10.983000",
            "ITME": "1581534970983000"
        },
        "CMSM": {
            "LATM(Object last access time)": "2020-02-12T19:16:10.983000"
        },
        "AWS3": {
            "LOCC": "us-east-1"
        }
    },
    "CLCO\(Locations\)": \[
        \{
            "Location Type": "CLDI\(Location online\)",
            "NOID\(Node ID\)": "12448208",
            "VOLI\(Volume ID\)": "3222345473",
            "Object File Path": "/var/local/rangedb/1/p/17/11/00rH0%DkRt78Ila\#3udu",
            "LTIM\(Location timestamp\)": "2020-02-12T19:36:17.880569"
        \},
        \{
            "Location Type": "CLDI\(Location online\)",
            "NOID\(Node ID\)": "12288733",
            "VOLI\(Volume ID\)": "3222345984",
            "Object File Path": "/var/local/rangedb/0/p/19/11/00rH0%DkRt78Rrb\#3s;L",
            "LTIM\(Location timestamp\)": "2020-02-12T19:36:17.934425"
        }
    ]
}
  1. LDR 콘솔에서 로그아웃합니다. 'exit'로 진입합니다

    1. 관리 노드에서 이 객체에 대한 ORLM 감사 메시지에 대한 감사 로그를 검색하여 ILM(정보 수명 주기 관리)이 필요에 따라 복제본을 배치했는지 확인합니다.

  2. 그리드 노드에 로그인합니다.

    1. ssh admin@grid_node_ip' 명령을 입력한다

    2. "passwords.txt" 파일에 나열된 암호를 입력합니다.

    3. 루트로 전환하려면 다음 명령을 입력합니다

    4. "passwords.txt" 파일에 나열된 암호를 입력합니다. 루트로 로그인하면 프롬프트가 '$'에서 '#'로 바뀝니다.

  3. 감사 로그가 있는 디렉토리로 변경합니다: 'cd /var/local/audit/export/'

  4. grep를 사용하여 개체와 관련된 감사 메시지를 출력 파일에 추출합니다. ' grep uuid-valueaudit_file_name > output_file_name ' 을 입력합니다

    예를 들면 다음과 같습니다.

    Admin: # grep 926026C4-00A4-449B-AC72-BCCA72DD1311 audit.log > messages_about_restored_object.txt
  5. grep를 사용하여 이 출력 파일에서 ORLM(Object Rules MET) 감사 메시지를 추출합니다. 'grep ORLM output_file_name'을 입력합니다

    예를 들면 다음과 같습니다.

    Admin: # grep ORLM messages_about_restored_object.txt

    ORLM 감사 메시지는 이 샘플 메시지와 같습니다.

    [AUDT:[CBID(UI64):0x38186FE53E3C49A5][RULE(CSTR):"Make 2 Copies"]
    [STAT(FC32):DONE][CSIZ(UI64):0][UUID(CSTR):"926026C4-00A4-449B-AC72-BCCA72DD1311"]
    [LOCS(CSTR):"**CLDI 12828634 2148730112**, CLDI 12745543 2147552014"]
    [RSLT(FC32):SUCS][AVER(UI32):10][ATYP(FC32):ORLM][ATIM(UI64):1563398230669]
    [ATID(UI64):15494889725796157557][ANID(UI32):13100453][AMID(FC32):BCMS]]
  6. 감사 메시지에서 Locs 필드를 찾습니다.

    있는 경우 Locs의 CLDI 값은 노드 ID 및 객체 복제본이 생성된 볼륨 ID입니다. 이 메시지는 ILM이 적용되었으며 그리드의 두 위치에서 두 개의 개체 복사본이 생성되었음을 나타냅니다. . 그리드 관리자에서 손실된 개체의 수를 재설정합니다.