6.5.2. PTP 이벤트 REST API v1을 사용하여 PTP 이벤트 검색
애플리케이션은 사이드카 패턴에서 cloud-event-proxy 컨테이너를 실행하여 PTP 이벤트를 구독합니다. cloud-event-proxy 사이드카 컨테이너는 기본 애플리케이션의 리소스를 사용하지 않고 대기 시간 없이 기본 애플리케이션 컨테이너와 동일한 리소스에 액세스할 수 있습니다.
그림 6.7. 소비자 사이드카 및 HTTP 메시지 전송이 포함된 PTP 빠른 이벤트 개요
-
클러스터 호스트에서 이벤트가 생성됩니다. -
PTP Operator 관리 Pod의
linuxptp-daemon은 KubernetesDaemonSet로 실행되며 다양한linuxptp프로세스(ptp4l,phc2sys, 선택적으로 할 마스터 클록,ts2phc)를 관리합니다.linuxptp-daemon은 이벤트를 UNIX 도메인 소켓에 전달합니다. -
이벤트는 cloud-event-proxy 사이드카에 전달됩니다. -
PTP 플러그인은 UNIX 도메인 소켓에서 이벤트를 읽고 PTP Operator 관리 Pod의
cloud-event-proxy사이드카에 전달합니다.cloud-event-proxy는 Kubernetes 인프라에서 대기 시간이 짧은 CNF(Cloud-Native Network Functions)로 이벤트를 제공합니다. -
이벤트가 유지됩니다. -
PTP Operator 관리 Pod의
cloud-event-proxy사이드카는 이벤트를 처리하고 REST API를 사용하여 클라우드 네이티브 이벤트를 게시합니다. -
메시지가 전송됨 -
메시지 전송자는 HTTP를 통해 애플리케이션 Pod의
cloud-event-proxy사이드카로 이벤트를 전송합니다. -
REST API에서 이벤트 사용 가능 -
애플리케이션 Pod의
cloud-event-proxy사이드카는 이벤트를 처리하고 REST API를 사용하여 이벤트를 사용할 수 있도록 합니다. -
소비자 애플리케이션은 서브스크립션을 요청하고 서브스크립션 이벤트를 수신 -
소비자 애플리케이션은 API 요청을 애플리케이션 Pod의
cloud-event-proxy사이드카로 전송하여 PTP 이벤트 서브스크립션을 생성합니다.cloud-event-proxy사이드카는 서브스크립션에 지정된 리소스에 대한 HTTP 메시징 리스너 프로토콜을 생성합니다.
애플리케이션 Pod의 cloud-event-proxy 사이드카는 PTP Operator 관리 Pod에서 이벤트를 수신하고 클라우드 이벤트 오브젝트를 래핑하여 데이터를 검색하고 이벤트를 소비자 애플리케이션에 게시합니다. 소비자 애플리케이션은 리소스 한정자에 지정된 주소를 수신하고 PTP 이벤트를 수신하고 처리합니다.