검색 통합 서비스 구성
검색 통합 XML을 생성하고 테넌트 관리자를 사용하여 XML을 버킷에 적용하여 버킷에 대한 검색 통합을 활성화합니다.
-
StorageGRID 관리자가 귀하의 테넌트 계정에 대해 플랫폼 서비스를 활성화했습니다.
-
인덱싱하려는 콘텐츠가 있는 S3 버킷을 이미 생성했습니다.
-
검색 통합 서비스의 대상으로 사용하려는 엔드포인트가 이미 존재하며, 해당 엔드포인트의 URN도 가지고 있습니다.
-
당신은 다음 사용자 그룹에 속해 있습니다."모든 버킷 또는 루트 액세스 권한 관리" . 테넌트 관리자를 사용하여 버킷을 구성할 때 이러한 권한은 그룹 또는 버킷 정책의 권한 설정을 재정의합니다.
소스 버킷에 대한 검색 통합 서비스를 구성한 후 객체를 생성하거나 객체의 메타데이터 또는 태그를 업데이트하면 객체 메타데이터가 대상 엔드포인트로 전송됩니다.
이미 객체가 포함된 버킷에 대해 검색 통합 서비스를 활성화하는 경우 기존 객체에 대한 메타데이터 알림이 자동으로 전송되지 않습니다. 대상 검색 인덱스에 메타데이터가 추가되도록 기존 개체를 업데이트합니다.
-
버킷에 대한 검색 통합을 활성화합니다.
-
텍스트 편집기를 사용하여 검색 통합을 활성화하는 데 필요한 메타데이터 알림 XML을 만듭니다.
-
XML을 구성할 때 검색 통합 엔드포인트의 URN을 대상으로 사용하세요.
객체는 객체 이름의 접두사로 필터링될 수 있습니다. 예를 들어, 접두사가 있는 객체에 대한 메타데이터를 보낼 수 있습니다.
images하나의 대상지 및 접두사가 있는 개체에 대한 메타데이터videos다른 사람에게. 접두사가 겹치는 구성은 유효하지 않으며 제출 시 거부됩니다. 예를 들어, 접두사가 있는 객체에 대한 하나의 규칙을 포함하는 구성test그리고 접두사가 있는 객체에 대한 두 번째 규칙test2허용되지 않습니다.필요에 따라 다음을 참조하십시오.메타데이터 구성 XML에 대한 예 .
<MetadataNotificationConfiguration> <Rule> <Status>Enabled</Status> <Prefix></Prefix> <Destination> <Urn>/Urn> </Destination> </Rule> </MetadataNotificationConfiguration>메타데이터 알림 구성 XML의 요소:
이름 설명 필수의 메타데이터 알림 구성
메타데이터 알림의 객체와 대상을 지정하는 데 사용되는 규칙에 대한 컨테이너 태그입니다.
하나 이상의 규칙 요소를 포함합니다.
예
규칙
지정된 인덱스에 메타데이터를 추가해야 하는 객체를 식별하는 규칙에 대한 컨테이너 태그입니다.
접두사가 겹치는 규칙은 거부됩니다.
MetadataNotificationConfiguration 요소에 포함됩니다.
예
ID
규칙에 대한 고유 식별자입니다.
규칙 요소에 포함됩니다.
아니요
상태
상태는 '활성화' 또는 '비활성화'가 될 수 있습니다. 비활성화된 규칙에 대해서는 아무런 조치도 취해지지 않습니다.
규칙 요소에 포함됩니다.
예
접두사
접두사와 일치하는 개체는 규칙의 영향을 받으며, 해당 메타데이터는 지정된 대상으로 전송됩니다.
모든 객체를 일치시키려면 빈 접두사를 지정하세요.
규칙 요소에 포함됩니다.
예
목적지
규칙의 대상을 위한 컨테이너 태그입니다.
규칙 요소에 포함됩니다.
예
항아리
개체 메타데이터가 전송되는 대상의 URN입니다. 다음 속성을 포함하는 StorageGRID 엔드포인트의 URN이어야 합니다.
-
`es`세 번째 요소여야 합니다.
-
URN은 메타데이터가 저장된 인덱스 및 유형으로 끝나야 합니다.
domain-name/myindex/mytype.
엔드포인트는 테넌트 관리자 또는 테넌트 관리 API를 사용하여 구성됩니다. 이들은 다음과 같은 형태를 취합니다.
-
arn:aws:es:region:account-ID:domain/mydomain/myindex/mytype -
urn:mysite:es:::mydomain/myindex/mytype
구성 XML을 제출하기 전에 엔드포인트를 구성해야 하며, 그렇지 않으면 구성이 404 오류로 실패합니다.
URN은 Destination 요소에 포함됩니다.
예
-
-
테넌트 관리자에서 저장소(S3) > *버킷*을 선택합니다.
-
소스 버킷의 이름을 선택합니다.
버킷 세부 정보 페이지가 나타납니다.
-
플랫폼 서비스 > *검색 통합*을 선택하세요.
-
검색 통합 활성화 확인란을 선택합니다.
-
메타데이터 알림 구성을 텍스트 상자에 붙여넣고 *변경 사항 저장*을 선택합니다.
StorageGRID 관리자는 Grid Manager 또는 Management API를 사용하여 각 테넌트 계정에 대해 플랫폼 서비스를 활성화해야 합니다. 구성 XML을 저장할 때 오류가 발생하면 StorageGRID 관리자에게 문의하세요. -
검색 통합 서비스가 올바르게 구성되었는지 확인하세요.
-
구성 XML에 지정된 대로 메타데이터 알림을 트리거하기 위한 요구 사항을 충족하는 객체를 소스 버킷에 추가합니다.
앞서 보여준 예에서 버킷에 추가된 모든 객체는 메타데이터 알림을 트리거합니다.
-
엔드포인트에 지정된 검색 인덱스에 개체의 메타데이터와 태그가 포함된 JSON 문서가 추가되었는지 확인합니다.
-
필요에 따라 다음 방법 중 하나를 사용하여 버킷에 대한 검색 통합을 비활성화할 수 있습니다.
-
저장소(S3) > 버킷*을 선택하고 *검색 통합 활성화 체크박스를 선택 취소합니다.
-
S3 API를 직접 사용하는 경우 DELETE 버킷 메타데이터 알림 요청을 사용하세요. S3 클라이언트 애플리케이션 구현에 대한 지침을 참조하세요.
예: 모든 객체에 적용되는 메타데이터 알림 구성
이 예에서는 모든 개체의 개체 메타데이터가 동일한 대상으로 전송됩니다.
<MetadataNotificationConfiguration>
<Rule>
<ID>Rule-1</ID>
<Status>Enabled</Status>
<Prefix></Prefix>
<Destination>
<Urn>urn:myes:es:::sgws-notifications/test1/all</Urn>
</Destination>
</Rule>
</MetadataNotificationConfiguration>
예: 두 개의 규칙이 있는 메타데이터 알림 구성
이 예에서는 접두사와 일치하는 개체에 대한 개체 메타데이터 /images 접두사와 일치하는 객체에 대한 객체 메타데이터는 하나의 목적지로 전송됩니다. /videos 두 번째 목적지로 전송됩니다.
<MetadataNotificationConfiguration>
<Rule>
<ID>Images-rule</ID>
<Status>Enabled</Status>
<Prefix>/images</Prefix>
<Destination>
<Urn>arn:aws:es:us-east-1:3333333:domain/es-domain/graphics/imagetype</Urn>
</Destination>
</Rule>
<Rule>
<ID>Videos-rule</ID>
<Status>Enabled</Status>
<Prefix>/videos</Prefix>
<Destination>
<Urn>arn:aws:es:us-west-1:22222222:domain/es-domain/graphics/videotype</Urn>
</Destination>
</Rule>
</MetadataNotificationConfiguration>
메타데이터 알림 형식
버킷에 대한 검색 통합 서비스를 활성화하면 객체 메타데이터나 태그가 추가, 업데이트 또는 삭제될 때마다 JSON 문서가 생성되어 대상 엔드포인트로 전송됩니다.
이 예제는 키가 있는 객체가 생성될 수 있는 JSON의 예를 보여줍니다. SGWS/Tagging.txt 라는 이름의 버킷에 생성됩니다. test . 그만큼 test 버킷의 버전이 지정되지 않았으므로 versionId 태그가 비어 있습니다.
{
"bucket": "test",
"key": "SGWS/Tagging.txt",
"versionId": "",
"accountId": "86928401983529626822",
"size": 38,
"md5": "3d6c7634a85436eee06d43415012855",
"region":"us-east-1",
"metadata": {
"age": "25"
},
"tags": {
"color": "yellow"
}
}
JSON 문서에 포함된 필드
문서 이름에는 버킷 이름, 개체 이름, 버전 ID(있는 경우)가 포함됩니다.
- 버킷 및 객체 정보
-
bucket: 버킷의 이름key: 객체 키 이름versionID: 버전이 지정된 버킷의 객체에 대한 객체 버전region: 버킷 지역, 예를 들어us-east-1 - 시스템 메타데이터
-
size: HTTP 클라이언트에 표시되는 개체 크기(바이트)md5: 객체 해시 - 사용자 메타데이터
-
metadata: 키-값 쌍으로 객체에 대한 모든 사용자 메타데이터key:value - 태그
-
tags: 키-값 쌍으로 객체에 대해 정의된 모든 객체 태그key:value
Elasticsearch에서 결과를 보는 방법
태그와 사용자 메타데이터의 경우 StorageGRID 날짜와 숫자를 문자열이나 S3 이벤트 알림으로 Elasticsearch에 전달합니다. 이러한 문자열을 날짜나 숫자로 해석하도록 Elasticsearch를 구성하려면 Elasticsearch의 동적 필드 매핑 및 날짜 형식 매핑 지침을 따르세요. 검색 통합 서비스를 구성하기 전에 인덱스에서 동적 필드 매핑을 활성화하세요. 문서가 색인된 후에는 색인에서 문서의 필드 유형을 편집할 수 없습니다.