다음을 통해 공유


Azure IoT 데이터 프로세서 미리 보기 파이프라인에서 gRPC 엔드포인트 호출

Important

Azure IoT 작업 미리 보기 - Azure Arc에서 지원되는 Azure IoT 작업은 현재 미리 보기로 제공됩니다. 프로덕션 환경에서는 이 미리 보기 소프트웨어를 사용하면 안 됩니다.

베타, 미리 보기로 제공되거나 아직 일반 공급으로 릴리스되지 않은 Azure 기능에 적용되는 약관은 Microsoft Azure 미리 보기에 대한 추가 사용 약관을 참조하세요.

gRPC 호출 단계를 사용하여 선택적 요청 본문이 있는 외부 gRPC를 호출하고 선택적 응답을 받습니다. 호출 단계를 사용하면 기계 학습 모델 실행과 같은 사용자 지정 데이터 처리 논리를 파이프라인 처리에 통합할 수 있습니다.

  • 파이프라인의 각 파티션은 API 호출을 독립적으로 동시에 실행합니다.
  • API 호출은 동기적이므로 이 단계에서는 호출이 반환될 때까지 기다렸다가 추가 파이프라인 처리를 계속 진행합니다.
  • 현재 단계는 단항 RPC 유형만 지원합니다.
  • gRPC 호출은 Protobuf 형식으로만 사용할 수 있습니다. gRPC 호출 단계와 함께 Protobuf를 사용해야 합니다.

필수 조건

gRPC 호출 파이프라인 단계를 구성하고 사용하려면 다음이 필요합니다.

  • Azure IoT 데이터 프로세서 미리 보기의 배포된 인스턴스입니다.
  • 데이터 프로세서 인스턴스에서 액세스할 수 있는 gRPC 서버입니다.
  • 설명자를 생성할 protoc 도구입니다.

gRPC 호출 단계 구성

gRPC 호출 단계 JSON 구성은 스테이지의 세부 정보를 정의합니다. 단계를 작성하기 위해 양식 기반 UI와 상호 작용하거나 고급 탭에서 JSON 구성을 제공할 수 있습니다.

이름 형식 설명 필수 항목 기본값 예시
이름 string 데이터 프로세서 UI에 표시할 이름입니다. - MLCall2
설명 string 호출 단계에서 수행하는 작업에 대한 사용자에게 친숙한 설명입니다. 아니요 Call ML endpoint 2
Server address string gRPC 서버 주소입니다. - https://localhost:1313
RPC 이름 string 호출할 RPC 이름 - GetInsights
설명자1 string Base 64로 인코딩된 설명자입니다. - CuIFChxnb29nb
인증 string 사용할 인증 유형입니다. None/Metadata. None None
메타데이터 키 string AuthenticationMetadata로 설정된 경우 사용할 메타데이터 키입니다. 아니요 authorization authorization
암호 string AuthenticationMetadata로 설정된 경우 사용할 비밀 참조입니다. 아니요 - mysecret
TLS 사용 부울 값 TLS를 사용하도록 설정할지 여부입니다. 데이터 프로세서는 현재 공용 인증서를 사용한 TLS 기반 인증을 지원합니다. 아니요 false true
API 요청 > 본문 경로 Path 직렬화하고 요청 본문으로 설정해야 하는 데이터 프로세서 메시지 부분의 경로입니다. 요청 본문을 보낼 필요가 없는 경우 비워 둡니다. 아니요 - .payload.gRPCRequest
API 요청 > 메타데이터 > 키2 정적/동적 필드 요청에 설정할 메타데이터 키입니다. 아니요 정적/동적 필드
API 요청 > 메타데이터 > 값2 정적/동적 필드 요청에 설정할 메타데이터 값입니다. 아니요 정적/동적 필드
API 응답 > 본문 경로 Path 응답을 저장할 보내는 메시지의 속성에 대한 경로입니다. 응답 본문이 필요하지 않은 경우 비워 둡니다. 아니요 - .payload.gRPCResponse
API 응답 > 메타데이터 Path 응답 메타데이터를 저장할 보내는 메시지의 속성에 대한 경로입니다. 응답 메타데이터가 필요하지 않은 경우 비워 둡니다. 아니요 - .payload.gRPCResponseHeader
API 응답 > 상태 Path 응답 상태를 저장할 보내는 메시지의 속성에 대한 경로입니다. 응답 상태가 필요하지 않은 경우 비워 둡니다. 아니요 - .payload.gRPCResponseStatus

1설명자: gRPC 호출 단계는 protobuf 형식만 지원하므로 요청과 응답 모두에 동일한 형식 정의를 사용합니다. 요청 본문을 직렬화하고 응답 본문을 역직렬화하려면 .proto 파일의 base 64로 인코딩된 설명자가 필요합니다.

다음 명령을 사용하여 설명자를 생성하고 <proto-file>을 .proto 파일의 이름으로 바꿉니다.

protoc --descriptor_set_out=/dev/stdout --include_imports <proto-file> | base64 | tr '\n' ' ' | sed 's/[[:space:]]//g'

구성의 descriptor에서 이전 명령의 출력을 사용합니다.

2API 요청 > 메타데이터: 메타데이터 배열의 각 요소는 키 값 쌍입니다. 들어오는 메시지의 내용에 따라 또는 정적 문자열로 키 또는 값을 동적으로 설정할 수 있습니다.